信息收集
主机发现请使用arp-scan进行扫描。
首先进行访问发现重定向至http://dc-2/这个域名,在hosts中进行一个更改。
更改后访问页面,发现基于WordPress4.7.10
收集相关信息,一般先用nmap -sV参数去看端口开放详情,根据结果进行判断是否需要对全端口进行扫描。
发现仅开放一个端口80端口,不确定是否有其他端口开放,可以使用masscan 进行全端口的扫描。耗费时间较长,可以仅对前10000端口扫描。
再利用nmap -A 参数对开放端口信息进行获取。
可以发现开放了7744端口作为ssh端口。
获取webshell
首先查看页面,找到flag1。
需要利用cewl这个工具去生成字典,对于WordPress的渗透思路可以查看相关技术博客
[WordPress渗透思路] https://blog.csdn.net/luce1234567890/article/details/79206580
利用kali自带工具wpscan去进行渗透,查看wpscan可以直接扫描用户名。
获取到admin,jerry与tom写入u.txt,再通过cewl生成密码字典写入p.txt
将用户写入p.txt,找到dc-2的admin登录后台为默认,wp-admin,利用
wpscan --url 192.168.1.20 -P p.txt -U u.txt
进行爆破,获取到jerry与tom的密码。
尝试进行登录,jerry登录成功 发现flag2的提示信息。
提示应该是说如果你没办法获取webshell那么去使用之前发现的ssh入口进行登录,但是不着急可以先获取一下webshell试试,找一下上传点。
通过media上传马的方式失败,php,zip,img的方法全部他限制,也可能是权限的问题。这个问题在之后会继续探究一下,具体学习下wordpress的上传方法。
现在利用ssh端口进行登录尝试。
发现jerry的用户无法登录但是tom用户可以登录ssh,到这里获取普通用户的部分结束。
提升用户权限
whoami等命令无法使用,当前的rbash是被限制的,vi查看tom目录下的flag3文件,获取到信息,发现应该是要用tom用户切换到jerry用户。先查看自己能使用什么命令,利用
compgen -c
查看自己能用的命令。
具体思路可以参考以下文章:
[freebuf] https://www.freebuf.com/articles/system/188989.html Linux Restricted Shell绕过技巧总结
[RBash绕过] http://m.vlambda.com/wz_wN2p3nVZd8.html RBash - 受限的Bash绕过
查看相关命令尝试利用export进行绕过
查找各种资料发现两种绕过方法,第一种利用
BASH_CMDS[a]=/bin/sh;a
export PATH=$PATH:/bin/
export PATH=$PATH:/usr/bin</pre>
第二种利用vi进行绕过
用vi的:set shell=/bin/bash
:set shell=/bin/bash`
:shell`
之后 export -p
查看发现PATH变量可以写入
export PATH=$PATH:/bin/
export PATH=$PATH:/usr/bin</pre>
之后去jerry目录下查看文件flag4,可以直接获取到flag4的内容。
也可以提升权限到jerry
账号密码在之前获得了。
利用git提权,具体方法可以参考下面的文章,有多种提权方法。
[github] https://gtfobins.github.io/ GTFOBins