APP下载

Web 渗透测试之信息收集研究

2022-03-02巨腾飞岳剑晖

网络安全技术与应用 2022年9期
关键词:枚举测试人员域名

◆巨腾飞 岳剑晖

(陕西省网络与信息安全测评中心 陕西 710065)

1 引言

渗透检测是运用模拟恶意骇客的攻击方式,来评价电脑安全性的一个评价方式。这种工作过程涉及对系统的各种问题、技术问题或弱点的主动分析,通常这种方法在某个攻击者可能出现的地方来实现的,而且在这些地方可以有条件自主使用安全漏洞,信息收集作为获得企业授权之后渗透测试正式开展的第一阶段,其重要性不言而喻。

2 为何要进行信息收集

我们在外网信息收集的时候,会发现日益安全技术发展的今天,Web 系统防护愈加趋于完善,很难找到可直接利用的漏洞。因此我们会将更多的精力放在企业办公系统、邮箱、VPN 上,要实现成功渗透测试,就更加体现信息收集的重要性,信息搜集越完善,就越能为我们的渗透测试提供巨大帮助。

根据《精通Metasploit 渗透测试》一书所讲:信息收集是整个渗透测试最重要阶段之一,可任意让测试者选择合适和准确的渗透测试攻击方式,缩短渗透测试的时间,通常这个阶段占据整个渗透测试时间的40%~60%。最终能否成功渗透进入目标网络,很大程度上取决于测试者在这个阶段的工作成果,因此信息收集是Web 系统渗透测试不可或缺的一部分。

3 信息收集方法

常见的信息收集方法包括但不限于以下十三个方面:

(1)whois 信息

首先whois 信息可得到所有域名申请人的基本信息,包含域名注册者、联系人、邮箱、联系电话、域名初始日期、域名到期日期、DNS 服务信息、域名状态等。然后就可以使用在联系邮件、联系人等反查相关目标解析过的历史域名。

(2)ICON 图标、SSL 证书搜索

一般企业Web 应用使用的SSL 证书、ICON 图标的主域名都是一致的,所以可以通过找SSL 证书、ICON 图标的方式找同一公司资产。然后将这些收集到的信息放入一些信息收集网站,可批量搜索目标更多的相关资产。

(3)Github、网盘信息

程序员们在进行源代码时喜欢把Github、网盘等当成代码库或者存放程序,因为Github 不但可以托管程序,而且还可以对其中的代码信息进行查询,但在上传或发布程序时,由于安全意识不够,会使一些敏感的配置信息文件暴露于众。一些网盘不仅能存储文件,还可以进行公开文件搜索,可能会导致一些敏感信息泄漏。

(4)邮箱信息

电子邮箱信息可以为渗透测试人员提供大量的信息,有些工具可以指定浏览器爬取的信息,能够高效地找到多个对测试人员有用的邮箱地址,有时候邮箱名字会反应一个人的密码或者命名习惯。

(5)端口信息

系统服务和网络安全也是相对应的,每多打开一个端口,就意味着渗透面也相应增加,而打开的端口越多,也就意味着系统服务器所受到的威胁也越大。现在一些主流的端口扫描工具基本都支持全端口扫描。

(6)浏览器信息收集

浏览器信息收集是使用网页搜寻强大功能,来从磅礴的网络中查找到所需要的资讯。从搜索结果可以搜索到历史遗留后门、无法直接浏览看到的系统后台入口、用户个人信息泄漏、源代码泄漏、未经授权浏览、mdb 文件下载和备份文件等漏洞信息。

(7)子域名枚举

开始Web 系统渗透测试前,需要明确知道系统的网络资产:域名、IP 等,而IP 和域名有着直接的解析关系,所以如何找到网站所有子域名是关键。现在有很多在线、离线工具均可进行子域名枚举,包括主动枚举与被动枚举。

(8)C 段信息

有些大的公司通常会具有多个出口IP 地址,可能会位于相同的C 段,所以在进行一些大的攻防演戏时,C 段也是一种突破思路,C段上可能会有其他应用或者一些废弃的应用未及时下线,我们可以借助这些应用来进行渗透测试会有意想不到的收获。

(9)Web 应用指纹信息

Web 应用指纹包括但不限于:前端框架、应用框架、开发框架、CMS 类型、javascript 框架、css 文件或代码、中间件、数据库信息、网站开发语言、Web 服务器、注释掉的html 代码中的内容、cookie中的关键词、robots.txt 文件中的关键词和404 报错页面等信息。

(10)敏感目录(文件、路径)信息

企业在开发并发布Web 应用系统时,由于服务器配置问题,导致目录浏览功能打开,引起敏感目录信息泄漏,从而造成安全隐患。在信息收集中,需要收集的敏感信息包括但不限于:robots.txt、后台目录、目录遍历、数据库备份文件、网站备份文件、上传目录、测试页面、phpinfo、网页编辑器、DS_Store 文件、phpmyadmin 页面和crossdomin.xml 页面等信息。

(11)绕过CDN 查询真实IP

一些Web 应用系统为了保证其安全性及稳定性,采用CDN 等方式进行部署,渗透测试过程中无法查看其真实IP 地址,这时候就需要一些在线工具或者网站对其历史解析信息进行查找,通过历史解析信息分析出其真实IP 并对其进行渗透测试。

(12)综合信息汇聚

通过网站邮箱、公告通知中收集的人名、身份证号、学号等信息,可进行类似社工信息汇聚,将其组合成:人名+年份、人名+特殊字符+年份、人名+生日等生成密码字典,对其网站后台、办公系统和邮箱等系统进行密码爆破或尝试会有预想不到的收获。

4 结束语

本文主要基于Web 系统简要介绍渗透测试中的一个重要阶段——信息收集,包括信息收集的重要性、信息收集的分类,较为全面的总结出信息收集的常用方法,帮助安全相关测试人员拓展渗透测试信息收集方法,提升渗透测试技能。

猜你喜欢

枚举测试人员域名
移动应用众包测试人员信誉度复合计算模型研究
基于理解性教学的信息技术教学案例研究
数组在处理枚举无规律数据中的应用
Combosquatting域名抢注的测量研究
如何购买WordPress网站域名及绑定域名
浅析软件测试中的心理学应用
基于太阳影子定位枚举法模型的研究
基于枚举的并行排序与选择算法设计
犯罪心理测试人员素质要求分析
犯罪心理测试人员素质要求分析