如果黑客将blog_charset更改为UTF-7,这会使WordPress容易受到进一步的攻击吗?


19

我有一个最近被黑客入侵的客户,我注意到她的网站上出现了奇怪的字符,例如Â和Æ。事实证明,黑客wp_options在数据库表中将blog_charset更改为UTF-7 。我将其设置为UTF-8,但我想知道在设置为UTF-7的期间是否会产生任何安全漏洞?

我进行了一些搜索,发现曾经有一个WordPress UTF-7漏洞已在2.0.6版中修复。我们正在运行最新版本的WordPress,因此他们无法使用该漏洞利用程序,但是还有其他与UTF-7相关的漏洞利用程序吗?真的,除了痛苦之外,黑客还有什么理由会改变blog_charset吗?我一直在尝试确定他们是如何进入的,我想知道这是否以某种方式连接。

Answers:


23

<>被编码为+ADw-+AD4-UTF-7 。现在想象一下:

  1. 有人发送+ADw-script+AD4-alert(+ACI-Hello+ACI-)+ADw-/script+AD4-评论文本。它将通过所有未经处理的卫生设施。

  2. 数据库期望并将所有传入数据视为UTF-8。由于所有UTF-7流是有效的UTF-8也是如此,这绝不会导致SQL错误,而且mysql_real_escape还是htmlspecialchars不会去碰它。

  3. WordPress发送标题text/html;charset=utf-7

  4. WordPress显示注释,期望转义数据。但是由于浏览器将其视为UTF-7,因此将执行JavaScript。

因此,是的,这是一个安全问题。

并非所有浏览器都支持UTF-7,大多数浏览器会将文本呈现为Windows-1252(或操作系统上的默认编码)或UTF-8。主要问题是:转义将不再起作用。


只是改回编码值不是解决方案。普通访客永远都无法更改它,因此您必须找到敞开的门。


谢谢!我将不由自主地指出,修复该数据库条目已关闭了安全漏洞。
珍妮特12/12/24

不用担心,我已经采取了一些措施来弥补安全漏洞。我只是想不通它们仍然如何进入。最近几天似乎什么都没有被黑客入侵,因此希望将编码改回UTF-8是解决所有漏洞的最后一步。
詹妮特2012年

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.