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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-11 21:23:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  • 这篇文章介绍了当WordPress开启错误记录以后,根据error_log来发现SQL注入攻击的思路。
    6 x: x' s* K9 K+ g4 M; j. J
    3 J' C9 H- j; `1 o0 S  F7 f5 r吸引Cocoa的是这个博客其实是TrustWave公司下属的一个叫Spiderlab团队的官方博客,貌似比较有意思。例如它提到了Honeypot Alert这个标签里的文章都是分析他们一个Web蜜罐的Apache access_log日志的。
    : l* A: _' F$ P6 j2 R* i
    % e$ a0 d3 ]0 \5 W$ b; W简单介绍一下这篇文章吧。8 R3 U1 S1 D- U' W% H( u' N4 o4 X

    7 ~; F1 _" L7 t+ _开启WP错误记录功能. \& j! f4 ?; T/ a9 o& A7 X% t
    只需要修改wp-config.php的如下几行:
    , E4 B& b* {8 Z  P
    - i$ A1 f: k" u4 [5 @@ini_set('log_errors','On'); @ini_set('display_errors','Off'); @ini_set('error_log','/home/example.com/logs/php_error.log');SQL 注入扫描
    4 u7 Y7 _3 y" g' U9 r6 w
    & e5 ^! F' b- f5 ~: T- h[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\'
    ) x3 h" E. {# e$ a' M[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--
    " U; I4 y- F# C5 [  E# d& C[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--
    " l& B/ ~4 c! [8 E上面的日志就是在暴力猜解表的列数,那个巨大的十六进制值会被解析成null。
    + T+ s; l* b! D! b' ]SQL盲注扫描
    , |6 @2 D1 Q3 q攻击者使用了类似"waitfor delay"和"benchmark"这样的函数来盲注。& w& w* m, z; d

    0 q* E1 D* r) p* ?& o+ Q[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\'--
    1 s" u3 H9 y5 G[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)
    # e# Q' Q2 A6 U& P& QGoogle一下大规模扫描
    : H& q9 y3 Z% y- A7 O" {: d* N7 y& k6 a' c1 M5 M  X' a. q/ Y% q
    6 |3 J- H# |9 L2 m( C
                               
    ; u6 [0 o. M" Q0 @, z1 S9 ?
    2 V& Z% n! t! y4 t  ^: Z( N# _! w* s" T  c% l

    ! m4 Z' @8 ~% Q* u( q                               僵尸网络控制着可能使用被感染主机来识别潜在的目标。下面是该公司的蜜罐捕获到的一个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;
    1 g$ A  [8 {8 j6 m  E8 W4 m( ^4 o! y

: d, E8 T/ x' }  M: ZCocoa总结:文章比较简单,但是从日志来检测攻击貌似是目前流行的一个方向。​
3 b. o2 \$ U; N

本帖子中包含更多资源

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

x
回复

使用道具 举报

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

本版积分规则

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