Web 安全实战:Robots.txt 协议原理、利用与防御
题目场景
在一个训练挑战中,你将了解 Robots Exclusion Standard。robots.txt 文件被网络爬虫用于检查它们是否被允许爬取和索引你的网站,或者只是网站的部分内容。有时这些文件会暴露目录结构,而不是保护内容不被爬取。
解题思路
- 打开题目场景。
- 利用 Robots 协议:发现根目录下有一个 f10g.php 的文件,访问这个文件内容。
- 访问网站根目录的 f10g.php 文件,得到正确答案。
知识点讲解:Web 安全信息收集:robots.txt 的原理、利用与防御实战
⚠️ 警告: 本文仅用于授权测试和安全学习,未经授权扫描目标属于违法行为。
一、关于「Robots」的纠正
在安全圈交流时,常听到新手说「Repbots 漏洞」。其实这是一个口误,正确的术语是 Robots 协议,具体体现在网站根目录下的 robots.txt 文件。虽然它不是传统意义上的「漏洞」,但在信息收集阶段,robots.txt 往往是攻击者眼中的「藏宝图」。
在安全评估中,渗透测试人员只花了一分钟,访问了 目标网站/robots.txt,发现里面 Disallow 了一个 /backup_2023.zip 路径。直接访问该路径,下载到了包含数据库账号密码的备份文件。全程未利用任何技术漏洞,仅靠一个配置文件。这就是 robots.txt 的安全价值。
二、robots.txt 原理详解
2.1 什么是 Robots 协议?
Robots Exclusion Protocol(机器人排除协议)是网站告诉搜索引擎爬虫(如 Google、百度)哪些页面可以抓取,哪些不可以的国际标准。 本质: 它是一个君子协议,没有强制约束力。
2.2 文件位置
固定位于网站根目录下:
http://example.com/robots.txt
2.3 基本语法
| 字段 | 说明 | 示例 |
|---|---|---|
| User-agent | 指定爬虫名称 | User-agent: * (所有爬虫) |
| Disallow | 禁止抓取的路径 | Disallow: /admin/ |
| Allow | 允许抓取的路径 | Allow: /admin/login.php |
| Sitemap | 网站地图位置 | Sitemap: http://example.com/sitemap.xml |
示例文件:


