文章目录

  • 前言:
  • 一、域名信息收集:
    • 1、Whois查询:
    • 2、备案信息查询:
  • 二、敏感信息收集:
    • 1、Google Hacking语法:
    • 2、FOFA网络安全空间搜索:
    • 3、Github信息泄露:
  • 三、子域名收集:
    • 1、子域名检测工具:
    • 2、利用搜索引擎发现子域:
    • 3、通过在线工具搜集:
  • 四、端口探测:
    • 1、Nmap:
    • 2、Masscan扫描工具:
    • 3、在线网站:
    • 常见的端口及其说明:
  • 五、CMS指纹识别:
    • 1、在线网站:
    • 2、指纹识别工具:
    • 3、CMS漏洞查询:
  • 六、查找真实IP:
    • 1、什么是CDN:
    • 2、如何判断目标服务器使用了CDN:
    • 3、如何寻找真实IP:
  • 七、敏感目录/文件收集:
    • 1、dirsearch:
    • 2、御剑后台扫描:
  • 八、社会工程学:
  • 最后:

前言:

信息收集是进行渗透测试的第一步,也是非常重要的一步。正所谓 “知己知彼,方能百战不殆”,因此在这个阶段,我们要尽可能地收集目标组织的信息。

关于信息收集的重要性我在这学期的护网行动中深有体会,一开始找不到目标资产,一度以为没有资产信息,后来转变了思路才发现原来资产有这么多。因此通过篇文章来系统的总结下信息收集的大致内容和常用方法,话不多说,开干。 (ง •_•)ง

一、域名信息收集:

首先,在得到一个目标的域名后,我们要做的第一件事就是去获取域名的注册信息,即该域名的DNS服务器信息和注册人的个人信息等。

域名信息收集的常用方法有以下几种:

1、Whois查询:

Whois是一个标准的互联网协议,可用于查询域名是否被注册,以及注册域名的详细信息(如域名所有人、域名注册商等)。通过Whois查询得到注册人的姓名和邮箱信息对测试个人站点非常有用,因为我们可以通过搜索引擎和社交网络挖掘出域名所有人的很多信息。对中小站点而言,域名所有人很可能就是管理员。

使用方法

1、通过在线网站:

站长之家:https://whois.chinaz.com/

阿里云域名信息查询:https://whois.aliyun.com


2、通过kali自带的whois查询工具:

也可以在windows下安装使用 下载链接,安装方法可以参考这篇文章:链接,安装完成后使用方法和kali的一样。

2、备案信息查询:

网站备案是根据国家法律法规规定,需要网站的所有者向国家有关部门申请的备案,这是国家信息产业部对网站的一种管理,为了防止在网上从事非法的网站经营活动的发生。主要针对国内网站,如果网站搭建在其他国家,则不需要进行备案。

常用的查询网站有:

ICP备案查询:http://icp.chinaz.com/

天眼查:https://beian.tianyancha.com/

二、敏感信息收集:

面对某些安全做得很好的目标,直接通过技术层面很难完成渗透测试。在这种情况下,可以利用搜索引擎对目标暴露在互联网上的关联信息进行搜集。例如:数据库文件、SQL注入、服务配置信息,甚至是通过Git找到站点泄露源代码,以及Redis等未授权访问、Robots.txt等敏感信息,从而达到渗透目的。

收集敏感信息的常用方法:

1、Google Hacking语法:

Google Hack是指使用Google、百度等搜索引擎对某些特定网站主机漏洞(通常是服务器上的脚本漏洞)进行搜索,以达到快速找到漏洞主机或特定主机的漏洞的目的。

对于普通的用户而言,Google只是一款强大的搜索引擎,而对于渗透人员而言,它可能是一款绝佳的黑客工具。正因为Google的检索能力强大,我们可以构造特殊的关键字语法来搜索互联网上的的相关敏感信息。

常用语法

Site:找到与指定网站有联系的URL。例如输入“Site:family.chinaok.com”。所有和这个网站有联系的URL都会被显示。Intitle:搜索网页标题中包含有特定字符的网页。例如输入“intitle: cbi”,这样网页标题中带有cbi的网页都会被搜索出来。Inurl:搜索包含有特定字符的URL。例如输入“inurl:cbi”,则可以找到带有cbi字符的URL。Intext:搜索网页正文内容中的指定字符,例如输入“intext:cbi”。这个语法类似我们平时在某些网站中使用的“文章内容搜索”功能。Filetype:搜索指定类型的文件。例如输入“filetype:cbi”,将返回所有以cbi结尾的文件URL。

这些就是Google的常用语法,也是Google Hack的必用语法。虽然这只是Google语法中很小的部分,但是合理使用这些语法将产生意想不到的效果。

例:当我们想获取一些政府网站的后台页面时,可通过构关键字 site:gov.cn intext:后台管理来实现搜集,意思是搜索网页正文中含有“后台管理”并且域名后缀是 gov.cn的网站。

可以看到利用Google Hacking语法搜索,可以很高效地得到我们想要的信息,还可以用它来收集数据库文件、SQL注入、配置信息、源代码泄露、未授权访问和robots.txt等敏感信息。(更详细的Google Hacking语法介绍可以看这篇文章:传送门)

接下来介绍另一款资产信息搜集神器:fofa

2、FOFA网络安全空间搜索:

链接:https://fofa.so/

FOFA网络安全空间搜索 是专为渗透人员设计的一款搜索引擎,其相对于Google 的知名度相对低了一些,但是对于渗透人员这是款信息收集的神器。用途大致和Google一样,就不多介绍了。

来简单说下其查询语法:


官方上给的很清楚,这里简单演示下如何使用:

需要注意,在fofa中,多条件查询是用&&||来连接的,什么意思就不解释了。

例:查找一些后台管理且地点在杭州的资产信息:构造语法:title ="后台管理"&&city="Hangzhou

还可以查找指定开放的端口网站,例:查找开放了3389 端口的后台管理系统:port="3389"&&title="后台管理"

篇幅有限,更多骚操作可以看这篇文章:https://www.anquanke.com/post/id/84865

3、Github信息泄露:


GitHub作为一款应用最广的开源代码平台,给程序员提供了很多便利,但如果使用不当,比如将包含了账号密码、密钥等配置文件的代码上传了,导致攻击者能发现并进一步利用这些泄露的信息,就是一个典型的GitHub敏感信息泄露漏洞,再如开发人员在开发时,常常会先把源码提交到github,最后再从远程托管网站把源码pull到服务器的web目录下,如果忘记把.git文件删除,就造成此漏洞。利用.git文件恢复网站的源码,而源码里可能会有数据库的信息。

很多网站及系统都会使用pop3和smtp发送来邮件,不少开发者由于安全意识不足会把相关的配置文件信息也放到Github上,这时配合我们的Google搜索语法,就能把这些敏感信息给找出来了。

site:Github.com smtp
site:Github.com smtp @qq.com
site:Github.com smtp @126.com
site:Github.com smtp @163.com
site:Github.com smtp @sina.com.cn

例:


可以看到,很容易就能得到这些敏感数据信息。

获取数据库信息泄露:

site:Github.com sa password
site:Github.com root password

三、子域名收集:

子域名也就是二级,是指顶级域名下的域名。如果目标的网络规模比较大,直接从主域入手显然是很不理智的,因为一般其主域都是重点防护区域,这种情况下可以选择“曲线渗透”,即先进入目标的某个子域,然后再想办法迂回接近真正的目标。

搜集目标子域常用的方法有以下这几种:

1、子域名检测工具:

Layer子域名挖掘机:

  • Layer子域名挖掘机使用很简单,直接输入域名就可以进行扫描,它的显示界面也很全面,有域名、解析IP、Web服务器和网站状态,使用起来非常方便,强推这个工具!


subDomainsBrute: