目录
目录扫描收集信息
什么是目录扫描
目录扫描可以让我们看到这个网站存在多少目录,多少页面,探索出网站的整体结构。
通过目录扫描我们还可以扫描敏感文件,后台文件,数据库文件,和信息泄露文件,等等。
常见的目录信息泄露
目录遍历漏洞:
目录遍历(路径遍历)是由web服务器或者web应用程序对用户输入的文件名称的安全性验证不足而导致的一种安全漏洞,使得攻击者通过利用一些特殊字符就可以绕过服务器的安全限制,访问任意的文件(可以是web根目录以外的文件),甚至执行系统命令。
目录遍历漏洞原理:
程序在实现上没有充分过滤用户输入的../之类的目录跳转符,导致恶意用户可以通过提交目录跳转来遍历服务器上的任意文件。
如上图就是一个目录遍历漏洞。
敏感信息泄露:
由于后台人员的疏忽或者不当的设计,导致不应该被前端用户看到的数据被轻易的访问到
比如:
通过访问url下的目录,可以直接列出目录下的文件列表
输入错误的url参数后报错信息里面包含操作系统,中间件,开发语言的版本或其他信息(SQL注入)
前端的源码(html,css,js)里面包含了铭感信息,比如后台登录地址,内网接口信息,甚至账号密码等;
常见的敏感目录和文件:
robots.txt 允许爬虫爬取的页面sitemap.xml 指导搜索引擎搜索哪些页面网站的备份文件 / 数据后台登录的目录: /admin, /manage安装包(源码)列如:1.zip,非开源,商用上传的目录: 文件上传漏洞, /upload,/upload.phpphp的探针: phpinfo,雅黑探针文本编辑器: kindeditor,CKeditor , Ueditor,文件上传漏洞、命令注入Linux: /etc/passwd , /etc/shadow,/etc/sudoersMacOS: .DS_Store编辑器的临时文件 :.swp目录穿越: Windows IIS , Apachetomcat WEB-INF:
WEB-INF/web.xml : Web 应用程序配置文件 , 描述了 servlet 和其他的应用组件配置及命名规则 .WEB-INF/database.properties : 数据库配置文件WEB-INF/classes/ : 一般用来存放 Java 类文件 (.class)WEB-INF/lib/ : 用来存放打包好的库 (.jar)WEB-INF/src/ : 用来放源代码 (.asp 和 .php 等)其他非常规文件 :secret.txt , password.txt
文件扫描思路
做法:
直接在域名后面拼接路径
/
文件名,如果返回
200
,就是存在 。
扫描方法:递归,字典,暴力破解,爬虫,fuzz
(模糊测试)。
文件扫描的字典
kali:wordlists
dirb: /usr/share/wordlists/dirb/common.txt
工具
dirb:
dirb <网址>
dirbuster:
御剑: