描述:
Robots协议(也称为爬虫协议、机器人协议等)的全称是“网络爬虫排除标准”(Robots Exclusion Protocol),网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取。当一个搜索蜘蛛访问一个站点时,它会首先检查该站点根目录下是否存在robots.txt,如果存在,搜索机器人就会按照该文件中的内容来确定访问的范围;如果该文件不存在,所有的搜索蜘蛛将能够访问网站上所有没有被口令保护的页面。
示例:
危害:
robots.txt文件有可能泄露系统中的敏感信息,如后台地址或者不愿意对外公开的地址等,攻击者有可能利用这些信息实施进一步的攻击。
解决方案:
1. 确保robots.txt中不包含敏感信息,建议将不希望对外公布的目录或文件请使用权限控制,使得匿名用户无法访问这些信息
2. 将敏感的文件和目录移到另一个隔离的子目录,以便将这个目录排除在Web Robot搜索之外。如将文件移到“folder”之类的非特定目录名称是比较好的解决方案: New directory structure: /folder/passwords.txt/folder/sensitive_folder/
New robots.txt: User-agent: * Disallow: /folder/
3. 如果您无法更改目录结构,且必须将特定目录排除于 Web Robot 之外,在 robots.txt 文件中,请只用局部名称。虽然这不是最好的解决方案,但至少它能加大完整目录名称的猜测难度。例如,如果要排除“admin”和“manager”,请使用下列名称(假设 Web 根目录中没有起始于相同字符的文件或目录): robots.txt: User-agent: * Disallow: /ad Disallow: /ma
4. #如果是非搜索引擎禁止访问,则返回403
location = /robots.txt {
if ($http_user_agent !~* "spider|bot|Python-urllib|pycurl") {
return 403;
}
}
如果此文对你有所帮助,请随意打赏鼓励作者^_^
微信公众号
微信
最新评论
总共0条评论