这一部分我们要简要介绍以下 Web Hacking 的基本内容,预计分三次博客。
在访问 Web 应用时,浏览器提供了若干个工具来帮助我们发现一些潜在问题和有用的信息。
比如可以查看网站源代码。查看源代码可以 右键 网页,然后选择 查看网站源代码:
或者可以在 URL 前加上 view-source: 也能查看源代码:
除了能查看源代码,浏览器一般都有开发者工具,快捷键是 F12。在开发者工具中,最常用的就是 Inspector、Debugger 和 Network 模块了。



这些是浏览器中比较基本和常见的工具,接下来将从常见的 Web 漏洞上进行讲解。
Content discovery
在 Web 应用中的内容包括文件、视频、备份、网站、图片等等。但是并不是所有的内容都会展示在用户面前,或者说被允许公开访问,比如供内部员工使用的页面、网站配置文件、网站备份文件等。
有三种方式可以实现 内容发现:手动、自动、OSINT (Open-source intelligence,开源情报)。
手动
手动实现 内容发现 有5个方式:
- Robots.txt
- 图标
- Sitemap.xml
- HTTP 头
- 网站框架
Robots.txt
Robots.txt 是一份文档,它告诉搜索引擎哪些网页是否能显示在搜索引擎结果中,或者说禁止特定搜索引擎抓取网站。该文件为渗透测试人员提供了一份很好的清单,因为它列出了网站所有者不希望渗透测试人员发现的网站。
Favicon
Favicon 是浏览器地址栏或标签页中显示的一个小图标,用于打造网站品牌。
有时候开发人员在使用框架搭建网站时,框架的 favicon 会被遗留下来。如果开发人员忘记替换这些图标,则会为渗透测试人员提供网站框架的线索。
OWASP 提供了一个常用框架图标的数据库: OWASP favicon database - OWASP
可以通过如下命令获取图标的 md5 值:curl {图标URL地址} | md5sum
将图标的 md5值 交给 OWASP 数据库中搜索,即可得到结果。
Sitemap.xml
和 robots.txt 文件限制搜索引擎可以查看的内容不同,sitemap.xml 提供了网站所有者希望在搜索引擎上列出的每个文件的列表。这些文件有时会包含网站中比较难浏览到的区域,甚至会列出当前网站不再使用但仍然在幕后工作的一些旧网页。