作者 |?林海文 上海控安可信软件创新研究院汽车网络安全组
版块 |?鉴源论坛 · 观模
社群 |?添加微信号“TICPShanghai”加入“上海控安51fusa安全社区”
信息收集在渗透测试过程中是最重要的一环,“浅谈web渗透之信息收集”将通过上下两篇,对信息收集、渗透攻击两块进行探讨,分享目前国内外常用的信息收集工具。本篇重点讨论Whois查询与域名信息收集。
01
概 要
1.1 渗透测试目的
通过渗透测试的方式,模拟黑客的攻击思路与技术手段,达到从攻击者角度,发现平台存在的安全隐患;深度挖掘渗透测试范围内应用系统各个层面(应用层、网络层、系统层)的安全漏洞;检验当前安全控制措施的有效性,针对发现的安全风险及时进行整改,增强系统自身防御能力,提升安全保障体系的整体健壮性。渗透测试作为独立的安全技术服务,其主要目的就在于验证平台系统的技术安全性,通过渗透测试,可在技术层面定性的分析系统的安全性。
1.2 常见参考标准
序号 | 文档名称 |
1 | 《OWASP Testing Guide》 |
2 | 《PTES Penetration Testing Execution Standard》 |
3 | 《Open Source Security Testing Methodology Manual》 |
4 | 《National Institute of Standards and Technology》 |
1.3 渗透测试流程
渗透测试流程总体分为7大部分,分别为前期交互、信息收集、威胁建模、漏洞扫描、渗透攻击、后渗透测试、形成报告。本文主要针对信息收集、渗透攻击两块进行讲解,这也是渗透测试中最为核心的两大块。
总流程如图所示:
图1 渗透测试总流程
02
信息收集
2.1 信息搜集与分析
根据平台委托范围和时间,对目标系统进行信息搜集与分析,信息搜集是每一步渗透攻击的前提,通过信息搜集可以有针对性地制定模拟攻击测试计划,提高模拟攻击的成功率,同时可以有效的降低攻击测试对系统正常运行造成的不利影响。
信息搜集的目标是得到主机存活情况、DNS名、IP地址、网络链路,网络拓扑信息、操作系统指纹、应用类型、账号情况、系统配置等有价值的信息,为更深层次的渗透测试提供资料。同时通过对目标地址进行漏洞扫描,鉴定其操作系统,确定其所开放的TCP/UDP端口及服务的数量和类型,这是所有渗透测试的基础。
通过对某某网络信息收集分析,可以相应地、有针对性地制定模拟黑客入侵攻击的计划,以提高入侵的成功率、减小暴露或被发现的几率。信息收集的方法包括主机网络扫描、操作类型判别、应用判别、账号扫描、配置判别等等。主要方式有两种,主动和被动。
2.2 收集什么信息
· Whois
· 域名信息收集
· 端口探测
· 旁站、C段
· 目录扫描、敏感信息泄露
· 指纹识别、架构探测
2.2.1 Whois
Whois是用来查询互联网中域名的IP以及所有者等信息的传输协议。可以获取关键注册人的信息,包括注册商、所有者、邮箱、联系电话、域名状态、域名注册时间、域名到期时间、DNS服务器等。
? 常用工具
a. 站长之家:http://whois.chinaz.com/
b. 国外的who.is:https://who.is/
c. 爱站:https://whois.aizhan.com/?
d. 微步:https://x.threatbook.cn/
e. 全球WHOIS查询:https://www.whois365.com/cn/
f. VirusTotal:https://www.virustotal.com/gui/home/upload
g. 阿里云:https://whois.aliyun.com/
2.2.2 域名信息收集
子域名:域名按照层级可以分为顶级域、主域名、子域名等。例如.com是顶级域,主域名是ticpsh.com,子域名则是在主域名的前面添加自定义名称,例如像www.ticpsh.com?、mail.ticpsh.comt这一类都可统称为子域名。
一/二/三级域名:以www.ticpsh.com为例,.com为顶级域名/一级域名,ticpsh.com为二级域名,www.ticpsh.com为三级域名。
那回到本篇主题,搜集子域名的目的是什么?
众所周知,一个网站的主站通常更安全,而一些不常用或新上线的子站安全性往往较差,可能成为系统的弱点。因此子域名可以用来扩大攻击的范围,同一个域名下的二级域名都属于相同资产,一般而言都有一定的联系。所以在渗透过程中,收集子域名可以发现更多测试范围内的资产来增加发现漏洞的机率。
下面列举常见的四大搜集方法及对应的工具:
??采用检测工具
a. 高并发的DNS暴力枚举工具:subDomainsBrute
Sub扫描方法:
扫描结果:
b. 子域名挖掘机:layer.exe
c. 收集能力强大的开源子域收集工具:OneForAll
? 采用搜索引擎
利用Google、Bing?、shodan和百度这样的搜索引擎进行搜索查询,例如:
? 采用三方聚合平台应用
a. VirusTotal:https://www.virustotal.com/#/home/search
b. DNSdumpster:https://dnsdumpster.com/
? 查询SSL证书
域名、子域名和邮件地址常常也会包含在SSL/TLS证书内,因此也可通过证书查询的方式获取到需要的信息。
a.?https://crt.sh/
b.?https://censys.io/
c.?http://z.zcjun.com/
进阶利用
email:邮箱命名规则、公司是否具有邮箱默认密码(这个可以采取社工
员工号:很多oa、um、sso系统都是采用员工号登录,知道员工号的规则尝试进行撞库
商家信息:如果是一些具有商家系统的,能收集到一些商家账户
敏感目录:网站后台目录/一些登录地址/一些接口目录
敏感文件:比如数据库配置文件、网站源码啊、数据库备份文件等
中华人民共和国网络安全法
第二十七条
任何个人和组织不得从事非法侵入他人网络、干扰他人网络正常功能、窃取网络数据等危害网络安全的活动:不得提供专门用于从事侵入网络、干扰网络正常功能及防护措施、窃取网络数据等危害网络安全活动的程序、工具,明知他人从事危害网络安全的活动的,不得为其提供技术支持、广告推广、支付结算等帮助。
声明:本文章所分享内容仅用于网安爱好者之间的技术讨论,禁止用于违法途径,所有渗透都需获取授权!否则需自行承担,本文章及原作者不承担相应的后果。