在Web渗透测试中,信息收集是至关重要的第一步,它为后续的漏洞发现和利用提供基础。以下是Web渗透信息收集的主要内容和方法:
如有侵权联系删除!!!
爱企查:https://aiqicha.baidu.combu/?from=pz
天眼查:https://www.tianyancha.com/
微步情报:https://x.threatbook.com/
fofa:https://fofa.info/
ICP备案查询网:https://www.7icp.cn/
钟馗之眼-知道创宇:https://www.zoomeye.org/
一、目标基础信息收集
• 域名信息
• Whois查询:通过在线Whois查询工具,获取域名所有者、注册商、注册日期、过期日期等信息。例如,在一些域名查询网站输入目标域名,就能查看其注册信息,这些信息可能帮助识别目标组织的一些基本情况。
• DNS信息查询:利用工具如nslookup或dig来查询域名的DNS记录,包括A记录(主机名到IP地址的映射)、MX记录(邮件交换记录)、CNAME记录(别名记录)等。了解目标的DNS架构有助于发现潜在的攻击入口,如子域名的存在。
• 网站架构信息
• 查看网站地图(sitemap):许多网站会提供sitemap.xml文件,通过访问这个文件,可以了解网站的页面层次结构和主要内容分布。
• 分析页面链接:使用爬虫工具(如Burp Suite的Spider功能)或者浏览器插件,爬取网站页面上的链接,了解网站不同页面之间的关联,确定网站的功能模块,比如是电子商务网站、新闻网站还是论坛等。
二、服务器信息收集
• IP地址及地理位置
• 域名解析获取IP:通过前面的DNS查询得到目标网站服务器的IP地址。
• IP地理位置查询:利用在线IP查询工具,确定服务器所在的大致地理位置,这对于评估可能的法律和监管环境有一定帮助。
• 服务器操作系统和软件信息
• HTTP头部信息分析:通过浏览器开发者工具或者命令行工具(如curl)查看服务器返回的HTTP头部信息。例如,Server字段可能会显示服务器软件类型和版本(如Apache/2.4.46),这些信息可以帮助查找相关的已知漏洞。
• 端口扫描:使用工具如nmap对服务器IP进行端口扫描,确定开放的端口,如常见的80(HTTP)、443(HTTPS)、22(SSH)、3306(MySQL)等端口。根据开放端口和对应的服务,推测服务器的操作系统类型和可能运行的软件。
三、应用程序信息收集
• Web应用框架和技术识别
• 查看页面源代码:在浏览器中查看页面源代码,寻找一些特定的框架或技术标识。例如,对于基于JavaScript的框架,可能会看到相关的库引用(如引用React.js或Vue.js的脚本文件)。
• 分析响应头和Cookie:有些应用会在响应头或者Cookie中包含有关自身技术栈的线索。例如,一个使用ASP.NET的网站可能会在Cookie中带有相关的标识。
• 应用版本信息
• 检查更新日志和版本号显示:一些比较规范的Web应用会在页面的某个角落显示版本号,或者在网站的更新日志页面中提到当前版本。
• 利用已知文件和目录结构猜测:根据已知的某种应用的默认文件和目录布局,结合扫描工具查找相应的文件,来推测应用的版本。例如,某些CMS(内容管理系统)有特定的插件目录结构,通过发现这些目录中的文件,可以猜测其版本。
四、敏感信息收集
• 搜索引擎挖掘
• 使用Google Hacking等技巧:利用搜索引擎的高级语法,如“site:目标域名 filetype:txt password”来查找可能泄露的敏感文件,如包含密码相关信息的文本文件。
• 查找备份文件和旧版本页面:搜索网站的备份文件(如.bak后缀的文件)或者旧版本页面,这些可能包含未及时清理的敏感信息。
• 网站内容分析
• 查找评论区和用户输入框:分析评论区内容,有时候用户可能会无意或者有意地泄露一些敏感信息。对于用户输入框,观察是否有提示信息或者默认值可能包含有用的线索。
• 检查错误页面:当网站出现错误时,错误页面可能会泄露数据库表名、路径信息等敏感内容。
总结:实践操作是掌握渗透检测的关键,让我们共同学习网安