ssh のアタックを観察するため、kippo というソフトウェアで Scientific Linux 6.3 (64bit) 上に ssh honeypot を構築してみる。
前提
今回用いた環境は以下のとおり。
# cat /etc/redhat-release
Scientific Linux release 6.3 (Carbon)
# uname -i
x86_64
インストール
必要なパッケージをインストールしておく。
# yum install python-twisted
python でユーザ権限で well-known ポートに bind できるようにする。
# setcap 'cap_net_bind_service=+ep' /usr/bin/python
ソースを落としてくる。
# cd /usr/local/src
# wget https://kippo.googlecode.com/files/kippo-0.5.tar.gz
# tar cvzf kippo-0.5.tar.gz
root だと起動できないので、適当なユーザ (ここでは someone) で作業する。
# chown -R someone /usr/local/src/kippo-0.5
# su - someone
$ cd /usr/local/src/kippo-0.5
ポート番号を 2222 から 22 に変更する (必須ではない)
$ diff -u kippo.cfg.orig kippo.cfg
--- kippo.cfg.orig 2013-04-03 01:13:34.462565770 +0900
+++ kippo.cfg 2013-04-03 00:24:38.748425671 +0900
@@ -12,7 +12,7 @@
# Port to listen for incoming SSH connections.
#
# (default: 2222)
-ssh_port = 2222
+ssh_port = 22
# Hostname for the honeypot. Displayed by the shell prompt of the virtual
# environment.
RSA キーが生成できなくてエラーになるので、以下のページを参考にして鍵を作る。
以上で準備が整った。
起動
実際に起動してみる。
# su - someone
$ cd /usr/local/src/kippo-0.5
$ ./start.sh
Starting kippo in background.../usr/lib64/python2.6/site-packages/twisted/conch/ssh/keys.py:13: DeprecationWarning: the sha module is deprecated; use the hashlib module instead
import sha, md5
/usr/lib64/python2.6/site-packages/twisted/conch/ssh/keys.py:13: DeprecationWarning: the md5 module is deprecated; use hashlib instead
import sha, md5
別のホストから接続してみる。パスワードは “123456” になっている。
$ ssh ホスト名 -l root
パスワードの変更は、honeypot 環境に ssh でログインして、passwd コマンドで行う。
ログは log/kippo.log に吐き出される。
kippo を停止するには、以下のようにすれば良い。
$ kill `cat /usr/local/src/kippo.pid`
これでしばらく様子をみてみよう。
コメント