打靶笔记-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 哈希校验

Img
校验通过

2.2 导入Vbox,配置网络

桥接到vmnet8,这个靶机居然要了8G内存,我给缩减了一半
Img

2.3 打快照,启动靶机

Img
这靶机居然是kali带界面部署的,也不知道怎么样。

三、开始渗透

3.1 主机发现

ifconfig
sudo arp-scan -I eth0 -l

Img
目标机器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

Img
发现没有页面标题的网页搭建在Debian上的Apache 2.4.46,只好去访问以下了。

3.3 访问80端口

Img
这个主页只发现了个 /profile.php 的页面,好像也没啥用,目录扫描

3.4 目录扫描

dirsearch -u http://172.16.95.142/

Img
没发现什么,应该是字典不太行,换个字典再来一遍

dirsearch --random-agent -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -u http://172.16.95.142/ -e php,html

Img
好家伙,这么大字典都没结果,换个工具dirbuster

dirbuster

Img
发现个新的页面 /exploit.html ,先访问一下,发现是个上传页面
Img

3.5 文件上传

尝试上传
Img
发现点击提交后会自动跳转localhost,这,查看页面源代码,发现是form表单的action属性写死了,修改成目标机器的地址,再次提交。
Img
提交成功后,发现页面显示了部分FLAG
Img

3.6 Burp抓包

这儿还出现了个小bug,困扰好长一段时间,Burp拦截不到包,后来换到了win10上的专业版本Burp,然后拦截正常了

3.6 思考

然后就没思路了,=-=,最后本着就是学习,不死磕浪费时间的目的,(其实已经浪费了不少时间),上网寻求其他大佬的笔记,很多人没思路,不知道哪位老哥扫到的一个目录enter_network,还有两个文件index.php和admin.php
这,还是字典不够强大.....,我有点怀疑这是哪位老哥直接到靶机里看的目录,不过自己就不扫了,继续吧。

3.7 访问/enter_network/index.php

  1. 发现是个登陆页面
    Img
  2. 直接点提交抓了一下包
    Img
  3. 紧接着弱口令尝试了一下,抓包
    Img
  4. 再次刷新准备尝试其他弱口令时,发现已经带上了cookie
    Img
  5. 拦截响应包,看服务器端是否进行了cookie设置
    Img
    Img
    果然,服务器端进行了cookie设置,分别是用户名和角色名。按照常理,应该是登陆成功才设置,这里显然没有成功,算一个漏洞吧(这靶机打的我怀疑人生,我自己开始编剧情了=-=)。
  6. 解密role的值
    一眼看过去,cookie中的user和role的值不是正常值,要么经过编码,要么经过加密,
    结合请求头中的Content-Type: application/x-www-form-urlencoded,可以知道是进行了URL编码,不过这个有个特点,空格会替换为+,会对特殊字符进行一个ASCII HEX值的替换,比如:=会替换为相应的ASCII HEX值%3D,%会替换为%25,所以最终下来=会变成%253D
    所以将cookie中的role的值中的%253D替换为=后,发现有点像Base64
    Img
    解密后,发现有点像md5,再去解密
    Img
    最终role的值为admin
    Img

3.8 访问/enter_network/admin.php

  1. 提示只有admin的角色才可以访问这个接口
    Img
  2. 尝试将cookie中的role改为admin
    Img
  3. 成功拿到另一个残缺的flag
    Img
    然后线索就又断了,鬼知道这两个Flag中间又没有其他内容

四、总结

最后总结了其他老哥打的笔记,都打的稀里糊涂,也有直接将/enter_network/index.php页面直接丢sqlmap进行sql注入成功的,然后从数据库拿到了这个Flag,但那个admin.php岂不是多次一举。
最后吐槽几点:
1. 整体感觉这个靶机云里雾里,如果非要自己凑剧情,那就是CSRF,但这个逻辑也设计不太合理,大概还是我太菜吧。
2. 还有就是最关键的一点,如果字典不够强,后面这个目录没扫出来,后面这些凑剧情的步骤根本不会有
3. 总结了一圈之后,结合靶机内存开始搞了个8G,我感觉作者有点开玩笑=-=

4.1 猜测一下思路应该是:

  1. 首先通过上传页面发现一半FLAG,然后还有提示CSRF,如下
    Img
  2. 然后关键的,目录扫描发现,enter_network
  3. 通过sql注入万能密码登陆成功,获取cookie,并解密,不过这里好像没登陆成功就给了cookie。
  4. 访问admin.php利用CSRF获得另一般cookie

最后我编不下去了=-=

posted @ 2022-03-19 21:01  WTHusky  阅读(1031)  评论(1编辑  收藏  举报