
ブルートフォース攻撃と攻撃者のシェル操作全体を記録する中規模インタラクション型SSHハニーポット。フィンガープリンティングを低減するためのカスタマイズオプション付き。
Kippoは、ブルートフォース攻撃、そして最も重要なことに、攻撃者が実行するシェル操作全体を記録するために設計された、中程度のインタラクション型SSHハニーポットです。
オリジナルホームページ: https://code.google.com/p/kippo/.
これはKippoの個人的な公開フォークであり、追加機能や、ハニーポットのフィンガープリンティングの可能性を減らすための変更が含まれています。
これは「Kippo Honeypot v0.8 (svn r248 - 2014-05-19)」に基づいています。
Debian 7 stableでテスト済み。
apt-get update
apt-get -y install openssl python python-dev python-openssl python-pyasn1 python-twisted git
git clone git://github.com/g0tmi1k/kippo.git /opt/kippo/
cp -n /opt/kippo/kippo.cfg{.dist,}
chown -R nobody\:nogroup /opt/kippo/
su nobody -c '/bin/bash /opt/kippo/start.sh'
「iptables」を使用してトラフィックをTCPポート2222 (Kippoのデフォルトポート) にリダイレクトするか、または「authbind」を使用して非特権ユーザー (nobody) が特権ポートTCP 22 (デフォルトのSSHポート) を使用できるようにすることが可能です。
apt-get -y install authbind
touch /etc/authbind/byport/22
chown nobody\:nogroup /etc/authbind/byport/22
chmod 0777 /etc/authbind/byport/22
sed -i 's/^twistd /authbind --deep twistd /' /opt/kippo/start.sh
sed -i 's/^ssh_port = .*/ssh_port = 22/' /opt/kippo/kippo.cfg
[ -e /opt/kippo/kippo.pid ] && kill $(cat /opt/kippo/kippo.pid) && sleep 2
su nobody -c '/bin/bash /opt/kippo/start.sh'
...事前に「実際の」SSHポートを変更することを忘れないでください!.
sed -i 's/^Port .*/Port 222/' /etc/ssh/sshd_config
service ssh restart
カスタマイズを拡張し、インスタンスをユニークにする (したがって検出される可能性を減らす) 方法に関するいくつかの提案。
...
hostname = uniquehostname
...
ファイル: ./kippo.cfg
uniquehostname
ファイル: ./honeyfs/etc/hostname
...
127.0.0.1 uniquehostname
....
ファイル: ./honeyfs/etc/hosts
...
ssh_version_string = SSH-2.0-OpenSSH_6.0p1 Debian-4
...
ファイル: ./kippo.cfg
*************************************************************
* All connections are monitored and recorded. *
* Disconnect IMMEDIATELY if you are not an authorized user! *
*************************************************************
ファイル: ./honeyfs/etc/issue.net
これにより、受け入れられるパスワードリストに「Password1」が追加されます。
注: 「*」を追加すると、送信された任意のパスワードが受け入れられます。
cd /opt/kippo/ && python utils/passdb.py data/pass.db add Password1
以下のコマンドは、/root/accounts.zip.enc (7MB) に「偽の」ファイルを生成します。
dd if=/dev/urandom of=honeyfs/root/accounts.zip.enc bs=1M count=7
これらはほんの一部の提案です - ハニーポットは自由に好きなように変更してください!
Kippoは「シミュレートされた環境」です。攻撃者は「制御された監獄」に置かれ、事前に定義された (別名ホワイトリスト化された) コマンドやファイルにのみ応答します。その結果、以下のような点で見破られる可能性があります:
Kippoは「完璧」にはほど遠く、経験豊富な攻撃者には容易に識別されます。しかし、アマチュアの攻撃者を混乱させたり、本物だと信じ込ませたりすることは可能です。その結果、Kippoは誰かがいるべきでない場所にいることを示します (別名、早期警告システム) - さらに、リプレイを見返すのは楽しいです ;).
リスクを承諾しない場合は使用しないでください。著者は、このプログラムの使用、および起こりうるデータ損失や損害について一切の責任を負いません。
このコードは、不正なユーザーをシステムおよびそれが実行されているネットワークに誘い込むために設計・作成されています。その結果、彼らはあなたのデバイス上で悪意のある行動を実行する可能性があります。
コード自体 (例: wgetコマンド) は、公開されているかどうかにかかわらず、サービスに接続するために使用される可能性があります。また、リソースへのアクセスに制限がないため、様々な「DoS」脆弱性が存在します。コード自体もセキュリティ監査を受けていません。
使用する場合は、機密情報を含まず、ネットワークの残りの部分から分離された (例: DMZゾーン)、安全で最新の隔離されたマシンで実行することを強く推奨します。