WordPress自动更新漏洞:超1/4网站可被黑客一举击溃

所属分类: 网络安全 / 黑客教程 阅读数: 217
收藏 0 赞 0 分享

Wordfence最新漏洞造成大部分的网站被黑,Wordfence最近披露了某个影响范围很广的安全问题,大量WordPress网站都受到影响。这个漏洞利用的是WordPress的自动更新功能,此功能默认是开启的,又因为整个互联网上大约有27%的站点都采用WordPress,所以Wordfence宣称,整个web世界有27%的网站都可能因此被黑。

简单说就是利用WordPress更新服务器的弱点,控制该服务器,自然也就能够同时对所有采用WordPress的网站完成入侵了。

全球超1/4网站可被黑客一举击溃

一击黑入全球1/4的网站

在WordPress生态中,api.wordpress.org服务器的重要功能在于,为WordPress站点发布自动更新。各WordPress站点,每隔1个小时就会向该服务器发起请求,检查插件、主题和WordPress核心更新。

api.wordpress.org服务器的响应就包括了WordPress各部分是否需要自动更新,响应中也包含下载和安装更新软件的URL地址。

于是,只要搞定了这台服务器,黑客也就能够让所有的WordPress站点自动从他们自己的URL下载和安全恶意程序了。也就是说,攻击者通过api.wordpress.org的自动更新机制,就能大规模黑入大量WordPress站点。

api.wordpress.org服务器

整个过程实际上是完全可行的,因为WordPress本身并不提供软件的签名验证。它信任api.wordpress.org提供的任意URL地址和包。WordPress文档中有提到:默认情况下,每个站点都会开启自动更新功能,接收核心文件更新。

按照Wordfence的说法,黑客只需要针对api.wordpress.org一击,就能让全球超过1/4的网站感染恶意程序。

api.wordpress.org漏洞技术细节

这个更新服务器有个GitHub webhook,它能够让WordPress核心开发者将代码同步到wordpress.org SVN库,也就能够将GitHub作为其源代码库了。这样一来,核心开发者只要在GitHub提交更改,就会触发api.wordpress.org的一个进程,也就能方便得从GitHub获得最新代码。

这里api.wordpress.org联系GitHub的URL也就是所谓的“webhook”,这东西是用PHP写的。此webhook的PHP是开源的,点击这里就能获取。

Wordfence对其中的代码进行了分析,发现了其中的一个漏洞。攻击者利用该漏洞就能够在api.wordpress.org上执行任意代码,并且获得api.wordpress.org的访问权。实际上也就是远程代码执行漏洞了。

来自GitHub的请求抵达api.wordpress.org,那么webhook会通过共享的hashing算法来确认,的确是GitHub发出的请求。整个过程是GitHub发出JSON数据,它会将数据和共享秘值进行混合,哈希后将哈希值与JSON数据一同发给api.wordpress.org。

api.wordpress.org收到请求之后,也将JSON数据和共享秘值进行混合,然后算哈希。最终结果如果和GitHub发来的匹配,也就证明了来源是没问题的,是GitHub发来的请求。

api.wordpress.org漏洞技术细节

GitHub采用SHA1来生成哈希,并且在header: X-Hub-Signature: sha1={hash}的位置给出签名。webhook提取算法和哈希来确认签名。漏洞也就在于:代码会使用客户端提供的哈希函数,这里的客户端通常情况下当然就是GitHub了。在这个过程中,如果能够绕过webhook认证机制,攻击者将能够向shell_exec直接传送POST参数,从而执行远程代码并顺利入侵api.wordpress.org更新服务器。

当然整个过程需要让webhook认为,攻击者是知道共享秘值的。不过webhook能够让攻击者选择哈希算法,PHP提供了各种算法。找个足够弱的哈希算法,暴力攻破webhook,发出一系列哈希,猜出共享秘值和发送数据的哈希值,直到猜对为止,api.wordpress.org就会响应请求。

整个过程的详情可以参见文末Wordfence的原文链接。

问题根源没有解决?

Wordfence是在今年9月份将该漏洞上报给Automattic(WordPress母公司)的,Automattic与9月7日向代码库推了fix(有关补丁详情,可以点击这里)。不过Wordfence表示api.wordpress.org仍然是部署WordPress核心、插件和主题升级的单点故障根源所在。

Wordfence表示曾经试图与Automattic安全团队就有关自动升级系统的安全问题展开对话,但没有得到任何回应。大约在3年前,就有相关WordPress服务器部署认证机制的探讨,目前都还没有任何进展。


更多精彩内容其他人还在看

病毒、木马ARP攻击行为的原理分析及解决思路

带有ARP攻击行为的病毒,木马很是常见,主要有两种表现形式:频繁的出现地址冲突的现象以及 上网速度很慢甚至上不了网,这类问题如何解决呐?
收藏 0 赞 0 分享

ARP欺骗攻击原理另一种理解方法

本文子明特别用通俗的例子,说明ARP欺骗攻击的原理,使ARP欺骗攻击原理更加清楚的展现在你的面前。
收藏 0 赞 0 分享

七招教你抵御ARP欺骗攻击

本文介绍了七种简易方法助你抵御ARP欺骗攻击,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

全面剖析DDoS攻击 黑客常用攻击方式

纵观网络安全攻击的各种方式方法,其中DDoS类的攻击会给你的网络系统造成更大的危害。因此,了解DDoS,了解它的工作原理及防范措施,是一个计算机网络安全技术人员应必修的内容之一。
收藏 0 赞 0 分享

最简单的防止ARP欺骗的方法

局域网中的计算机容易遭受攻击的原因是使用动态的arp获取协议所以很不安全,当把arp协议设为静态的可以杜绝arp攻击的发生,需要了解的朋友可以参考一下
收藏 0 赞 0 分享

路由器防止ARP欺骗的设置步骤

ARP欺骗是一个比较常见的网络问题,它会盗取用户账号,还会导致网络的瘫痪。为此,很多路由器开发商都设置了路由器防止ARP欺骗的功能。下面小编说说路由器防止ARP欺骗的设置方法。
收藏 0 赞 0 分享

怎样隔离ARP攻击源 电脑受到ARP断网攻击应对策略

局域网如何隔离感染ARP病毒的电脑呢?当局域网电脑存在ARP病毒时,会导致其它电脑出现断网现象。对此比较好的解决方法就是将ARP攻击源给隔离掉。以下就是具体的实现方法。
收藏 0 赞 0 分享

如何从运营角度保障DNS安全

如何从不同层面综合运营,保证DNS服务安全高效的运行?DNSPod工程师认为,主要应该从状态监控、信息告警、事件处理、数据记录、综合运营数据分析这五个方面入手。
收藏 0 赞 0 分享

DNS欺骗的原理 DNS防御实战演练

DNS即Domain Name System的缩写,域名系统以分布式数据库的形式将域名和IP地址相互映射。DNS协议即域名解析协议,简单的说:DNS是用来解析域名的。
收藏 0 赞 0 分享

对付DDoS攻击的三大绝招

不知道身为网络管理员的你是否遇到过服务器因为拒绝服务攻击都瘫痪的情况呢?就网络安全而言目前最让人担心和害怕的入侵攻击就要算是拒绝服务攻击了。和传统的攻击不同,采取的是仿真多个客户端来连接服务器,造成服务器无法完成如此多的客户端连接,从而无法提供服务。
收藏 0 赞 0 分享
查看更多