如何挖掘Wordpress插件中的漏洞

admin 2022年5月28日22:56:47安全文章 代码审计评论9 views1831字阅读6分6秒阅读模式
如何挖掘Wordpress插件中的漏洞


一般出名点的开源软件,比如wordpress的核心高危漏洞是比较难挖的。但其附属的高用户量的插件漏洞也是具有一定的价值的,而挖掘起来相对容易些,这里将简单谈谈如何开始挖掘wordpress插件中的漏洞。

跟踪用户输入


开始挖掘wordpress插件中的漏洞的一个好方法是跟踪用户输入。PHP中有多种获取用户输入的方法,如下所示:

  •     $_POST用于获取post参数

  •     $_GET 用于获取get参数

  • $_REQUEST用于获取post或get参数

  • $_SERVER用于获取各种http请求头的值

  • $_COOKIE用于获取cookie的值

  • $_FILES用于文件


这些是开发人员可以获得用户输入的方式。因此,当挖掘wordpress插件漏洞,或者只是攻击任何php代码时,最好先查看这些信息,并从中跟踪用户输入。我们可以通过grepping来实现。


示例


例如,我们将破解并复制 Mail Masta 1.0中包含的本地文件。


因此,我们从grepping $_GET开始,找出所有接受用户输入的php代码。这样做时,一个php文件inc/campaign/count_of_send.php似乎很有趣。


如何挖掘Wordpress插件中的漏洞


用代码编辑器打开该文件。


如何挖掘Wordpress插件中的漏洞


代码相当简单,在第4行,它获取get参数‘pl’的值,然后将其传递给include函数。Include可能会导致LFI本地包含文件漏洞,因此在这里我们发现了一个LFI漏洞。现在,让我们尝试对它进行复现。


如何挖掘Wordpress插件中的漏洞


可以看到它是有效的,我们挖掘到了一个LFI漏洞。这就是通过跟踪用户输入发现漏洞的方式。


HOOKS


在wordpress中,有一个叫做hook的东西。hook是开发人员将函数挂钩到wordpress中预定义位置的方法,这可以通过add_action()函数来完成。


现在在测试时,我们需要注意一些hook:


  • wp_ajax_$action_name用于挂钩到ajax(admin-ajax.php)

  • admin_post_$action_name用于挂钩到admin-post.php

  • wp_ajax_nopriv_$action_nameadmin_post_nopriv_$action_name同上但不需要认证

  • admin_init用于挂钩每个管理页面加载

  • wp_loaded 用于在安装插件时挂钩

  • admin_action_ 还不确定这个,但还是要注意

  • profile_update 和personal_options_update 在用户编辑他/她的帐户时调用。


现在就像上面一样,我们必须找到是否有函数挂钩到这些hook上,这可以通过 grepping来完成。


示例


在本例中,我们将在Double Opt-In 2.0.9中复现SQL注入漏洞。


因此,我们首先使用grep查找与wp_ajax挂钩的任何操作。

如何挖掘Wordpress插件中的漏洞


我们在public/class-doifd.php中找到了wp_ajax_populate_download_edit_form。让我们打开文件并分析代码。


如何挖掘Wordpress插件中的漏洞


在这里,我们可以看到它与populate_download_edit_form函数挂钩。现在让我们来分析一下该函数


如何挖掘Wordpress插件中的漏洞


在这里,我们可以看到它获取post参数id的值并将其存储到$value变量中,然后在sql查询中使用$value变量,而无需过滤或准备语句,使其容易受到SQL注入攻击。现在让我们复现该漏洞。ajax钩子是wp_ajax_populate_download_edit_form,所以ajax操作参数是populate_download_edit_form,我们还将提供id参数。


如何挖掘Wordpress插件中的漏洞


对于基于布尔的poc,我们将使用and 1=1有效载荷,使用and 1=1将得到正常响应。


如何挖掘Wordpress插件中的漏洞


但是使用and 1=2响应为null ,这意味着确实存在SQL注入漏洞。


如何挖掘Wordpress插件中的漏洞


这就是你在挖掘wordpress插件漏洞时检查钩子的方式。记住在测试时还要检查 wp_ajax以外的其他钩子。


如何挖掘Wordpress插件中的漏洞


如何挖掘Wordpress插件中的漏洞

推荐阅读   

【入门教程】常见的Web漏洞--XSS

【入门教程】常见的Web漏洞--SQL注入

sql注入--入门到进阶

短信验证码安全常见逻辑漏洞

最全常见Web安全漏洞总结及推荐解决方案

常见的Web应用的漏洞总结(原理、危害、防御)

代码审计常见漏洞总结

Web安全漏洞的靶场演示

13 款 Linux 比较实用的工具

xss攻击、绕过最全总结


如何挖掘Wordpress插件中的漏洞

   学习更多技术,关注我:   

觉得文章不错给点个‘再看’吧

原文始发于微信公众号(编码安全研究):如何挖掘Wordpress插件中的漏洞

特别标注: 本站(CN-SEC.COM)所有文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本站不承担任何法律及连带责任,请遵守中华人民共和国安全法.
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年5月28日22:56:47
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                  如何挖掘Wordpress插件中的漏洞 http://cn-sec.com/archives/1061744.html

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: