渗透测试信息收集心得分享
字数 1515 2025-08-18 11:38:41

渗透测试信息收集全面指南

子域名收集

常用工具与方法

  1. 自定义Python扫描器
import requests
import threading
from bs4 import BeautifulSoup
import re
import time

url = input('url(如baidu.com): ')
head = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X MetaSr 1.0'}
ip = 'http://site.ip138.com/{}'.format(url)
domain_url = url
domain = 'http://site.ip138.com/{}/domain.htm'.format(domain_url)
t = time.strftime("%Y-%m-%d"+'_', time.localtime())
html_file = open(url+'_'+t+'.html','w')
# ...(完整代码见原文)
  1. 开源工具推荐
  • https://github.com/lijiejie/subDomainsBrute
  • https://github.com/chuhades/dnsbrute
  1. 在线网站收集
  • https://d.chinacycc.com/(快速获取结果)
  • http://z.zcjun.com/
  • https://phpinfo.me/domain/

端口信息收集

Nmap高级用法

  1. 扫描端口并标记可爆破的服务
nmap 目标 --script=ftp-brute,imap-brute,smtp-brute,pop3-brute,mongodb-brute,redis-brute,ms-sql-brute,rlogin-brute,rsync-brute,mysql-brute,pgsql-brute,oracle-sid-brute,oracle-brute,rtsp-url-brute,snmp-brute,svn-brute,telnet-brute,vnc-brute,xmpp-brute
  1. 常见漏洞扫描
nmap 目标 --script=auth,vuln
  1. 精确漏洞判断
nmap 目标 --script=dns-zone-transfer,ftp-anon,ftp-proftpd-backdoor,ftp-vsftpd-backdoor,ftp-vuln-cve2010-4221,http-backup-finder,http-cisco-anyconnect,http-iis-short-name-brute,http-put,http-php-version,http-shellshock,http-robots.txt,http-svn-enum,http-webdav-scan,iis-buffer-overflow,iax2-version,memcached-info,mongodb-info,msrpc-enum,ms-sql-info,mysql-info,nrpe-enum,pptp-version,redis-info,rpcinfo,samba-vuln-cve-2012-1182,smb-vuln-ms08-067,smb-vuln-ms17-010,snmp-info,sshv1,xmpp-info,tftp-enum,teamspeak2-version

批量扫描流程

  1. 扫描子域名并提取域名/IP到975.txt
  2. 批量扫描:
nmap -iL 975.txt --script=auth,vuln,ftp-brute,imap-brute,smtp-brute,pop3-brute,mongodb-brute,redis-brute,ms-sql-brute,rlogin-brute,rsync-brute,mysql-brute,pgsql-brute,oracle-sid-brute,oracle-brute,rtsp-url-brute,snmp-brute,svn-brute,telnet-brute,vnc-brute,xmpp-brute > scan.txt

C段信息收集

使用iis put工具扫描1-255端口,重点关注:

135,139,80,8080,15672,873,8983,7001,4848,6379,2381,8161,11211,5335,5336,7809,2181,9200,50070,50075,5984,2375,7809,16992,16993

目录信息收集

推荐工具

  • 7kbstorm:https://github.com/7kbstorm/7kbscan-WebPathBrute

注意事项

  • 不要忽略403、404页面
  • 使用大字典集合(建议合并多个工具的字典)

谷歌语法收集

敏感文件搜索

site:ooxx.com filetype:xls
site:xxx.xxx admin
site:xxx.xxx login
site:xxx.xxx system
site:xxx.xxx 管理
site:xxx.xxx 登录
site:xxx.xxx 内部
site:xxx.xxx 系统

邮箱和社交信息

site:xxx.xxx 邮件
site:xxx.xxx email
site:xxx.xxx qq
site:xxx.xxx 群
site:xxx.xxx 企鹅
site:xxx.xxx 腾讯

特定系统指纹

site:ooxx.com inurl:jmx-console  # JBoss系统

云网盘搜索

使用凌风云搜索:https://www.lingfengyun.com/

  • 直接输入厂商名称搜索
  • 查找可能泄露的内部资料

GitHub信息收集

  1. 搜索所有开源项目中包含目标关键字的项目
  2. 推荐工具:https://sec.xiaomi.com/article/37

网站指纹识别

  1. 基础识别方法

    • 故意触发错误页面查看CMS信息
    • 检查URL大小写敏感性判断操作系统(Windows对大小写不敏感)
    • 查看HTML源代码中的注释信息
  2. 在线识别工具

    • http://whatweb.bugscaner.com/look/
    • http://www.yunsee.cn/finger.html
  3. WAF识别

    • https://github.com/EnableSecurity/wafw00f
  4. WHOIS查询

    • 获取注册人、手机号、邮箱等信息(可用于密码生成)

真实IP识别

使用自定义Python脚本(xcdn.py):

# 功能:尝试获取CDN背后的真实IP
# 用法:python3 xcdn.py www.baidu.com
import time
import os
from exp10it import figlet2file
from exp10it import CLIOutput
from exp10it import get_root_domain
# ...(完整代码见原文)

服务器配置检查

  1. SSH配置扫描

    • https://github.com/mozilla/ssh_scan
  2. 敏感文件泄露

    • SVN泄露:http://xxx.xxx.xxx/.svn/entries
    • Bazaar泄露:http://xxx.xxx.xxx/.bzr/
    • 网站源码泄露:www.zip, www.tar.gz, www.rar, web.zip
  3. Java WEB应用

    • WEB-INF目录泄露:
      /WEB-INF/config/jdbc.properties
      /WEB-INF/web.xml
      /WEB-INF/classes/
      /WEB-INF/lib/
      /WEB-INF/src/
      /WEB-INF/database.properties
      

Shodan/FoFa高级搜索

示例:查找标题是携程并且语言是国语的站点

https://www.shodan.io/search?query=http.title:"携程" country:"CN"

思路扩展技巧

  1. 功能点变异

    • 后台登录/admin-login尝试改为/admin-register
    • 接口/user/GetPhone/?id=1尝试改为/user/GetPasswd/?id=1
  2. 源代码分析

    • 搜索"hidden"查找隐藏功能
    • 检查注释中可能泄露的配置信息
  3. 越权检测

    • 对于http://xxx.xxx.xxx/userinfo/?uid=2018-WOIDJWOIDJ-5201314
    • 使用搜索引擎查找:site:xxx.xxx inurl=uid=20

注意事项

  1. 针对不同目标采用不同策略(如腾讯相关目标避免使用QQ群搜索)
  2. 信息收集要全面但要有重点
  3. 发现的敏感信息要妥善处理,避免泄露
  4. 保持工具和字典的更新

通过以上全面的信息收集方法,可以为后续的渗透测试打下坚实基础,发现更多潜在的安全隐患。

渗透测试信息收集全面指南 子域名收集 常用工具与方法 自定义Python扫描器 : 开源工具推荐 : https://github.com/lijiejie/subDomainsBrute https://github.com/chuhades/dnsbrute 在线网站收集 : https://d.chinacycc.com/(快速获取结果) http://z.zcjun.com/ https://phpinfo.me/domain/ 端口信息收集 Nmap高级用法 扫描端口并标记可爆破的服务 : 常见漏洞扫描 : 精确漏洞判断 : 批量扫描流程 扫描子域名并提取域名/IP到975.txt 批量扫描: C段信息收集 使用iis put工具扫描1-255端口,重点关注: 目录信息收集 推荐工具 7kbstorm:https://github.com/7kbstorm/7kbscan-WebPathBrute 注意事项 不要忽略403、404页面 使用大字典集合(建议合并多个工具的字典) 谷歌语法收集 敏感文件搜索 邮箱和社交信息 特定系统指纹 云网盘搜索 使用凌风云搜索:https://www.lingfengyun.com/ 直接输入厂商名称搜索 查找可能泄露的内部资料 GitHub信息收集 搜索所有开源项目中包含目标关键字的项目 推荐工具:https://sec.xiaomi.com/article/37 网站指纹识别 基础识别方法 : 故意触发错误页面查看CMS信息 检查URL大小写敏感性判断操作系统(Windows对大小写不敏感) 查看HTML源代码中的注释信息 在线识别工具 : http://whatweb.bugscaner.com/look/ http://www.yunsee.cn/finger.html WAF识别 : https://github.com/EnableSecurity/wafw00f WHOIS查询 : 获取注册人、手机号、邮箱等信息(可用于密码生成) 真实IP识别 使用自定义Python脚本(xcdn.py): 服务器配置检查 SSH配置扫描 : https://github.com/mozilla/ssh_ scan 敏感文件泄露 : SVN泄露: http://xxx.xxx.xxx/.svn/entries Bazaar泄露: http://xxx.xxx.xxx/.bzr/ 网站源码泄露: www.zip , www.tar.gz , www.rar , web.zip 等 Java WEB应用 : WEB-INF目录泄露: Shodan/FoFa高级搜索 示例:查找标题是携程并且语言是国语的站点 思路扩展技巧 功能点变异 : 后台登录 /admin-login 尝试改为 /admin-register 接口 /user/GetPhone/?id=1 尝试改为 /user/GetPasswd/?id=1 源代码分析 : 搜索"hidden"查找隐藏功能 检查注释中可能泄露的配置信息 越权检测 : 对于 http://xxx.xxx.xxx/userinfo/?uid=2018-WOIDJWOIDJ-5201314 使用搜索引擎查找: site:xxx.xxx inurl=uid=20 注意事项 针对不同目标采用不同策略(如腾讯相关目标避免使用QQ群搜索) 信息收集要全面但要有重点 发现的敏感信息要妥善处理,避免泄露 保持工具和字典的更新 通过以上全面的信息收集方法,可以为后续的渗透测试打下坚实基础,发现更多潜在的安全隐患。