被劫持的wordpress.com账户被用来感染站点
总结
1. 攻击者用被黑的凭证登录WordPress.com账户。
2. 如果WordPress.com上的账户被设定为通过Jetpack插件管理所有的WordPress安装,攻击者就可以利用这样的访问在目标站点上安装恶意“pluginsamonsters”插件。
3. 该插件可以给攻击者对目标站点的完全控制。该插件在WordPress.com的面板上是可见的,但当激活后就不可见了。
要想该攻击产生,必须满足下面的条件:
· 网站所有者必须安装Jetpack。
· Jetpack必须配置为允许用WordPress.com账户来管理站点。
· WordPress.com账户的凭证必须被黑。这种情况通常发生在在其他被黑的站点或服务上重用邮箱或密码。
· WordPress.com没有开启双因子认证。
攻击入口:WordPress.com弱凭证和Jetpack
Jetpack是非常流行的WordPress插件,有很多的特征。为了使用Jetpack,必须在WordPress.com上创建一个账号。这样就可以在WordPress.com的中央控制器来管理多个WordPress站点。其中一个特点就是可以管理插件,甚至安装新插件。
正如在服务器上安装WordPress,用户可以从WordPress公共库上去选择插件或以zip文件的形式上传新插件:
当Jetpack连接到用户的站点,就拥有了与站点管理员账户同样的权限。所以,如果用户选择上传插件,无论用户上传的是什么都会进行安装。
研究人员对安装了“pluginsamonsters”的站点进行了调查,发现该标志被滥用了。比如,在插件创建的时候去检查站点的访问日志,发现了下面的记录:
192.0.89.53 - - [22/May/2018:02:38:06 +0000] "POST /wp-admin/admin-ajax.php?token=[redacted]×tamp=1526956686&nonce=uFn5aA OgH4&body-hash=gwB8z8pKX%2F6xzYdAbNzYTNeD8cc%3D&signature=gxiGNsGi2Z9Ba3SwaNUn7Dq yBXc%3D HTTP/1.0" 200 141 "-" "Jetpack by WordPress.com"
源IP地址是Automattic网络的一部分,也就是Jetpack的作者。研究人员还找了受影响的网站共有的插件,Jetpack是唯一相同的。
我们将Jetpack连接到一些测试站点上,并尝试上传一个恶意插件。访问日志表明了相同的活动。
Pluginsamonsters恶意软件
下一步是分析恶意软件并找出其工作流程。它会将自己隐藏在WordPress仪表盘中的插件列表中。插件在WordPress.com管理控制台上可见的,但是当被激活后在受害者网站的管理接口上不可见的。
恶意插件含有一个txt文件,该文件所含有的代码会在WordPress loop_start action上执行。该插件还含有一个单独的文件上传功能的PHP脚本文件。
该工具有两个用途。首先,在被感染的网站中加入后门来维持对站点的访问。这些后门也都是一些简单的文件上传工具,创建的文件名也是无害的名称,比如wpcfgdata.php, wpplugdata.php。第二,修改受感染站点的根index.php文件。这是攻击活动的真实原因,也就是黑客盈利的部分。
加入到index.php文件的恶意代码是经过混淆的,但是比较简单。最终会到到一个恶意域名,在样本中,恶意域名是roi777[dot]com。从该恶意域名,会获取另一个恶意域名,而这些恶意域名都是.tk结尾的。使用了JS来将访问者重定向到第二个恶意域名的页面,并设置cookie,所以重定向每12个小时才会发生一次。
下图是添加到index.php中混淆后的代码:
在测试中,研究人员发现访问者访问后被重定向的恶意页面含有恐吓软件(scareware),文本转语音、成人广告和鼠标劫持:
在受感染的站点上,.tk域名每分钟更新一次。
在一些案例中,攻击者会编辑核心的JS文件,用可以生成成人广告的代码来感染访问者。这些jQuery文件位于/wp-includes/js/jquery中。
研究人员发现的第一个攻击实例发生在5月16日。从5月21日开始,攻击者开始以wpsmilepack这个名字来安装同样的恶意插件。
攻击者如何进入
研究人员发现这些攻击者在2月份的时候还进行了credential stuffing攻击(凭证填充攻击,俗称撞库)。攻击者利用数据泄漏获取的用户名和密码来直接登录WordPress站点。攻击者资源丰富,看起来Jetpack只是他们最近使用的插件。这也证明了跨服务重用密码的危险性。
我们怎么做?
研究人员提出以下建议来保护用户免受此类攻击:
· 确保WordPress.com账户使用强密码和唯一的密码。尤其是通过WordPress.com和Jetpack管理其他站点的管理级账户。
· 对WordPress.com账户启用双因子认证。
采取上面的步骤可以确保攻击者不会用WordPress.com账户作为攻击你管理的站点的入口。
以中心化的管理服务为目标
WordPress.com通过Jetpack插件给予用户远程管理多个站点的能力。许多其他的服务也提供这样的功能。这对管理大量WordPress站点的开发者和机构来说是非常有用的工具。更新数百家网站不是件容易的事,任何可以让更新便容易的事情都是有价值的服务。
那么远程管理工具就有这样的作用,管理工具对所管理的网站具有管理级的访问权限。作为用户,确保用户使用强密码和唯一密码以及启用双因子认证就是用户的责任。如果不这样做的话,那么可能同一服务管理的所有站点都有被黑的风险。
此次网站被入侵事件并不是因为漏洞,而是因为站点所有者(管理者)重用凭证造成的。如果对管理级账户重用凭证,还不开启双因子认证,那么可能离被黑不远了。
原文发布时间为:2018-05-25
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
针对Adobe Double Free(CVE-2018-4990)的利用分析
在本文中我将介绍攻击者如何利用CVE-2018-4990,这是在处理特制JPEG2000图像时在Acrobat Reader中的越界读取漏洞。 介绍 由于Acrobat Reader的使用很广泛,这使得我决定去试试对这一漏洞进行分析。目前我对AcroRd32.exe(c4c6f8680efeedafa4bb7a71d1a6f0cd37529ffc)v2018.011.20035的所有测试均已完成。显然其他版本也有受到影响,请参阅Adobe的公告apsb18-09了解更多详情。 深入探寻漏洞的根源 我需要做的第一件事就是解压缩PDF,因为许多对象被压缩,隐藏了真正的功能,如JavaScript和图像。我比较喜欢使用pdf工具包,因为它是命令行驱动的。 c:\> pdftk 4b672deae5c1231ea20ea70b0bf091164ef0b939e2cf4d142d31916a169e8e01 output poc.pdf uncompress 由于我没有JPEG2000图像的原始样本,因此我不知道该图像是否已翻转过,所以我只能深入研究JavaScript。剥去JavaScr...
- 下一篇
DDoS攻击走向应用层
发起网络层流量洪水?不不不,现在的DDoS攻击者更钟爱应用进程。攻击者注意到人们已经越来越善于防御大规模分布式拒绝服务(DDoS)攻击了,于是他们换了个淹没的目标——应用进程。 DDoS导流专家CloudFlare观测到,消耗进程CPU时间、磁盘空间、内存分配等高层服务器资源的网络攻击急速增加,而靠淹没网络架构中低层级带宽资源的传统DDoS攻击似乎无甚变化。 5月21日,该云服务提供商的安全产品经理 Alex Cruz Farmer 表示,通常速率在每天160左右的OSI第七层(应用层)攻击如今能以每天1000的高速爆发。 与动辄每秒数百GB的垃圾流量洪水相比,这点速度看起来似乎很不值一提,但那是在你不作为接收端系统管理员的情况下:构建合理的应用层攻击能以每秒相对少量的复杂请求令服务器进程过载,无需大量数据包即可搞瘫目标。 CloudFlare已推出速率限制产品,可搞定僵尸攻击和应用层DDoS,但Farmer称该产品经过1年的应用体验后发现还需增加其他功能。 该产品不是简单地封锁流量源,而是让用户可以选择通过CloudFlare的JavaScript或谷歌的reCptcha提出挑战,作...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS7,CentOS8安装Elasticsearch6.8.6
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS6,CentOS7官方镜像安装Oracle11G
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- 设置Eclipse缩进为4个空格,增强代码规范
- Mario游戏-低调大师作品
- MySQL8.0.19开启GTID主从同步CentOS8