皮卡丘靶场解题记录-敏感信息暴露
皮卡丘靶场解题记录-敏感信息暴露
1、漏洞原理总结:
开发者疏忽,把不该让用户看到的东西暴露出来了。它本身危害低,但往往是进一步攻击的跳板。有三种典型形态:
| 形态 | 例子 |
|---|---|
| ① 目录列出 | 直接访问目录 URL,服务器把文件列表列出来 |
| ② 报错泄露版本 | 输入错误参数,报错信息里带出操作系统/中间件/语言版本 |
| ③ 前端源码泄露 | HTML/CSS/JS 里藏了后台地址、内网接口、甚至账号密码 |
2、我的测试过程:
测试账号都直接放出来了
放账号密码的表单是get提交
3、核心漏洞代码分析:
略
4、实战延伸:
拓展,目录列出:
首先要知道访问文件和访问目录是两回事。
| 访问 | 例子 | 服务器行为 |
|---|---|---|
| 一个文件 | /infoleak.php |
执行/返回这个文件 → 你看到网页 |
| 一个目录 | /vul/infoleak/ |
服务器要决定给你看什么(见下 |
平时访问 xxx.com/(根目录)能看到网页,是因为那个目录里有个 index.php / index.html,服务器默认把它当首页返回给你。这是有 index 文件的情况。
而当访问一个没有index文件的目录时,就会有所不同。总的来说,服务器有三种可能:
| 服务器配置 | 能看到什么 |
|---|---|
① 开了 autoindex |
列出这个目录下的所有文件名(就是目录列出) |
| ② 没开 autoindex | 返回 403 或空白(你这个靶场就是这种情况) |
| ③ 有 index 文件 | 返回 index 首页(正常网页) |
目录列出不是开发者写的网页,而是服务器自动生成的一个文件清单页面,长这样:
1 | Index of /vul/infoleak/ |
然后这个目录列出是否出现又取决于服务器有没有开 autoindex。
主流服务器里面,主要就apache默认开,其余基本都默认关。
| 服务器 | autoindex(目录列出)默认 | 说明 |
|---|---|---|
| Apache | 默认开 | 经典,Options Indexes 默认包含,所以目录列出漏洞在 Apache 站最常见 |
| nginx | 默认关 | autoindex off |
| IIS(微软) | 默认关 | 目录浏览默认禁用 |
| Tomcat(Java) | 默认关 | listings=false |
| Lighttpd / Caddy | 默认关 | — |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Michele!
评论