XML-RPC放大攻击:针对WordPress的“暴力美学”

暴力猜解攻击是我们至今为止在互联网上看到的最古老而常见的攻击之一。黑客可以通过SSH和FTP协议,暴力猜解攻击你的WEB服务器

传统暴力猜解攻击

这些攻击一般都不是很复杂,而且理论上是比较容易遏制的。但是,它们仍然拥有存在的价值,因为人们并不习惯采用强密码,而且不是每个人都拥有良好的登录习惯。

然而可惜的是,暴力猜解攻击有个致命的弱点。通常来说,如果黑客需要尝试500个不同的密码,他将尝试发送500次不同的请求到服务器上。通过限制登录次数,可以在一定层面上遏制暴力猜解攻击。

放大型暴力猜解攻击

黑客可以减少攻击次数么,他们能否一次请求,就能进行多次登陆尝试?请想象一下,如果你一次攻击请求能尝试500个密码,那么登录次数限制神马的,不都是战斗力5的渣渣了?

这种手法有点类似于咱们以前的DDoS放大攻击,一个核心指挥服务器,能够利用DNS或者NTP协议回应进行放大攻击,增加原本攻击强度50-100倍。无论是任何类型的放大型攻击,都将让黑客倍加受益。

通过Wordpress XML-RPC进行暴力猜解放大攻击

XML-RPC的隐藏特性之一,则是你可以使用system.multicall方法,在单个请求中进行多次尝试,这是非常有用的。它允许应用程序通过一条HTTP请求,执行多个命令。

XML-RPC是一个通过HTTP方法进行远程调用的,非常简单易用的玩意儿。它支持Perl、Java、Python、C、C++、PHP,以及许多其他编程语言。Wordpress和Drupal,以及许多其他内容管理系统都支持XML-RPC。

当然,任何好的技术都是双刃剑。在XML-RPC技术被普通程序开发者所喜爱的同时,也成了黑客手中的利器。

我们跟踪有关XML-RPC的攻击好几个星期了,第一次在网络上发现案例是在2015年9月10日,类似的攻击有愈演愈烈的趋势。与以前黑客热衷于wp-login.php不同,这个文件很容易被登录保护,或者.htaccess给ban掉。黑客尝试利用system.multicall方法,试图在一个请求里包含数百次攻击。你可以想象一下,你在查看日志的时候,一个条目就包含如此多尝试的样子。

194.150.168.95 – – [07/Oct/2015:23:54:12 -0400] “POST /xmlrpc.php HTTP/1.1″ 200 14204 “-” “Mozilla/5.0 (Windows; U; WinNT4.0; de-DE; rv:1.7.5) Gecko/20041108 Firefox/1

光看这个,你看的出来这是调用了数百次密码猜解的攻击么?黑客可以通过它们绕过安全检测,进行暴力尝试。

wp.getCategories方法攻击

我们在网络上还发现了wp.getCategories方法,这要求用户名和密码,请求效果如下:

<methodCall><methodName>system.multicall</methodName> <member><name>methodName</name><value><string>wp.getCategories</string></value></member> <member><name>params</name><value><array><data> <value><string></string></value><value><string>admin</string></value><value><string>demo123</string></value> ..  <member><name>methodName</name><value><string>wp.getCategories</string></value></member> <member><name>params</name><value><array><data> <value><string>admin</string></value> <value><string>site.com</string></value> …

WordPress(xmlrpc)会响应是否有成功的用户名密码组合。

在上面这个例子中,黑客尝试了admin/demo123和admin/site.com的组合,响应包如下:

[{‘faultCode': 403, ‘faultString': ‘Incorrect username or password.‘}, {‘faultCode': 403, ‘faultString': ‘Incorrect username or password.‘}, {‘faultCode': 403, ‘faultString': ‘Incorrect username or password.’}, {‘faultCode': 403, ‘faultString': ‘Incorrect username or password.’}, {‘faultCode': 403, ‘faultString': …  [[{‘url': ‘http://site.com/wordpress/’, ‘isAdmin': True, ‘blogid': ‘1’, ‘xmlrpc': ‘http://site.com/wordpress/xmlrpc.php’, ‘blogName': ‘wpxxx’}]]]

这里我们使用的是wp.getCategories方法进行攻击实验,其他需要认证的方法也可以这样用。所以ban掉wp.getCategories对阻止同类攻击,并没有太大用处。下面是需要身份认证的方法列表:

wp.getUsersBlogs, wp.newPost, wp.editPost, wp.deletePost, wp.getPost, wp.getPosts, wp.newTerm, wp.editTerm, wp.deleteTerm, wp.getTerm, wp.getTerms, wp.getTaxonomy, wp.getTaxonomies, wp.getUser, wp.getUsers, wp.getProfile, wp.editProfile, wp.getPage, wp.getPages, wp.newPage, wp.deletePage, wp.editPage, wp.getPageList, wp.getAuthors, wp.getTags, wp.newCategory, wp.deleteCategory, wp.suggestCategories, wp.getComment, wp.getComments, wp.deleteComment, wp.editComment, wp.newComment, wp.getCommentStatusList, wp.getCommentCount, wp.getPostStatusList, wp.getPageStatusList, wp.getPageTemplates, wp.getOptions, wp.setOptions, wp.getMediaItem, wp.getMediaLibrary, wp.getPostFormats, wp.getPostType, wp.getPostTypes, wp.getRevisions, wp.restoreRevision, blogger.getUsersBlogs, blogger.getUserInfo, blogger.getPost, blogger.getRecentPosts, blogger.newPost, blogger.editPost, blogger.deletePost, mw.newPost, mw.editPost, mw.getPost, mw.getRecentPosts, mw.getCategories, mw.newMediaObject, mt.getRecentPostTitles, mt.getPostCategories, mt.setPostCategories

下面的图是针对XML-RPC的system.multicall方法,专门用于暴力猜解攻击的样例。每个请求都可以承载数百次暴力猜解攻击,图中的数字能让你欣赏感受下暴力美学:

 

如果你是一名Wordpress站长,并且没有使用依赖xmlrpc.php文件的插件,你可以重命名或者删除这个文件来防御攻击。但如果你正在使用如JetPack之类的插件,ban掉这个文件可能会让你的网站功能异常。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/140743.html<

(0)
运维的头像运维
上一篇2025-03-04 02:13
下一篇 2025-03-04 02:14

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注