Lucene search

K
seebugRootSSV:1148
HistoryJan 09, 2007 - 12:00 a.m.

WordPress Charset解抹SQL注入漏洞

2007-01-0900:00:00
Root
www.seebug.org
16

WordPress是一款流行的网络日记程序。

WordPress处理字符集解码存在问题,远程攻击者可以利用漏洞进行SQL注入攻击,获得敏感信息。

在当PHP的mbstring扩展激活时,WordPress支持使用不同字符集解码Trackback,因为解码发送在数据库为输入数据执行选择正确的字符集之前,因此允许绕过针对SQL注入的保护。

为了演示需要,Stefan Esser建议使用UTF-7字符集来利用,因为其他的多字节字符集允许多字节序列以’'结尾。

攻击程序首先通过发送在标题字段包含一个UTF-7编码的’0’来检查是否mbstring扩展被装载,因此只有当解码的’0’提送给empty()检查,会根据mbstring实用性来触发两个不同的错误条件。利用程序继续注入伪造的SQL命令到SQL查询会导致WordPress返回失败查询的详细信息,错误消息可用于判断数据库表前缀。

下一步是无害使用时间戳的伪造注释注入到注释表中,这步可在密码HASH获取过程中阻止WordPress发送通知EMAIL给管理员。

通过使用简单的UNION SELECT提交HASH(128位)每个位的请求并检查返回的错误消息来判断密码HASH信息。然后重构密码HASH来建立WordPress登录COOKIE成为管理员。

作为管理员后可在所有可写BLOG目录中编辑文件,注入PHP代码并执行。

WordPress Wordpress (B2) 0.6.2 .1
WordPress Wordpress (B2) 0.6.2
WordPress WordPress 2.0.5
WordPress WordPress 2.0.4
WordPress WordPress 2.0.3
WordPress WordPress 2.0.2
WordPress WordPress 2.0.1
WordPress WordPress 2.0
WordPress WordPress 1.5.2
WordPress WordPress 1.5.1 .3
WordPress WordPress 1.5.1 .2
WordPress WordPress 1.5.1
WordPress WordPress 1.5
WordPress WordPress 1.2.2
WordPress WordPress 1.2.1

  • Gentoo Linux
    WordPress WordPress 1.2
  • Gentoo Linux 1.4
  • Gentoo Linux
    WordPress WordPress 0.71
    WordPress WordPress 0.7
    OpenPKG OpenPKG Stable
    OpenPKG OpenPKG E1.0-Solid
    OpenPKG OpenPKG Current
    OpenPKG OpenPKG 2-Stable-20061018

升级到WordPress 2.0.6版本:

<a href=“http://wordpress.org/” target=“_blank”>http://wordpress.org/</a>