« track word サーバー緊急メンテナンス実施の事後連絡 | メイン | スパムサイト作成講座11 - とりあえず 2000 PV/日に達した »
2007年02月07日
ssh 攻撃を仕掛ける Bot プログラムを入手した
最近やたらと ssh 攻撃の Bot と化してるマシンが多いのですが、先日ふとしたことから ssh 攻撃を仕掛ける Bot サーバー(に仕立てられたマシン)を入手しました。せっかくなのでどんなことになるのかご紹介したいと思います。
※もちろん私の管理サーバーではありません ^^;
#というか、公開していいのか・・・ま、注意喚起ということで。。。
■1. サーバーへの侵入
まずはサーバーに侵入してくるわけですが、ssh のパスワードを総当りしてきたようです。
#last
...
****** pts/2 pilkington-boome Tue *** ** 05:20 - 05:25 (00:05)
こんな感じ。侵入に成功すると短時間で卵を産み付けて帰っていきます。
■2. 産み付けられた Bot プログラム
こんな感じに産み付けられます。(伏字はIPアドレスの一部など)
...
/var/tmp/.s
/var/tmp/.s/scan
/var/tmp/.s/***.***.pscan.22
/var/tmp/.s/***.***.pscan.22
...
/var/spool/samba/.s
/var/spool/samba/.s/scan
/var/spool/samba/.s/***.***.pscan.22
/var/spool/samba/.s/***.***.pscan.22
...
今回のケースでは 2箇所に産み付けられていましたが、実際に稼動してたのは /var/spool/samba/ にあったプログラムでした。
■3. プログラム + 見つけたファイル
こんな感じのファイルです。ファイル名に ドット が含まれていないもの(a.out含む) に実行属性を与えられています。
$ ls -Ra
.:
. .. .rchost .s./.rchost:
. .. LinkEvents SaDiC.seen a.out bash mech.levels mech.pid mech.session mech.set mech1.usr pico randfiles./.rchost/randfiles:
. .. randfiles randinsult.e randkicks.e randpickup.e randsay.e randsignoff.e./.rchost/randfiles/randfiles:
. ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 auto
.. ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 httpd
***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ip.conf
***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 scan
***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 scan.conf
***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 sshf
***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 vuln.txt./.s:
. ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 auto ip.conf scan.conf vuln.txt
.. ***.***.pscan.22 ***.***.pscan.22 ***.***.pscan.22 httpd scan sshf
sshf というのが実際に攻撃を仕掛けるプログラムです。
bash という名前の偽装プログラムを用意していたりと、当然ながら手が込んでます(いや基本か)。
■4. 他のサーバーに対して ssh 攻撃開始
実際に sshf を実行して、他のサーバーに対して ssh 攻撃を仕掛けます。
上記の vlun.txt に結果が出力されていきます。
実際にクラックできたマシンの IP アドレス、ユーザー名、パスワードが記録されています。
こんな感じ。
miyake:miyake:210.***.***.***
discover:discover:210.***.***.***
…いや、ほんと、日本語ローマ字とかでも全然クラックされますから。いわゆる word になってる文字列の組み合わせなら言語に関わらずすぐクラックされ(て)ます。
■5. 攻撃中
発見したときのシステム状況(のスナップショットがとれたので。。)。
$netstat -an
tcp 0 0 192.168.*.*:45352 fkpc109.phc.**.**:ssh TIME_WAIT
tcp 0 0 192.168.*.*:45359 fkpc109.phc.**.**:ssh TIME_WAIT
tcp 0 296 192.168.*.*:45364 fkpc109.phc.**.**:ssh ESTABLISHED
tcp 0 0 192.168.*.*:45316 fkpc109.phc.**.**:ssh TIME_WAIT
tcp 0 0 192.168.*.*:45271 fkpc109.phc.**.**:ssh TIME_WAIT
tcp 0 0 192.168.*.*:45278 fkpc109.phc.**.**:ssh TIME_WAIT
tcp 0 0 192.168.*.*:45326 term15.tfd.**.**:ssh TIME_WAIT
tcp 0 0 192.168.*.*:45361 term15.tfd.**.**:ssh ESTABLISHED
tcp 0 0 192.168.*.*:45259 term15.tfd.**.**:ssh TIME_WAIT
tcp 0 0 192.168.*.*:45295 term15.tfd.**.**:ssh TIME_WAIT
tcp 0 0 192.168.*.*:45286 term15.tfd.**.**:ssh TIME_WAIT
tcp 0 0 192.168.*.*:45305 term15.tfd.**.**:ssh TIME_WAIT
tcp 0 0 192.168.*.*:45257 solmec12.**.**:ssh TIME_WAIT
tcp 0 0 192.168.*.*:45345 solmec12.**.**:ssh TIME_WAIT
tcp 0 0 192.168.*.*:45366 solmec12.**.**:ssh ESTABLISHED
tcp 0 0 192.168.*.*:45357 math-bat21.**.**:ssh ESTABLISHED
tcp 0 0 192.168.*.*:45325 cpl2.lib.**.**:ssh TIME_WAIT
tcp 0 0 192.168.*.*:45358 mail.**.**:ssh ESTABLISHED
tcp 0 0 192.168.*.*:45350 mail.**.**:ssh TIME_WAIT
tcp 0 0 192.168.*.*:45319 cpl2.lib.**.**:ssh TIME_WAIT
tcp 0 0 192.168.*.*:45354 cpl2.lib.**.**:ssh TIME_WAIT
tcp 0 0 192.168.*.*:45323 mail.**.**:ssh TIME_WAIT
tcp 0 0 192.168.*.*:45348 cpl2.lib.**.**:ssh TIME_WAIT
tcp 0 0 192.168.*.*:45343 humos.mvd.**.**:ssh TIME_WAIT
tcp 0 0 192.168.*.*:45333 humos.mvd.**.**:ssh TIME_WAIT
■6. さらに攻撃
dmesg にこんな感じでメッセージが溢れるくらい(メモリアロケーションエラーがでるくらい)ガンガン攻撃。
printk: 1 messages suppressed.
ip_conntrack: table full, dropping packet.
printk: 2 messages suppressed.
ip_conntrack: table full, dropping packet.
printk: 3 messages suppressed.
ip_conntrack: table full, dropping packet.
printk: 1 messages suppressed.
ip_conntrack: table full, dropping packet.
printk: 2 messages suppressed.
ip_conntrack: table full, dropping packet.
printk: 1 messages suppressed.
ip_conntrack: table full, dropping packet.
printk: 7 messages suppressed.
ip_conntrack: table full, dropping packet.
printk: 5 messages suppressed.
ip_conntrack: table full, dropping packet.
printk: 1 messages suppressed.
ip_conntrack: table full, dropping packet.
printk: 1 messages suppressed.
ip_conntrack: table full, dropping packet.
ip_conntrack: table full, dropping packet.
ps でみるとこんなプロセスが大量に。侵入に成功した一般ユーザーで実行しています。
****** 11936 0.1 0.1 888 544 ? S 13:36 0:07 ./sshf 100
****** 12108 0.0 0.1 892 548 ? S 13:40 0:05 ./sshf 100
****** 12310 0.0 0.1 892 548 ? S 13:48 0:05 ./sshf 100
****** 12408 0.0 0.1 892 548 ? S 13:51 0:05 ./sshf 100
****** 12472 0.1 0.1 888 544 ? S 13:53 0:06 ./sshf 100
****** 12716 0.1 0.1 892 548 ? S 14:11 0:07 ./sshf 100
****** 12773 0.1 0.1 892 548 ? S 14:25 0:05 ./sshf 100
****** 12778 0.1 0.1 892 548 ? S 14:28 0:05 ./sshf 100
■7. さらに卵を産み付ける・・・はず
さすがにそこまで検証できていないのですが、こうやって取得したクラックリストをどこかに送付しつつ、さらに卵を産みつけにいくと思われます。
任意アドレスから ssh の user/password ログインを許可している時点で相当セキュリティ甘いですが、それらがこうやって Bot 化されていると思うと怖いものです。
■8. ハッカーからの言葉
先にご紹介した「偽装bash」より。 strings で抽出。
$strings bash
...
Get the hell out nick-flooding lamer!!!
%s is right here moron!
Doh! This is revenge f*cker!
...
The person who did this shitlist has a higher level than you
...
… ssh の設定は慎重に。
投稿者 aka : 2007年02月07日 14:39 / 2007年02月 / サーバー管理
トラックバック
このエントリーのトラックバックURL:
http://133.242.136.64/mt-tb-sf.cgi/568
このリストは、次のエントリーを参照しています: ssh 攻撃を仕掛ける Bot プログラムを入手した:
» 開発現場の雰囲気が伝わってきます - My RSS管理人ブログ from 最上瞬光
a++ My RSS 管理人ブログ
http://blog.myrss.jp/
サイドフィードの中の人(a++)のブログです
RSS / Blog ... [続きを読む]
トラックバック時刻: 2007年02月11日 15:59
コメント
BOTやってみたいですねーw
プログラミングのやり方教えてください☆
投稿者 YOU : 日時 2007年03月03日 16:59
この卵を産み付けられているかどうか見つけて、削除する方法があれば紹介してください。
投稿者 回避 : 日時 2007年07月27日 10:04
知り合いのサーバがやられました。
sophosのウィルスエンジンで検知できますよ。
投稿者 ma-to : 日時 2007年10月05日 10:51