针对WordPress网站的攻击和技术

WordPress是著名的开源内容管理系统(CMS),用于创建网站和个人博客。估计CMS已被当今所有网站的35%使用,这使其成为威胁参与者的理想目标。该平台的一个弱点是允许攻击者破坏网站的安全性,而这种缺陷是由于网络安全卫生状况不佳而引起的安全性问题所致。

对CMS平台的攻击不是新闻,但威胁行动者仍然发现,攻击站点是在组织资产中立足于恶意目的的有效途径。这篇博客文章通过我们在野外观察到的有效负载示例列出了针对WordPress的不同类型的攻击,以及攻击如何利用被黑客入侵的管理员访问权限和API,Alfa-Shell部署以及SEO中毒来利用易受攻击的网站。

通过被黑的管理员访问攻击WordPress网站

此方法涉及获得管理员访问WordPress驱动的网站的权限。攻击者可以利用漏洞或仅通过泄漏或薄弱的凭据登录,这可以通过向目标网站上的/wp-login.php发送POST请求来完成。

图1.使用弱凭证登录的尝试示例

图1.使用弱凭证登录的尝试示例

图2.攻击者测试的密码

图2.攻击者测试的密码

成功登录后,具有管理员访问权限的攻击者会看到多个选项。我们观察到这些动作:

  • 安装带有后门的自定义主题
  • 安装插件以上传文件

成功获得管理员特权后,通常会使用前两个操作,还可以选择更改管理员密码或创建新的管理员帐户。常用的方法是使用公共主题,并使用远程代码执行(RCE)功能嵌入自定义后门。还有几个文件上传插件,它们使攻击者可以直接上传有效载荷。

应当注意,部署具有相似功能的另一个后门的后门是常见的。当有效负载/命令/代码被编码在COOKIES或POST数据中时,使用GET或POST请求完成部署。解码逻辑位于先前部署的后门内部。部署后,攻击者将收到新上载组件的URL。

我们还观察到的有趣功能之一是能够修补已经存在的.php文件,从而使恶意请求更加隐蔽。首先,记录所有可写路径,选择一个合适的随机路径,然后修补所选文件。

图3.服务有效负载中修补的现有.php文件功能

图3. 服务有效负载中修补的现有 .php 文件功能

在这种情况下,修补程序功能已应用于index.php,以在Unix隐藏文件(点文件)中包含带有.ico扩展名的恶意脚本,并假装为图标。

图4.包含隐藏的.ico的修补WordPress index.php的示例

图4. 包含隐藏的 .ico 的修补WordPress index.php的示例

另一个值得注意的功能是能够感染邻居域(前提是Web服务器正在处理更多域,并且当前用户对其目录具有写访问权)。

图5.尝试将有效负载上传到邻居域

图5.尝试将有效负载上传到邻居域

在受感染的WordPress网站中部署Alfa-Shell

众所周知,Web Shell已部署在受感染的WordPress网站上。我们将介绍ALFA TEAM / solevisible使用Alfa-Shell的高级工具之一。

 图6. Alfa-Shell图6. Alfa-Shell

图7. Solevisible的GitHub帐户

图7. Solevisible的GitHub帐户

该Web Shell为RCE提供了一个用户友好的界面(例如,注册允许执行Perl,Python和Bash脚本的CGI处理程序。)Alfa-Shell还能够从WordPress配置文件中获取数据库凭据,从而转储数据库。 ,并列举所有虚拟域和DNS设置。

图8.用于执行各种脚本类型的CGI处理程序

图8.用于执行各种脚本类型的CGI处理程序

图9.部署的Bash脚本示例

图9.部署的Bash脚本示例

该Web Shell还支持多种平台,包括Windows。实际上,它能够从开发人员网站下载并执行反向Shell。

图10. Alfa Team的简单Windows反向shell二进制文件

图10. Alfa Team的简单Windows反向shell二进制文件

被感染的WordPress也可以用作广告重定向器,例如,通过修补主题的JavaScript文件或页眉/页脚生成器功能(例如wp-content \ themes \ twentyseventeen \ functions.php)。修改后的JavaScript将用户重定向到攻击者指定的网站。

图11.模糊的JavaScript重定向

图11.模糊的JavaScript重定向

图12.重定向后的网页

图12.重定向后的网页

受感染的WordPress网站中的搜索引擎优化(SEO)中毒

受感染的WordPress网站的另一个用例是搜索引擎优化(SEO)。我们发现已部署的PHP脚本在GET请求中接受关键字。

图13. WordPress

图13. WordPress“搜索引擎”

脚本首先检查User-Agent是否与以下正则表达式之一匹配,或者$ _SERVER [“ REMOTE_ADDR”](发出HTTP请求的参与者的 IP地址)的反向DNS查找是否包含Google子字符串。如果检出,则将$ isbot变量设置为1。

图14.部署脚本的一部分

图14.部署脚本的一部分

如果$ isbot不为零,则将使用相同的关键字对硬编码的URL地址发出另一个HTTP请求。

图15.部署脚本的一部分

图15.部署脚本的一部分

如果返回的文本长度小于1,000个字符,则将使用Bing搜索引擎执行其他查询,并将与指定正则表达式匹配的结果附加到$ text后面。

图16.服务文本

图16.服务文本

如果再次执行相同的查询,则返回最终的HTML页面并将其保存在服务器上。

图17.最终网页

图17.最终网页

从制作的HTML文件中可以看到(参见图17),Cockeysville Eagle的Football页面中的某些部分包含与JavaScript框架有关的文本,这些文本显然不相关,因此SEO中毒。

如果未设置$ isbot且HTTP_REFERER包含Google,Bing或Yahoo之类的字符串,则将其重定向到另一个服务网站。

图18.部署脚本的一部分

图18.部署脚本的一部分

散布虚假或误导性文章

被黑的WordPress网站也可能被用来散布虚假或误导性的文章,其中内容几乎没有或没有事实细节。取而代之的是,使用引人注目的标题和故事。

图19.在受感染站点上发布的故事样本

图19.在受感染站点上发布的故事样本

从上面的示例中可以看出,受感染的网站发布了带有明显语法错误或耸人听闻的报道的报道。通常,这些文章写得很模糊。折衷方案是通过WordPress的XML-RPC应用程序编程接口(API)来完成的,该接口可以传输数据并执行多项任务,例如上载新文件,编辑和发布帖子。

图20. POST /xmlrpc.php和metaWeblog.newPost(左); 张贴文字范例(右)

图20. POST /xmlrpc.php 和 metaWeblog.newPost (左);张贴文字范例(右)

黑客可以使用POST /xmlrpc.php和metaWeblog.newPost,从而可以将博客直接(甚至远程)发布到WordPress网站。

WordPress网站的安全建议

上面提到的示例只是攻击者已知使用的一些技术。如果安全性不佳,易受攻击的WordPress网站很容易被滥用。为了降低遭受威胁的风险,我们建议使用两因素身份验证(2FA)插件来防止凭据滥用和扫描未修补的漏洞。用户和网站管理员可以采取以下其他措施:

  • 采用基本的安全卫生措施以减少网站的攻击面
  • 禁用或删除过时或易受攻击的插件
  • 使用虚拟补丁程序来解决尚不可用补丁程序的漏洞,尤其是对于需要持续运行的系统
  • 贯彻最低特权原则
  • 定期将CMS更新到最新版本,包括插件
发表评论 / Comment

用心评论~