信息收集之目录扫描
1. 目录扫描的作用
1.1 文件目录
文件目录是指:为实现“按名存取”,必须建立文件名与辅存空间中物理地址的对应关系,体现这种对应关系的数据结构称为文件目录
1.2 目录扫描
目录扫描可以让我们发现这个网站存在多少个目录,多少个页面,探索出网站的整体结构。
通过目录扫描我们还能扫描敏感文件,后台文件,数据库文件,和信息泄漏文件等等
2. 常见的目录信息泄漏
2.1 目录遍历漏洞
目录遍历是由于web服务器或者web应用程序对用户输入的文件名称的安全性验证不足而导致的一种安全漏洞,使得攻击者通过利用一些特殊字符就可以绕过服务器的安全限制,访问任意的文件(可以使web根目录以外的文件),甚至执行系统命令
目录遍历漏洞原理
程序在实现上没有充分过滤用户输入的 ../ 之类的目录跳转符,导致恶意用户可以通过提交目录跳转来遍历服务器上的任意文件
2.2 敏感信息泄漏
由于后台人员的疏忽或者不当的设计,导致不应该被前端用户看到的数据被轻易的访问到
比如:
——通过访问url 下的目录,可以之间列出目录下的文件列表
——输入错误的 url 参数后报错信息里面包含操作系统,中间件,开发语言的版本或者其他信息;(SQL注入)
——前端的源码(html,css,js)里面包含了敏感信息,比如后台登录地址,内网接口信息,甚至账号密码等
3. 常见的源码泄漏案例
目录遍历
当没有默认网页时,就会在网站上显示web服务器 用户列表中的文件和目录,因此,apache服务器上面默认文件名为index.php,当没有上传index.php 时,服务器就会将文件夹中的内容全部展示出来
web源码泄漏案例:https://www.sohu.com/a/192064346_653604
4. 目录扫描工具dirbuster
4.1 常见的目录扫描方式
- robots.txt ——>网站内的robots文件
- 目录爆破 ——>御剑,nikto,dirbuster,webdirscan……
- 第三方资源引用——>Js,SDK
4.2 dirbuster
他是用来探测web目录结构和隐藏的敏感文件的
下载地址:https://sourceforge.net/projects/dirbuster/files/
需要有Java环境
windows 双击 DirBuster.jar启动软件
Linux 用户在终端执行 ./DirBuster-1.0-RC1.sh,若脚本无执行权限用chmod + x ./DirBuster-1.0-RC1.sh添加权限
工具说明
Owasp项目
dirbuster 是一个多线程的基于Java的应用程序设计,用于暴力破解Web应用服务器上的目录名和文件名
如何工作的
dirbuster 是一种履带式和粗暴式的混合物,他遵循它找到的页面中的所有链接,但也为可能的文件尝试不同的名称。这些名称可能位于与我们使用的文件类似的文件中,也可能由dirbuster 使用暴力破解确定文件是否存在,dirbuster 使用服务器的响应代码,常见的响应代码如下:
- 200 ok:文件存在
- 404 找不到404文件:这是重定向到给定的URL
- 401 Unauthorized :访问此文件需要身份认证
- 403 Forbidden: 请求有效但服务器拒绝响应
操作步骤
- URL设置
- 线程数设置
- 选择爆破字典
- 取消选择递归查询
- 开始运行