|
- 这篇文章介绍了当WordPress开启错误记录以后,根据error_log来发现SQL注入攻击的思路。7 I4 }: c! L; J5 x- a% s! r
- [5 \/ K. N1 J7 |5 b2 c D吸引Cocoa的是这个博客其实是TrustWave公司下属的一个叫Spiderlab团队的官方博客,貌似比较有意思。例如它提到了Honeypot Alert这个标签里的文章都是分析他们一个Web蜜罐的Apache access_log日志的。, q9 o* g5 v* r# N
: [% q9 e, `1 U! f* |
简单介绍一下这篇文章吧。
) v, Z( s! J5 x4 W! ~5 m
3 |2 m) x; t% z0 \) S% Y3 ?& r9 P开启WP错误记录功能
/ s& a1 w/ t0 L- V只需要修改wp-config.php的如下几行:
1 D' v$ ^+ ^6 U9 W( y1 M- Q9 O6 |% _+ k' k
@ini_set('log_errors','On'); @ini_set('display_errors','Off'); @ini_set('error_log','/home/example.com/logs/php_error.log');SQL 注入扫描' K1 }+ I1 D! g( C, v. g! u# m) T
, _) W( c' Q" p4 F2 M, j& }, i8 i[07-Dec-2012 02:40:49] WordPress database error You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE id = -1\'' at line 1 for query SELECT text, author_id, date FROM WHERE id = -1\'# x# Q8 |. e: Y" c0 u ?+ c# s
[07-Dec-2012 02:40:50] WordPress database error You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE id = 999999.9 UNION ALL SELECT 0x31303235343830303536--' at line 1 for query SELECT text, author_id, date FROM WHERE id = 999999.9 UNION ALL SELECT 0x31303235343830303536--4 i7 r! t" S \ S) t: T- k
[07-Dec-2012 02:40:53] WordPress database error You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE id = 999999.9 UNION ALL SELECT 0x31303235343830303536,0x313032353438303035' at line 1 for query SELECT text, author_id, date FROM WHERE id = 999999.9 UNION ALL SELECT 0x31303235343830303536,0x31303235343830303536--9 N7 d Y. ?) e3 Q4 W7 {
上面的日志就是在暴力猜解表的列数,那个巨大的十六进制值会被解析成null。
+ \7 [" b% X M/ t" GSQL盲注扫描8 t1 t3 f. O }3 e# y
攻击者使用了类似"waitfor delay"和"benchmark"这样的函数来盲注。
X! j5 i- n0 v' C; u& L/ n6 s
- @# W* r4 x: w[07-Dec-2012 02:43:21] WordPress database error You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE id = -1; if (1=1) waitfor delay \'00:00:05\'--' at line 1 for query SELECT text, author_id, date FROM WHERE id = -1; if (1=1) waitfor delay \'00:00:05\'--
8 M. v/ R4 k2 s6 k[07-Dec-2012 02:43:27] WordPress database error You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE id = -1 and if(1=1,BENCHMARK(8623333,MD5(0x41)),0)' at line 1 for query SELECT text, author_id, date FROM WHERE id = -1 and if(1=1,BENCHMARK(8623333,MD5(0x41)),0)
$ p4 O4 _- w8 x* {5 kGoogle一下大规模扫描& P O* j' o2 C+ `+ r
; }9 O' F, U' L3 x! o( }$ A5 `" P7 p; I2 d. j
% K! }( S' S6 ~
6 L7 r# w& h- v& Q2 l5 E( b6 M
* }& c! ?; w2 X2 q$ e( Q$ Y
% Y2 f6 V3 O# ^$ w3 Z 僵尸网络控制着可能使用被感染主机来识别潜在的目标。下面是该公司的蜜罐捕获到的一个RFI(远程文件包含)攻击代码里的片段: - sub google() { my @list; my $key = $_[0]; for (my $i=0; $i<=400; $i+=10){ my $search = ("http://www.google.com/search?q=".&key($key)."&num=100&filter=0&start=".$i); my $res = &search_engine_query($search); while ($res =~ m/<a href="\"?http:\/\/([^">\"]*)\//g) { if ($1 !~ /google/){ my $link = $1; my @grep = &links($link); push(@list,@grep); } } } return @list;
9 I" ~1 Z0 Z4 A9 @2 m% O
( z' P$ ^3 b- Q! v. S1 nCocoa总结:文章比较简单,但是从日志来检测攻击貌似是目前流行的一个方向。
3 [* Y+ U( s2 p9 H$ N% U |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|