配置
老样子,将靶机与攻击机置于同一网段即可
开整
获取目标IP
arp-scan -l
确认IP为192.168.130.129
端口扫描
sudo nmap -sS -T4 -p- -A 192.168.130.129
发现80端口,但链接重置到了http://dc-2
7744为openssh服务
探索
访问一下http://192.168.130.129,发现无法访问,访问http://dc-2,也不行,所以需要修改hosts文件,添加一行:
192.168.130.129 dc-2
再次访问http://dc-2,能访问到了,发现CMS:wordpress,以及flag:
flag1:
Your usual wordlists probably won’t work, so instead, maybe you just need to be cewl.
More passwords is always better, but sometimes you just can’t win them all.
Log in as one to see the next flag.
If you can’t find it, log in as another.
意思是需要使用cewl生成密码字典。cewl是kali自带的密码生成工具,直接使用
cewl -w pw.txt http://dc-2/
现在密码字典有了,但还没有用户字典,这时需要用到另一个工具wpscan了,这个工具可以扫描wordpress,其中有一个选项就是获取用户名
wpscan -e u --url http://dc-2/
获得了三个用户admin、tom、jerry,将其保存到文件中,再次使用wpscan进行暴破
wpscan -U u.txt -P pw.txt --url http://dc-2
成功获取了两个用户的密码:
tom/parturient
jerry/adipiscing
目录扫描
dirb http://dc-2/
发现后台wp-admin,使用这两个口令信息成功登录wordpress的后台,找到了flag2:
大概意思是:如果不能利用wordpress走捷径,可以考虑另一条路。
先走走常规路,看看后台能不能上传webshell,发现这两个账号都没有主题、插件模板修改功能,巧不巧?但在media处发现上传功能,先上传一个txt文档试试,好家伙,直接无法上传,应该是权限问题:
只能说出题者很牛逼,flag2都提示得很明显了,劝我们另寻他路(果然是劝退咯)。。。
那我走?哈哈哈,那就另寻他路,前边不是扫到了7744 ssh端口么,尝试利用得到得账号登录一下试试呢。嗨呀,tom果然登录成功了,你说巧不巧,我都还没尝试jerry呢(后发现确实jerry无法登录)。
果然靶场作者诚不欺人,在tom家目录下发现了flag3.txt,但是无法使用cat查看内容
发现为rbash,百度了一下,发现其是一个受限的bash,很多命令都无法执行,但vi命令还能用,就是这么巧妙,rbash能耐我何?直接vi flag3.txt
,即可编辑查看到flag3.txt的内容
意思是得切换至jerry,那来吧,切换一下吧su jerry
,失败咯,哈哈,rbash原来在这等着我呢,不能直接切换了,刚好百度的时候看到了rbash的逃逸大全,总结到位,顺势学习一波。学以致用,既然vi可以使用,那就用vi来逃逸吧
# vi进入末行模式,即:
:set shell=/bin/bash
:shell
export PATH=/usr/sbin:/usr/bin:/sbin:/bin
成功逃逸,cat都能使用了
然后在jerry的家目录下找到了flag4.txt
好了,没有更多信息了,按照套路,最终的flag必然在root的家目录下,故又需要提权,先看看哪些命令不需要密码,直接sudo就可执行的
sudo -l
很nice,发现git命令可以不需要密码,就能以管理员身份运行,通过git提权
sudo git -p help或sudo git help config/status
# 然后在可以输入的位置输入:
!/bin/bash
成了,撒花,完结
总结
- cewl、wpscan、dirb的使用
- rbash逃逸
- Linux提权之sudo --git