打靶笔记-06-vulnhub-N7
打靶笔记-06-vulnhub-N7
一、靶机信息
Name: Web Machine: (N7)(中等难度)
Date release: 3 Nov 2021
Author: Duty Mastr
Series: Web Machine
Web-Machine-N7.ova (Size: 5.7 GB)
Download (Mirror): https://download.vulnhub.com/webmachine/Web-Machine-N7.ova
SHA1: 67E4452646B3F3B3FC518A900FD0363DFE55F6F4
二、启动靶机
2.1 哈希校验
校验通过
2.2 导入Vbox,配置网络
桥接到vmnet8,这个靶机居然要了8G内存,我给缩减了一半
2.3 打快照,启动靶机
这靶机居然是kali带界面部署的,也不知道怎么样。
三、开始渗透
3.1 主机发现
ifconfig
sudo arp-scan -I eth0 -l
目标机器IP:172.16.95.142
3.2 端口服务发现
sudo nmap -p- 172.16.95.142
sudo nmap -p80 -sV -sT -Pn -sC 172.16.95.142
发现没有页面标题的网页搭建在Debian上的Apache 2.4.46,只好去访问以下了。
3.3 访问80端口
这个主页只发现了个 /profile.php 的页面,好像也没啥用,目录扫描
3.4 目录扫描
dirsearch -u http://172.16.95.142/
没发现什么,应该是字典不太行,换个字典再来一遍
dirsearch --random-agent -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -u http://172.16.95.142/ -e php,html
好家伙,这么大字典都没结果,换个工具dirbuster
dirbuster
发现个新的页面 /exploit.html ,先访问一下,发现是个上传页面
3.5 文件上传
尝试上传
发现点击提交后会自动跳转localhost,这,查看页面源代码,发现是form表单的action属性写死了,修改成目标机器的地址,再次提交。
提交成功后,发现页面显示了部分FLAG
3.6 Burp抓包
这儿还出现了个小bug,困扰好长一段时间,Burp拦截不到包,后来换到了win10上的专业版本Burp,然后拦截正常了
3.6 思考
然后就没思路了,=-=,最后本着就是学习,不死磕浪费时间的目的,(其实已经浪费了不少时间),上网寻求其他大佬的笔记,很多人没思路,不知道哪位老哥扫到的一个目录enter_network,还有两个文件index.php和admin.php。
这,还是字典不够强大.....,我有点怀疑这是哪位老哥直接到靶机里看的目录,不过自己就不扫了,继续吧。
3.7 访问/enter_network/index.php
- 发现是个登陆页面
- 直接点提交抓了一下包
- 紧接着弱口令尝试了一下,抓包
- 再次刷新准备尝试其他弱口令时,发现已经带上了cookie
- 拦截响应包,看服务器端是否进行了cookie设置
果然,服务器端进行了cookie设置,分别是用户名和角色名。按照常理,应该是登陆成功才设置,这里显然没有成功,算一个漏洞吧(这靶机打的我怀疑人生,我自己开始编剧情了=-=)。 - 解密role的值
一眼看过去,cookie中的user和role的值不是正常值,要么经过编码,要么经过加密,
结合请求头中的Content-Type: application/x-www-form-urlencoded,可以知道是进行了URL编码,不过这个有个特点,空格会替换为+,会对特殊字符进行一个ASCII HEX值的替换,比如:=会替换为相应的ASCII HEX值%3D,%会替换为%25,所以最终下来=会变成%253D。
所以将cookie中的role的值中的%253D替换为=后,发现有点像Base64
解密后,发现有点像md5,再去解密
最终role的值为admin
3.8 访问/enter_network/admin.php
- 提示只有admin的角色才可以访问这个接口
- 尝试将cookie中的role改为admin
- 成功拿到另一个残缺的flag
然后线索就又断了,鬼知道这两个Flag中间又没有其他内容
四、总结
最后总结了其他老哥打的笔记,都打的稀里糊涂,也有直接将/enter_network/index.php页面直接丢sqlmap进行sql注入成功的,然后从数据库拿到了这个Flag,但那个admin.php岂不是多次一举。
最后吐槽几点:
1. 整体感觉这个靶机云里雾里,如果非要自己凑剧情,那就是CSRF,但这个逻辑也设计不太合理,大概还是我太菜吧。
2. 还有就是最关键的一点,如果字典不够强,后面这个目录没扫出来,后面这些凑剧情的步骤根本不会有
3. 总结了一圈之后,结合靶机内存开始搞了个8G,我感觉作者有点开玩笑=-=
4.1 猜测一下思路应该是:
- 首先通过上传页面发现一半FLAG,然后还有提示CSRF,如下
- 然后关键的,目录扫描发现,enter_network
- 通过sql注入万能密码登陆成功,获取cookie,并解密,不过这里好像没登陆成功就给了cookie。
- 访问admin.php利用CSRF获得另一般cookie
最后我编不下去了=-=