文章标题
测试环境
靶机:云演考试题,whoami靶机(源码没有找到没有在本地搭)
攻击机:kali
信息收集
开始时访问网站发现啥信息也没有
获取靶机ip
windows 终端 ping 即可

扫描端口
kali 机使用 nmap -sS + ip 扫描得到靶机开放端口

扫描目录
一开始用御剑扫,字典太小了导致啥也没扫到,robots.txt 里面的 flag 提交上去还是错的
后来用 kali 的 dirb + url 扫描,扫到了有一个 www 目录,然后呢用 dirb + url扫这个目录又扫不出东西了

说是这么说,还是扫到东西了的,最关键的当属phpmy目录,images和upload_images咱都没权限访问

于是又转到御剑,发现文件都藏在这目录下了
开始渗透
首先访问 www
尝试进行sql注入攻击,测试语句为万能密码:’ or 1=1 --
后续还尝试了一些弱口令以及暴力破解,但测试结果都是try again。不知道过滤规则暂时放弃sql注入。
接着一个个访问此目录下的文件,发现其中 head.php、show.php、c.php分别是照片、空白、空白。而 add.php 是文件上传页面,但是尝试上传图片之后并没有回显地址,暂时作罢。值得注意的是 test.php,乍一看没啥,但是查看网页源代码发现

文件下载漏洞
'file' parameter is empty. Please provide file path in 'file' parameter
提示“file”参数为空,请在“file”参数中提供文件路径。这是我们打开新世界大门的关键。
给test.php页面一个file参数
首先考虑是GET方式:http://28e7134f.lxctf.net/www/test.php?file=/etc/passwd ,无果
其次考虑POST方式,使用hackbar页面会显示下载该文件。结合burp使用可以直接看到文件的内容:![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-f8cKQ6ly-1651043145165)(whoami靶场渗透测试/image-20220426204726095.png)]](/https://i-blog.csdnimg.cn/blog_migrate/965e033b5a5e2d0f070d6a733e87b190.png)
获取数据库账号密码
由上述测试可知,test.php存在文件下载漏洞。我们如法炮制的看看其他文件内容,比如我们通过下载 c.php看到了数据库的账号whoami,密码whoami_hacker,以及数据库名ica_lab
数据库登录后台文件是啥呢?就是前面扫到的phpmy,登陆访问
看到ica_lab数据库,访问auth看到有一个账号密码。猜测是前面的登陆密码。
同时发现了flag,但是这个也是错的。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5ZvX2fL6-1651043145167)(whoami靶场渗透测试/image-20220426212140309.png)]](/https://i-blog.csdnimg.cn/blog_migrate/bcc880b1fc43122621600bd7f97564f5.png)
知晓sql注入绕过方式
同样利用前面的文件下载漏洞,下载www目录下的index.php文件,它涉及到前端sql注入的绕过方式
$uname=str_replace('\'','',urldecode($_POST['un']));
$pass=str_replace('\'','',urldecode($_POST['ps']));
这边str_replace的作用是将字符串 \ ’ 替换为空,因此构造SQL注入登录payload时,必须含有 \ ’ 字符串,否则会报错。urldecode的作用是将输入解码。我们在之前的payload:’ or 1=1-- 做出修改,在最后增加 \ ',str_replace会将这个\ ’ 替换为空,所以相当于没加。
登录前端
此刻我们就有两种方法登录了
由于我们在数据库中获取了账号密码,直接登陆即可


1012

被折叠的 条评论
为什么被折叠?



