Drunk Admin Web Hacking Challenge
一个关于web hacking挑战的过程,没什么技术上的东西,娱乐一下....简单重点语句翻译下。
======
安装在虚拟主机,首先nmap扫描内网在线主机。
nmap -sn 192.168.0.*
192.168.0.1是我们的路由,192.168.0.100是我们的主机IP,192.168.0.103是被攻击的主机。
用浏览器打开
这web像是用于图片上传的,我们利用Burp Suite 的spider功能进行爬取目录。
从上面看,很明显,upload.php文件用于上传图片,而myphp.php是什么呢?
我们打开这个文件并加上一些参数,id=100
这句话暗示了我们可以利用这个php文件,我们继续把参数的值增加
我们得到了php的版本等一些信息。继续增加。╮(╯_╰)╭
没有多余的信息,继续
得到了很多信息,继续
得到了apache的信息,版本、安装的模块等。我们得到了许多信息,现在我们回到首页。
我们正常上传一个fishy.jpg文件。
查该页源码。
我们从中可以发现上传的图片文件存放于images目录中,并且发现其文件名为MD5 hash(32字节长且字母在a-f之间),“fishy”的MD5值为“29c3a60c13d1e0eda25d65f65a761b47″,与文件命名不符,而fishy.jpg 的MD5为: e1a9d5f33b65b29243ca47bd3f5fd3af 和文件中的文件名相同。从而我们了解了其中文件命名的规则。
so,我们上传一个php文件看看,文件命名为k.jpg.php。
我们成功上传了该文件,但是却找不到该文件的位置。
我们查看其源文件也找不到路径。
但我们刚刚发现了其上传文件的命名规则,我们查看其文件名的MD5(不是文件哦~)
从而得到其文件名。
我们上传的文件包含whoami命令,从得到的数据来看,php能够正确执行。
我们上传一个php文件,从而来执行unix上的命令。
-,-简单的bash命令就直接解释了。
pwd 显示当前路径。
ls -la ./ > dirlist.txt 列文件 并输出到 dirlist.txt文件中。
输入 https://192.168.0.103/images/dirlist.txt。
ls -la /var/www > dirlist.txt 列出/var/www目录的文件 输出到dirlist.txt。
刷新页面。
发现一个叫.proff的文件,(proff中文意思为证据)读取.proof文件看看。
cat /var/www/.proof > proof.txt
我们发现了 一个 Secret code: TGglMUxecjJDSDclN1Ej 目测是base64加密。
解密后为:Lh%1L^r2CH7%7Q#
从.proof中我们发现一个叫bob的用户,难道在该系统中存在这个用户? 我们来验证下,
列出home目录下的文件 参数为树状目录显示,并输出。
ls -la -R /home > bob.txt
我们可以发现bob的确是该系统的一个用户,并且在该目录下还存在一个public_html文件夹。
我们尝试打开这个文件
https://192.168.0.103/~bob/
在其中输入我们刚刚base64解密的值
Lh%1L^r2CH7%7Q#
得到一串数字,我们google它,得到位置。 over!
References:
https://bechtsoudis.com/work-stuff/challenges/drunk-admin-web-hacking-challenge/