信息收集 第一部分:被动信息收集 1、简介
在信息收集这块区域,我将其分为两部分:第一部分即被动信息收集,第二部分即主动信息收集。
对于标准的渗透测试人员来说,当明确目标做好规划之后首先应当进行的便是信息收集,那么在收集的过程中就需要考虑是否应该被目标发现。对于企业安全管理来说,他会无时无刻的监管着企业的服务器,保持企业的正常的运行,所以当如果企业的服务器出现异常访问、或者大量的信息请求等等不是正常的流量的情况下,企业的安全运维人员便会对访问者即使作出应急响应,比如:限制访问次数、拒绝响应请求、***IP等等。那么这无疑会增大渗透测试者的攻击难度,为了避免这种情况的发生,***的办法就是在此之前避免与之直接交互先收集足够的信息,不被目标发现,当我们无法再收集有用的信息之后,主动收集便是我们才要进行的步骤。
当然,在被动信息收集的时候,我们应当注意被动信息收集的三个基本要求:
公开渠道可获得的信息
与目标系统不产生直接交互
尽量避免留下一切痕迹
总之一句话,被动信息收集的过程中,保持最大的隐蔽性,防止目标发现,不予目标产生直接的交互,也可以理解为,在目标看来一切的收集过程都是正常的访问过程。
2、信息收集的内容 在这一阶段,信息收集的内容可能会很多,例如:
IP地址段、域名信息、邮件地址、文档图片数据、公司地址、公司组织架构、联系电话/传真号码、人员姓名/职务、目标系统使用的技术架构、公开的商业信息等等。
上面所说的内容,仅仅只是我们常用的一些内容,在这一阶段,针对目标所有的一些信息都可能成为我们利用的信息。有一点很重要,对于一个良好的渗透测试人员来说,没有什么信息是没有用处的,如果有,那就是可能漏了什么。
3、信息收集的用途 当我们收集到信息之后,我们的信息是很杂乱的,那么这就需要对这些信息做一些整理,例如:
域名查询到的信息为一类,具体到可为:
子域名
真实IP
...
各种搜索引擎查询到的信息为一类,如:
Google hacking
fofa
ZoomEye
shodan
DNS解析记录(whois)查询为一类,如:
域名所有者的姓名
联系人电话
邮箱地址
...
当然,实际情况并不是像上面一样一个一个列,一个一个记录,在真实的渗透测试信息收集环境中,一般不会是独自完成,那么这样收集的信息就会更乱,所以,很多时候都会用到信息统计工具,将我们所收集的信息分类录入上去,这样,团队信息收集完成后,这样的信息便会一目了然。
对我们来说,我们的目的是利用收集的信息,所以当对我们手中所掌握的信息有了一个足够的了解之后,我们就应该开始进行信息利用了,那么实际情况中信息利用的方向就很广,并不局限。
例如以下用途:
1、用信息描述目标:
这个目标的真实IP地址是什么,它具有的子域名有什么,曾经是否发生过信息威胁记录等等。
2、发现:
目标网站的技术框架是什么、哪个版本、目标时候具有防火墙或者CDN、C段查询、站点真实IP对应的开放端口有哪些,提供什么服务等等。
3、社会工程学攻击:
在一些DNS解析中,可能会收集到目标站点的注册者的相关信息,那么有了这些信息,通常就会利用邮件钓鱼等方式。
注:请在目标用户的许可和符合法律的情况之下进行,否则切勿操作。
4、物理缺口:
这种利用就不再是网络操作而已,更多的就是实地考察等。
4、二级域名或IP收集 1).DNS信息收集 dns信息收集的意义:dns信息中包含了很多对渗透人员来说有用的信息,这些信息能为接下来的渗透行为提供思路,比如攻击dns服务器、域名劫持、子域渗透等。对渗透目标进行dns信息的收集通常是被动的形式,不会对被渗透目标产生影响也不会在被渗透目标上留下任何痕迹。
dns需要收集的信息:
A记录:记录域名和服务器的对应关系
cname记录:别名记录,把一个域名解析到另一个域名
ns记录:记录解析该域名的dns服务器
mx记录:邮件交换记录,对应邮件服务器
txt记录:一般为验证记录
bind信息:域名服务器所使用的bind版本信息
这里说明两个工具:nslookup、dig、dnsenum
新版kali不再包含nslookup工具,需要使用如下命令:
apt-get install bind9-utils
利用nslookup[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-f2w9vIGH-1608609008243)()]
这里能看到域名解析之后的CName以及对应的IP地址,下面再举几个例子:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pjPXWvGf-1608609008250)()]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eSmCpGCP-1608609008252)()]