目录
渗透测试的本质是信息收集,信息收集也叫做资产收集。
信息收集是渗透测试的前期主要工作,是非常重要的环节,收集足够多的信息才能方便接下来的测试,信息收集主要是收集网站的域名信息、子域名信息、目标网站信息、目标网站真实IP、敏感/目录文件、开放端口和中间件信息等等。通过各种渠道和手段尽可能收集到多的关于这个站点的信息,有助于我们更多的去找到渗透点,突破口。
1、whois信息
(1)什么是whois信息
- 在渗透测试信息收集中,whois信息是指域名注册时留下的信息,包括域名所有者、域名注册商、联系方式等。
(2)为什么要收集whois信息
- whois信息可以用来查询域名是否已经被注册,以及注册域名的详细信息。在进行渗透测试时,收集whois信息可以帮助测试人员了解目标域名的注册情况,以及域名所有者的联系方式,从而进一步了解目标系统的安全情况
(3)在线工具
(4)收集的内容
- 域名对应的邮箱
- 该邮箱注册的所有域名
- 企业CEO名称注册的域名
2、企业信息查询
- 利用企查查、天眼查等平台可以查询目标企业的子公司、备案号、域名、真实IP、C段、端口、指纹信息、敏感目录文件、APP或小程序等信息。
- 此外,还可以查询目标企业法人、控股企业、地址、电话等信息,注意子公司的子公司也要记录下来。在查询时,要学会筛选、分析信息,提高工作效率。同时,要遵守法律法规和道德规范,不得非法获取和使用企业信息。
在线工具:
3、域名&子域名
- 在渗透测试信息收集中,收集域名和子域名的作用是帮助测试人员发现更多的服务和安全漏洞。
- 子域名是某个主域的二级域名或者多级域名,在防御措施严密的情况下无法直接拿下主域,可以采用迂回战术拿下子域,然后无限靠近主域。通常同一组织的不同域名或应用程序中存在相同的漏洞,子域名探测可以帮助测试人员发现这些漏洞,从而增加发现漏洞的机会
在线工具:
- 查子域/备案:https://chaziyu.com/
- RappidDns:https://rapiddns.io/subdomain
- 查子域权重:https://www.wanshangdata.com/domainrelated/subdomain.html
子域名挖掘机:
- OneForAll:https://github.com/shmilylty/OneForAll
- ksubdomain:https://github.com/knownsec/ksubdomain
- subDomainsBrute:https://github.com/lijiejie/subDomainsBrute
- Sublist3r:https://github.com/aboul3la/Sublist3r
4、旁站
(1)什么是旁站
- 旁站就是一个服务器可以起多个web服务,开不同的端口即可,相当于一个IP映射给多个域名。
(2)旁站涉及的CDN问题
- CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。
- CDN会隐藏服务器真实的IP地址,导致无法对目标网站的操作系统进行渗透,所以为了查询到准确的旁站信息,我们需要找到目标的真实IP(下面会介绍如何绕过CDN)。
(3)旁站在线收集工具
- chinaz:https://tool.chinaz.com/same
- ip138:https://site.ip138.com/
5、真实IP(CDN绕过)
(1)CDN绕过原理
- 采用全球各地ping的形式,对返回的IP进行判断,如果大部分地区返回的IP一样,代表是真实IP,反之采用了CDN服务。
- 通过邮件的方式让服务器主动给你发包
- 敏感目录泄露
(2)全球ping工具
- 17CE:https://www.17ce.com/
- DNS检测:https://tools.ipip.net/dns.php
- IP查询:https://ipchaxun.com/
- BOCE:https://www.boce.com/
- ITDOG:https://www.itdog.cn/ping/
- Ping.cn:https://ping.chinaz.com/
5、端口&子目录
(1)为什么要收集目标端口信息
- 进行渗透测试时,攻击者需要通过各种手段收集目标主机的信息,其中端口信息是非常重要的一项。通过搜集端口信息,攻击者可以了解目标主机上开放了哪些服务,以及这些服务的版本和配置情况,从而确定可能存在的安全漏洞和攻击入口。
- 同时,搜集端口信息还可以帮助攻击者了解目标主机的网络架构和服务布局,为后续的渗透测试提供攻击路径的选择和攻击方式的确定。
(2)为什么要收集子目录
- 渗透测试信息收集中收集网站子目录的作用是可以了解网站的架构和目录结构,甚至可能有助于发现敏感信息或漏洞。
- 例如,收集到的目录信息中可能包含后台登录目录,通过后台登录目录可以尝试进入管理后台,进而提升权限或获取敏感信息。此外,还可能包含网站备份文件、安装包等敏感文件和目录信息,这些文件可能包含网站的文件、数据库、配置文件等重要敏感信息,通过分析这些文件可以发现安全漏洞或植入恶意程序等。
(3)常用工具
- Nmap:https://nmap.org/ //下一个章节详细介绍Nmap
- masscan:https://github.com/robertdavidgraham/masscan
- Goby:https://gobies.org/
- 御剑:https://github.com/foryujian/yujianportscan
6、敏感信息
6.1、Google Hack语法
(1)后台地址
- site:xxx.com 管理后台/登录/管理员/系统,可以通过添加双引号增加精确度
- site:xxx.com inurl:login/admin/system/manage
(2)敏感文件
- site:xxx.com filetype:pdf/doc/xls/txt
- site:xxx.com filetype:log/sql/conf
(3)测试环境
- site:xxx.com inurl:test/ceshi
- site:xxx.com intitle:后台/测试
(4)邮箱/QQ/群
- site:xxx.com 邮件/email
- site:xxx.com qq/群/企鹅/腾讯
- site:xxx.com intitle:"Outlook Web App" 邮件服务器的web界面
- site:xxx.com intitle:"mail" site:xxx.com intitle:"webmail"
(5)其他
- site:xxx.com inurl:api
- site:xxx.com inurl:uid=/id=
- site:xxx.com intitle:index.of "server at"
6.2、Github
- @xxx.com password/secret/credentials/token/config/pass/login/ftp/ssh/pwd
- @xxx.com security_credentials/connetionstring/JDBC/ssh2_auth_password/send_keys
6.3、网盘引擎&空间搜索引擎
(1)网盘引擎
(2)空间搜索引擎
- 空间搜索引擎是直接搜索网络中的主机,将主机信息汇聚成数据库,然后显示出主机的IP、端口、中间件、摄像头、工控设备banner等其他网络设备信息。
- 空间搜索引擎非常强大,原因在于:自从互联网诞生的那一刻,网络空间快速扩张,在网络空间中各种网络设备物物相连,因此互联网得到了延伸和扩展,用户端延伸和扩展到了任何物品与物品之间,进行信息交换和通信,形成了万物互联的物联网。通过网络空间搜索引擎,用户可以快速了解全世界大约有多少网络摄像头、服务器,以及有多少服务器采用Apache等,因此空间搜索引擎非常强大。
空间搜索引擎工具:
- FOFA:https://fofa.info/ 之前被禁用,目前已恢复,但是功能阉割严重
- Quake:https://quake.360.cn/quake/#/index
- ZoomEye:https://www.zoomeye.org/
- Shadon:https://www.shodan.io
- 基础语法:https://blog.csdn.net/Vdieoo/article/details/109622838
切记:搜索到敏感信息之后,不要随意下载和传播,属于违法行为!应该主动进行报备。
7、历史漏洞
(1)这里介绍两个重要的漏洞平台
- CNVD是国家信息安全漏洞共享平台,是由国家计算机网络应急技术处理协调中心联合国内重要信息系统单位、基础电信运营商、网络安全厂商、软件厂商和互联网企业建立的信息安全漏洞信息共享知识库。
- CNNVD是中国国家信息安全漏洞库,隶属于中国信息安全测评中心,负责建立国家级信息安全漏洞库。
(2)漏洞平台地址
- CNVD:https://www.cnvd.org.cn/
- CNNVD:https://www.cnnvd.org.cn/home/childHome
- Seebug:https://www.seebug.org/
- Exploit Database:https://www.exploit-db.com/
- SPLOITUS:https://sploitus.com/
8、指纹信息
(1)什么是指纹信息?
- 指纹信息是指目标系统、应用程序、操作系统等的相关信息,可以用来识别这些系统的特征和属性。
- 例如,在Web应用程序的渗透测试中,指纹信息可能包括Web服务器的类型、版本、运行的操作系统、使用的编程语言、框架、数据库等信息。通过收集这些指纹信息,渗透测试人员可以确定目标系统的弱点和漏洞,并尝试利用这些漏洞进行攻击。因此,指纹信息在渗透测试中扮演着至关重要的角色。
(2)常用工具
火狐插件:Wappalyzer(网站技术嗅探工具)
云悉:http://www.yunsee.cn
Nuclei:https://github.com/projectdiscovery/nuclei