找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 2700|回复: 0
打印 上一主题 下一主题

从WordPress错误日志里发现SQL注入扫描攻击

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-11 21:23:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  • 这篇文章介绍了当WordPress开启错误记录以后,根据error_log来发现SQL注入攻击的思路。" m8 N4 K$ h6 z7 x1 w* K
    8 s* F4 [1 e9 P, c+ t2 s+ n
    吸引Cocoa的是这个博客其实是TrustWave公司下属的一个叫Spiderlab团队的官方博客,貌似比较有意思。例如它提到了Honeypot Alert这个标签里的文章都是分析他们一个Web蜜罐的Apache access_log日志的。  ^3 s0 D( z+ u: K3 C2 r

    - ~8 g1 I* u* x- O9 h. ~简单介绍一下这篇文章吧。7 y! @; W- Y& _9 c4 E" @* I

    ! i  _, y) A9 {  ~开启WP错误记录功能7 R1 ]1 M& F! @! S$ q
    只需要修改wp-config.php的如下几行:
    : J% a9 ?6 L2 z: U0 ^" D7 n: J" t! F8 T4 ?8 s
    @ini_set('log_errors','On'); @ini_set('display_errors','Off'); @ini_set('error_log','/home/example.com/logs/php_error.log');SQL 注入扫描* V" _$ W/ U+ h, F$ R
    % V, i" q! r$ i" K. l  V
    [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\'7 d! {7 o1 F( _6 T% @
    [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--: p" Y  n$ W+ W6 f, @" D
    [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--  r! L0 S! l: m, ~1 J; s( i. C
    上面的日志就是在暴力猜解表的列数,那个巨大的十六进制值会被解析成null。
    # }' B8 v# J% k! a$ `: C/ ]SQL盲注扫描
    3 g1 `1 A. e6 `+ k6 e5 V攻击者使用了类似"waitfor delay"和"benchmark"这样的函数来盲注。
    6 t  w7 c) b. n# x7 Z' j8 s4 n+ f
    [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\'--
    % n7 Z' z+ D% s2 ]0 g& t[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)
    + _+ J+ q1 X& S" iGoogle一下大规模扫描
    $ M1 s! q$ g. x( K$ w" m% g7 B5 k! w; O8 u7 ^

    * @: j2 l+ O6 @; G  u                           ; {( S- j* g" n  K, _
    " F  h% ?3 E1 G, D

    ; @8 A2 J6 E. {5 N3 O$ S
    , x# M3 c" A5 D. I, V/ k. M6 t                               僵尸网络控制着可能使用被感染主机来识别潜在的目标。下面是该公司的蜜罐捕获到的一个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;% r! Q/ ?! A% z$ i

' K2 ]+ C8 ^* P& e! z! ~Cocoa总结:文章比较简单,但是从日志来检测攻击貌似是目前流行的一个方向。​
- [: {7 Z( k4 I" D1 d0 _" s

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表