今天小编给大家分享一下渗透测试信息收集的方法是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
1收集子域信息
子域名也就是二级域名,是指顶级域名的域名。假设我们的目标网络规模比较大,直接从主域入手显然不明智,因为对于这种规模的目标,一般其主域都是重点防护的区域,所以不如选择进入目标的某个子域,然后再想办法迂回接近正真的目标,这无疑是一个比较好的选择。那么怎样才能尽可能多地搜集目标的高价值子域呢?
(1)子域名检测工具
Layer子域名挖掘机,K8,wydomain,Sublist3r,dnsmaper,subDomainsBrute,Maltego CE
(2)搜索引擎枚举
可以利用前面的google黑客语法。列如:搜索百度旗下的子域名就可以使用“site:baidu.com”,
site:http://baidu.com–www 不包含www
(3)第三方聚合应用枚举
很多第三方服务汇聚了大量DNS数据集,可通过它们检索某个给定域名的子域名。只要往其搜索栏中输入域名,就可以检索到相关的域名信息。
·DNSdumpster网站:http://dnsdumpster.com/
(4)证书透明度公开日志枚举
证书透明度(Certificate Transparency,CT)是证书授权机构(CA)的一个项目,证书授权机构会为每一个SSL/TLS证书发布到公共日志中。一个SSL/TLS证书通常包含域名、子域名和邮箱地址,这些也经常成为攻击者非常希望获得的有用信息。查找某个域名所属证书的最简单的方法就是使用搜索引擎搜索一些公开的CT日志。
Crt.sh:http://crt.sh
Censys:https://censys.io
(5)在线子域爆破
子域名爆破网站https://phpinfo.me/domain
Ip反查绑定域名网站:http://dns.aizhan.com
2指纹识别
指纹由于其终身不变性、唯一性和方便性,几乎成为生物特征的代名词。这里所指的是网站CMS指纹识别、计算机操作系统及Web容器的指纹识别等。
在渗透测试中,对目标服务器进行指纹识别是相当有必要的,因为只有识别出相应的Web容器或者CMS,才能查找与其相关的漏洞,然后才能进行相应的渗透操作。
CMS(Content Management System)又称整站系统或文章系统。在2004年以前,如果想要进行网站内容管理,基本上都靠手工维护,但在信息爆炸的时代,完全靠人维护相当困难。所以就出现了CMS,开放者只要给客户一个软件包,客户自己安装配置好,就可以定期更新数据来维护网站,节省了大量的人力和物力。
常见的CMS有:
Dedecms (织梦),Discuz,PHPWEB,PHPWind,PHPCMS,ECShop,Dvbbs,SiteWeaver,ASPCMS,帝国,Z-Blog,WordPress等。
·扫描工具:
御剑web指纹识别,whatweb,WebRobo,椰树,轻量web指纹识别等
·在线查询
[BugScaner][http://whatweb.bugscaner.com/look/]
[云悉指纹][http://www.yunsee.cn/finger.html]
[whatweb][https://whatweb.net/] [http://whatweb.bugscaner.com/]
3真实IP查询
在渗透测试过程中,目标服务器可能只有一个域名,那么如何通过这个域名来确定目标服务器的真实IP对渗透测试来说就很重要。如果目标服务器不存在CDN
可以同通过以下地址进行查询,也可以通过nslookup等获取IP及域名信息。
http://www.ip138.com/
假如目标存在CDN服务器呢?我们需要找到目标真实的服务器的IP。
1.什么是CDN
CDN就是内容分发网络,主要解决因传输距离和不同运营商节点造成的网络速度性能低下的问题。说的简单点,就是一组在不同运营商之间的对接节点上的高速缓存服务器,把用户经常访问的静态数据资源(html、css、js图片、视频、声音等文件)直接缓存到节点服务器上,当用户再次请求时,会直接分发到离用户近的节点服务器响应给用户,当用户又实际数据交互时才会从远程Web服务器上响应,这样可以大大提高网站的响应速度及用户体验。
如果目标网站有CDN服务器,ping域名不一定获取到目标真正的Web服务器,只是离我们最近的节点上的CDN,这样导致我们无法得到目标的真实IP段范围。
2.CDN判断
·ping某个 URL:
C:\\Users\\86135>pinghttp://www.baidu.com
正在 Pinghttp://www.a.shifen.com[14.215.177.39] 具有 32 字节的数据:
来自 14.215.177.39 的回复: 字节=32 时间=32ms TTL=1
但显然,这里的 IP 是 CDN 的 IP。
·我们可以使用多地ping工具来判断:
利用在线网站17CE进行全国多地区的ping服务器操作,然后对比每个地区ping出的ip结果,查看这些ip是否一致,如果都是一样的,极有可能不存在CDN。如果ip大多不太一样或者规律性很强,可以尝试查询这些ip的归属地,判断是否存在CDN
·使用nslookup 进行检测,原理同上,如果返回域名解析对应多个IP地址多半是使用了CDN。
(经验:,如果是2个或者3个,并且这几个地址是同一地区的不同运营商的话,则很有可能这几个地址是服务器的出口地址,该服务器在内网中,通过不同运营商NAT映射供互联网访问,同时采用几个不同的运营商可以负载均衡和热备份。如果是多个ip地址,并且这些ip地址分布在不同地区的话,则基本上可以断定就是采用了CDN了。)
1.有 CDN 的示例:
nslookuphttp://www.163.com
名称:http://163.xdwscache.ourglb0.com
Addresses: 58.223.164.86
125.75.32.252
2.无 CDN 的示例:
nslookuphttp://xiaix.me
Address: 192.3.168.172
0.0.0.0 255.255.255.255
·使用各种在线工具帮助检测目标网站是否使用了CDN
http://www.cdnplanet.com/tools/cdnfinder/
http://www.ipip.net/ip.html
3.绕过CDN
·查询子域:
许多情况下只有主站使了CDN,二级站点并没有,所以我们就可以直接查询分站的IP。分站的搜索方法见下文。也可以用我们可以使用搜索引擎输入site:http://baidu.com或者inurl:http://baidu.com来搜索http://baidu.com的子域名
·国外访问
1.国内部分 CDN 服务只针对国内,对国外的访问几乎不使用 CDN。所以我们可以通过国外冷门 DNS 查询域名。比如,nslookuphttp://xxx.com199.89.126.10
C:\\Users\\asus\\Desktop> nslookuphttp://hi-ourlife.com199.89.126.10
名称:http://hi-ourlife.com
Address: 45.64.65.85
2.国外代理网站App Synthetic Monitor(https://asm.ca.com/en/ping.php)
·历史解析记录
CDN 的 IP 地址之前所用的 IP 就是真实 IP。
https://toolbar.netcraft.com/site_report?url=www.baidu.com
·查询邮件
很多服务器自带邮件发送功能,可以利用它来获取真实 IP。让站点主动发送邮件,然后右键查询源代码,就能获得真实 IP。
·抓取App的请求
如果目标网络站有自己的App 可以尝试通过利用fiddler或Burp Suite抓取App的请求,从里面找到目标的真实ip
4验证IP
我们找到目标真实IP之后,如何验证其真实性呢?
1. 直接IP地址访问,看响应的页面是不是和访问的域名返回一样;
2. 目标段比较大的情况下,借助类似Masscan的工具批扫描对应IP段中所有开放了80、443、8080端口IP,然后逐个尝试ip访问,观察相应是否为目标站点。
5整站分析
·服务器类型(Linux/Windows)
服务器信息包括服务器用的操作系统:Linux 还是 Windows 。现在企业网站服务器的操作系统有百分之九十以上用的是Linux操作系统。知道了服务器的操作系统之后,还需要知道操作系统使用的具体版本。因为很多低版本的操作系统都存在已知的漏洞。
1.判断是Linux还是Windows最简单就是通过ping来探测,Windows的TTL值都是一般是128,Linux则是64。所以大于100的肯定是Windows,而几十的肯定是Linux。
2.Windows大小写不敏感,Linux大小写敏感。
如http://www.xxxx.com/index.php和http://www.xxxx.com/index.phP打开的一样就说明是Windows
而判断目标网站服务器的具体的版本的话,可以采用 nmap 进行扫描, -O 和 -A 参数都能扫描出来。
·网站容器(Apache/Nginx/Tomcat/IIS)
知道了这些信息之后,我们就需要知道网站用的web服务器是什么类型的:Apache、Nginx、Tomcat 还是 IIS。知道了web服务器是哪种类型后,我们还要探测web服务器具体的版本。比如Ngnix版本>k8旁站、御剑1.5
端口>>活动:慈云数据爆款香港服务器,CTG+CN2高速带宽、快速稳定、平均延迟10+ms 速度快,免备案,每月仅需19元!! 点击查看portscan
11 主机扫描及端口信息(请参考:)
在渗透测试中,对端口信息的收集是一个很重要的过程,通过扫描服务器开放的端口以及从该端口判断服务器上存在的服务,就可以对症下药,便于我们渗透目标服务器。
所以在端口渗透信息的收集过程中,我们需要关注常见应用的默认端口和在端口上运行的服务。最常见的扫描工具就是NMAP、无状态端口扫描工具Masscan、ZMap和御剑高速TCP端口扫描工具。
常见的端口及其说明,以及攻击方法汇总:
·文件共享服务端口
·远程连接服务端口
·Web应用服务端口
·数据库服务端口
·邮件服务端口
·网络常见协议端口
·特殊服务端口号
以上就是“渗透测试信息收集的方法是什么”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注服务器测评网行业资讯频道。
还没有评论,来说两句吧...