web安全信息收集技巧+工具汇总
字数 3375 2025-10-14 00:33:59

Web安全信息收集全面指南与工具详解

一、 信息收集概述

信息收集是渗透测试和Web安全评估的第一步,也是至关重要的一步。其核心目标是尽可能地扩大攻击面,为后续的漏洞发现和利用奠定基础。信息收集做得越充分,发现安全弱点的可能性就越大。本指南将信息收集分为以下几个关键层面。

二、 根域名搜集

根域名(或称主域名)是目标的核心标识,例如 freebuf.com。发现所有关联的根域名是第一步。

  • 目的:找出目标可能拥有的所有互联网资产,这些资产可能部署在不同的域名下,但属于同一组织。
  • 技巧与工具
    1. 企业信息查询平台(非常有效)
      • 企查查(https://www.qcc.com/)爱企查(https://aiqicha.baidu.com/)小蓝本(https://www.xiaolanben.com/):通过这些商业平台查询目标公司实体,在其“网站备案”、“知识产权”等信息中,经常能发现官方未公开的域名。
    2. ICP备案查询
      • ICP备案查询网(https://www.beianx.cn/search):输入公司名称或已知域名,查询其备案号以及同一备案主体下的所有域名。
      • 工业和信息化部政务服务平台(https://beian.miit.gov.cn/):官方备案查询渠道,信息最权威。
    3. IP反查域名
      • https://site.ip138.com/:输入目标IP地址,可以查询该IP上绑定了哪些其他域名。
    4. WHOIS查询
      • 站长之家(https://whois.chinaz.com/)爱站网(https://whois.aizhan.com/):查询域名的注册信息(注册人、邮箱、电话、注册商)。通过对比注册邮箱、电话等信息,可以关联出同一注册人持有的其他域名。
    5. 威胁情报平台
      • VirusTotal:提交域名或IP,在“关系”图谱中常能发现关联的域名。

三、 子域名收集

子域名(如 api.freebuf.com, blog.freebuf.com)是目标资产的重要组成部分,往往存在测试环境、后台系统等脆弱点。

  • 目的:发现隐藏的、不被注意的子系统,这些系统可能安全性较低。
  • 技巧与工具
    1. 子域名枚举工具
      • 工具原理:使用字典进行暴力破解,或利用各种接口查询。
      • 常用工具
        • subdomainbrutesubfinderamassksubdomain:强大的字典爆破或被动收集工具。
        • ARL(灯塔):一个强大的自动化信息收集和资产侦察平台,集成了多种子域名收集方式。
    2. DNS历史记录查询
      • https://www.dnsgrep.cn/:查询域名的DNS解析历史记录,可能会发现已失效但服务器仍在运行的子域名(僵尸域名)。
    3. SSL证书查询
      • https://myssl.com/(如 https://myssl.com/weijiangshi.cn?status=q):通过查询域名SSL证书的透明日志,获取证书中包含的所有域名和子域名。CensysShodan 等搜索引擎也支持此功能。
    4. 网络空间搜索引擎
      • Fofa:使用语法 domain="freebuf.com" 进行搜索,可以找到直接解析到该根域名的子域名。
    5. 泛解析问题处理
      • 问题:如 *.baidu.com 全部解析到 baidu.com,导致暴力破解时所有随机子域名都显示有效,干扰结果。
      • 解决:在扫描前,先尝试随机生成一个不存在的子域名(如 random123456.freebuf.com)进行访问。如果返回正常页面而非错误提示(如404),则很可能存在泛解析。此时需要工具或脚本对响应内容进行比对去重。

四、 搜索引擎搜集偏远资产

利用搜索引擎的强大能力,发现与目标相关但不易被常规手段发现的资产。

  • 目的:发现那些没有直接DNS关联,但属于目标公司的资产。

  • 技巧与语法(以Fofa为例)

    • ICP备案号icp="京ICP备12345678号"
    • SSL证书序列号或组织名称cert="FreeBuf"cert.subject="FreeBuf"
    • 网站图标Hashicon_hash="-123456789"(通过计算网站Favicon.ico的哈希值来定位使用相同图标的资产)
    • 特定标题或正文title="某某公司"body="公司爱用的指纹"
    • 关键Fofa语法总结
      domain="freebuf.com"        # 查子域名
      body="登录"                 # 正文包含"登录"
      title="后台管理系统"         # 标题包含指定内容
      header="nginx"              # 响应头包含"nginx"
      host=".edu.cn"              # 主机名包含".edu.cn"
      ip="220.181.111.1/24"       # 查询IP的C段资产
      port="8009"                 # 查询开放8009端口的资产
      status_code="200"           # 过滤状态码为200的资产
      app="Apache-Tomcat"         # 根据指纹识别应用
      country="CN"                # 搜索指定国家(编码)的资产
      region="Henan"              # 搜索指定行政区的资产
      
      # 组合查询示例:查找国内教育站点的后台管理系统
      domain="*.edu.cn" && (body="登录" || body="后台" || body="系统" || body="管理")
      
  • 谷歌语法(Google Hacking)

    • site:.edu.cn:限制搜索范围为.edu.cn域名。
    • inurl:admin | login | system:搜索URL中包含特定关键词的页面。
    • intitle:"登录" | "后台" | "管理":搜索标题中包含特定关键词的页面。
    • filetype:pdf | doc | xls site:freebuf.com:搜索特定站点下的特定类型文件(可能包含敏感信息)。
    • intext:"密码" | "username":搜索正文中包含敏感关键词的页面。
    • 组合示例site:.edu.cn intitle:登录|后台|系统|管理 -inurl:page|files|pagem(查找教育站点的后台,并排除一些干扰路径)。

五、 目录和文件扫描

目标是发现网站上隐藏的目录、敏感文件(如备份文件、配置文件、管理员后台等)。

  • 工具dirsearchdirmapffufgobuster
  • Dirsearch 使用详解
    # 基本使用
    python3 dirsearch.py -u https://target.com -e php,html,js,json,bak
    
    # 常用参数
    -u https://target.com       # 指定目标URL
    -L targets.txt              # 指定包含多个URL的列表文件
    -e php,html,js,bak,zip     # 指定要扫描的文件扩展名(-e * 代表所有)
    -w /path/to/dictionary.txt # 使用自定义字典
    -t 50                       # 设置线程数(提高速度)
    -r                          # 递归扫描,发现目录后会继续深入扫描
    --random-agents             # 使用随机User-Agent,避免被WAF封禁
    -H "Cookie: session=abc123" # 添加Cookie(用于扫描需要认证的路径)
    --proxy http://127.0.0.1:8080 # 设置代理(方便与Burp Suite联动)
    
    # 结果过滤
    -i 200,301,302             # 只显示这些状态码的结果
    -x 403,404,500             # 排除这些状态码的结果
    --exclude-texts "Not Found" # 排除响应正文包含"Not Found"的结果
    --exclude-regexps "^Error$" # 使用正则表达式排除响应
    
    # 输出报告
    -o /path/to/report.txt --format json
    

六、 指纹探测

识别网站使用的技术栈(CMS、框架、中间件、前端库等),以便寻找对应的已知漏洞。

  • 目的:快速定位攻击方向,例如识别出是WordPress,就可以重点检查其插件、主题漏洞。
  • 工具
    • 本地工具TScanWappalyzer(浏览器插件)、WhatWeb
    • 在线平台BugScanner云悉
    • Burp Suite插件:如 Software Vulnerability Scanner
  • 探测内容
    • CMS:WordPress, Joomla, Drupal, Discuz! 等。
    • Web框架:Spring, Django, Flask, Laravel, Express 等。
    • 中间件:Nginx, Apache, Tomcat, IIS, WebLogic 等。
    • 前端:JavaScript库(jQuery, Vue, React)。
    • 操作系统:Linux, Windows。

七、 端口扫描

发现目标服务器开放的网络端口,判断其上运行的服务。

  • 目的:了解目标暴露的服务,如Web服务(80/443)、SSH(22)、数据库(3306, 1433, 27017)、远程桌面(3389)等,这些服务本身可能存在问题。
  • 工具
    • Nmap(最强大)
      # 基本扫描
      nmap -sS -T4 target_ip        # TCP SYN扫描,速度快
      nmap -sV -sC -T4 target_ip    # 版本探测并执行默认脚本
      nmap -p 1-65535 -T4 target_ip # 全端口扫描
      
      # 高级用法
      nmap -sU -T4 target_ip        # UDP端口扫描
      nmap -A -T4 target_ip          # 激进模式,包含OS检测、版本探测、脚本扫描、路由追踪
      nmap -p 80,443,22,21 --script vuln target_ip # 对特定端口进行漏洞脚本扫描
      nmap -sS -T4 192.168.1.0/24   # 扫描整个C段
      
    • Masscan:极快的互联网级端口扫描器。
    • TScan:国产的综合性扫描工具,也包含端口扫描功能。

八、 信息收集流程总结

一个典型的信息收集流程可以概括为:

  1. 起点:获得一个目标名称或主域名。
  2. 资产发现
    • 通过企业查询、ICP备案、WHOIS搜集所有关联根域名
    • 对每个根域名,使用工具、DNS历史、SSL证书、搜索引擎进行子域名枚举
    • 使用Fofa/Shodan等搜索引擎,通过ICP、证书、图标等特征搜集偏远资产
  3. 服务发现
    • 对发现的IP地址进行端口扫描,确定开放的服务。
  4. Web应用信息收集
    • 对Web服务进行指纹识别,确定技术栈。
    • 进行目录扫描,发现隐藏路径和敏感文件。
    • 使用谷歌语法等,深入挖掘敏感信息。
  5. 整理与关联:将收集到的所有信息(域名、子域名、IP、端口、服务、技术栈)进行整理,形成完整的资产清单和攻击面地图,为后续的漏洞扫描和渗透测试提供输入。

重要声明:本文所有技术内容仅用于安全学习与研究目的。在进行任何安全测试之前,请确保您已经获得了相关目标的明确授权。未经授权的测试是非法的。

Web安全信息收集全面指南与工具详解 一、 信息收集概述 信息收集是渗透测试和Web安全评估的第一步,也是至关重要的一步。其核心目标是 尽可能地扩大攻击面 ,为后续的漏洞发现和利用奠定基础。信息收集做得越充分,发现安全弱点的可能性就越大。本指南将信息收集分为以下几个关键层面。 二、 根域名搜集 根域名(或称主域名)是目标的核心标识,例如 freebuf.com 。发现所有关联的根域名是第一步。 目的 :找出目标可能拥有的所有互联网资产,这些资产可能部署在不同的域名下,但属于同一组织。 技巧与工具 : 企业信息查询平台(非常有效) : 企查查( https://www.qcc.com/) 、 爱企查( https://aiqicha.baidu.com/) 、 小蓝本( https://www.xiaolanben.com/) :通过这些商业平台查询目标公司实体,在其“网站备案”、“知识产权”等信息中,经常能发现官方未公开的域名。 ICP备案查询 : ICP备案查询网( https://www.beianx.cn/search) :输入公司名称或已知域名,查询其备案号以及同一备案主体下的所有域名。 工业和信息化部政务服务平台( https://beian.miit.gov.cn/) :官方备案查询渠道,信息最权威。 IP反查域名 : https://site.ip138.com/ :输入目标IP地址,可以查询该IP上绑定了哪些其他域名。 WHOIS查询 : 站长之家( https://whois.chinaz.com/) 、 爱站网( https://whois.aizhan.com/) :查询域名的注册信息(注册人、邮箱、电话、注册商)。通过对比注册邮箱、电话等信息,可以关联出同一注册人持有的其他域名。 威胁情报平台 : VirusTotal :提交域名或IP,在“关系”图谱中常能发现关联的域名。 三、 子域名收集 子域名(如 api.freebuf.com , blog.freebuf.com )是目标资产的重要组成部分,往往存在测试环境、后台系统等脆弱点。 目的 :发现隐藏的、不被注意的子系统,这些系统可能安全性较低。 技巧与工具 : 子域名枚举工具 : 工具原理 :使用字典进行暴力破解,或利用各种接口查询。 常用工具 : subdomainbrute 、 subfinder 、 amass 、 ksubdomain :强大的字典爆破或被动收集工具。 ARL(灯塔) :一个强大的自动化信息收集和资产侦察平台,集成了多种子域名收集方式。 DNS历史记录查询 : https://www.dnsgrep.cn/ :查询域名的DNS解析历史记录,可能会发现已失效但服务器仍在运行的子域名(僵尸域名)。 SSL证书查询 : https://myssl.com/ (如 https://myssl.com/weijiangshi.cn?status=q ):通过查询域名SSL证书的透明日志,获取证书中包含的所有域名和子域名。 Censys 、 Shodan 等搜索引擎也支持此功能。 网络空间搜索引擎 : Fofa :使用语法 domain="freebuf.com" 进行搜索,可以找到直接解析到该根域名的子域名。 泛解析问题处理 : 问题 :如 *.baidu.com 全部解析到 baidu.com ,导致暴力破解时所有随机子域名都显示有效,干扰结果。 解决 :在扫描前,先尝试随机生成一个不存在的子域名(如 random123456.freebuf.com )进行访问。如果返回正常页面而非错误提示(如404),则很可能存在泛解析。此时需要工具或脚本对响应内容进行比对去重。 四、 搜索引擎搜集偏远资产 利用搜索引擎的强大能力,发现与目标相关但不易被常规手段发现的资产。 目的 :发现那些没有直接DNS关联,但属于目标公司的资产。 技巧与语法(以Fofa为例) : ICP备案号 : icp="京ICP备12345678号" SSL证书序列号或组织名称 : cert="FreeBuf" 或 cert.subject="FreeBuf" 网站图标Hash : icon_hash="-123456789" (通过计算网站Favicon.ico的哈希值来定位使用相同图标的资产) 特定标题或正文 : title="某某公司" , body="公司爱用的指纹" 关键Fofa语法总结 : 谷歌语法(Google Hacking) : site:.edu.cn :限制搜索范围为.edu.cn域名。 inurl:admin | login | system :搜索URL中包含特定关键词的页面。 intitle:"登录" | "后台" | "管理" :搜索标题中包含特定关键词的页面。 filetype:pdf | doc | xls site:freebuf.com :搜索特定站点下的特定类型文件(可能包含敏感信息)。 intext:"密码" | "username" :搜索正文中包含敏感关键词的页面。 组合示例 : site:.edu.cn intitle:登录|后台|系统|管理 -inurl:page|files|pagem (查找教育站点的后台,并排除一些干扰路径)。 五、 目录和文件扫描 目标是发现网站上隐藏的目录、敏感文件(如备份文件、配置文件、管理员后台等)。 工具 : dirsearch 、 dirmap 、 ffuf 、 gobuster 。 Dirsearch 使用详解 : 六、 指纹探测 识别网站使用的技术栈(CMS、框架、中间件、前端库等),以便寻找对应的已知漏洞。 目的 :快速定位攻击方向,例如识别出是WordPress,就可以重点检查其插件、主题漏洞。 工具 : 本地工具 : TScan 、 Wappalyzer (浏览器插件)、 WhatWeb 。 在线平台 : BugScanner 、 云悉 。 Burp Suite插件 :如 Software Vulnerability Scanner 。 探测内容 : CMS :WordPress, Joomla, Drupal, Discuz ! 等。 Web框架 :Spring, Django, Flask, Laravel, Express 等。 中间件 :Nginx, Apache, Tomcat, IIS, WebLogic 等。 前端 :JavaScript库(jQuery, Vue, React)。 操作系统 :Linux, Windows。 七、 端口扫描 发现目标服务器开放的网络端口,判断其上运行的服务。 目的 :了解目标暴露的服务,如Web服务(80/443)、SSH(22)、数据库(3306, 1433, 27017)、远程桌面(3389)等,这些服务本身可能存在问题。 工具 : Nmap(最强大) : Masscan :极快的互联网级端口扫描器。 TScan :国产的综合性扫描工具,也包含端口扫描功能。 八、 信息收集流程总结 一个典型的信息收集流程可以概括为: 起点 :获得一个目标名称或主域名。 资产发现 : 通过企业查询、ICP备案、WHOIS搜集 所有关联根域名 。 对每个根域名,使用工具、DNS历史、SSL证书、搜索引擎进行 子域名枚举 。 使用Fofa/Shodan等搜索引擎,通过ICP、证书、图标等特征搜集 偏远资产 。 服务发现 : 对发现的IP地址进行 端口扫描 ,确定开放的服务。 Web应用信息收集 : 对Web服务进行 指纹识别 ,确定技术栈。 进行 目录扫描 ,发现隐藏路径和敏感文件。 使用 谷歌语法 等,深入挖掘敏感信息。 整理与关联 :将收集到的所有信息(域名、子域名、IP、端口、服务、技术栈)进行整理,形成完整的资产清单和攻击面地图,为后续的漏洞扫描和渗透测试提供输入。 重要声明 :本文所有技术内容仅用于安全学习与研究目的。在进行任何安全测试之前,请确保您已经获得了相关目标的明确授权。未经授权的测试是非法的。