DNS解析

nslookup

nslookup命令用于查询DNS的记录,查看域名解析是否正常。

Windows和Kali Linux均内置

示例

1
nslookup baidu.com

dig

Dig是一个在类Unix命令行模式下查询DNS包括NS记录,A记录,MX记录等相关信息的工具。

Kali Linux内置工具

示例

1
2
3
4
dig baidu.com			#显示域名记录
dig 114.114.114.114 #通过ip地址反查DNS域名
dig txt chaos VERSION.BIND @ns.dnsv4.com #查询DNS服务器的bind信息
dig @dns.xxx.edu.cn axfr xxx.edu.cn #查询是否存在DNS区域传输

dnsenum

一款用于收集 dns 信息的工具,这款工具通过字典爆破、搜索引擎、whois 查询、区域传输等手段用于获取域名背后的 dns 信息。

Kali Linux内置工具

示例

1
dnsenum baidu.com     

dnswalk

利用DNS区域传输技术来获取DNS对应域名A记录。可以用来检验区域传输漏洞。

注意:使用时要在域名后面加一个点。

Kali Linux内置工具

示例

1
dnswalk baidu.com.

扩展:DNS区域传输漏洞

DNS区域传输(DNS zone transfer)指的是一台备用服务器使用来自主服务器的数据刷新自己的域(zone)数据库。这为运行中的DNS服务提供了一定的冗余度,其目的是为了防止主的域名服务器因意外故障变得不可用时影响到整个域名的解析。一般来说,DNS区域传输操作只在网络里真的有备用域名DNS服务器时才有必要用到,但许多DNS服务器却被错误地配置成只要有client发出请求,就会向对方提供一个zone数据库的详细信息,所以说允许不受信任的因特网用户执行DNS区域传输(zone transfer)操作是后果最为严重的错误配置之一。

区域传输漏洞的危害:黑客可以快速的判定出某个特定zone的所有主机,收集域信息,选择攻击目标,找出未使用的IP地址,黑客可以绕过基于网络的访问控制。

DNS在线查询

https://dnsdumpster.com

https://www.nslookup.io/

http://tool.chinaz.com/dns/

https://dnslytics.com/

Whois与ICP备案

Whois查询

Whois是用来查询域名的IP以及所有者等信息的传输协议。简单说,whois就是一个用来查询域名是否已经被注册,以及注册域名的详细信息的数据库(如域名所有人、域名注册商)。通过whois来实现对域名信息的查询。早期的whois查询多以命令列接口存在,但是现在出现了一些网页接口简化的线上查询工具,可以一次向不同的数据库查询。网页接口的查询工具仍然依赖whois协议向服务器发送查询请求,命令列接口的工具仍然被系统管理员广泛使用。whois通常使用TCP协议43端口。每个域名/IP的whois信息由对应的管理机构保存。

Web接口查询

http://whois.aliyun.com

http://www.whois365.com/cn/

http://whois.chianz.com/

http://whois.aizhan.com/

Whois命令查询

Kali linux自带whois查询工具

1
whois baidu.com

ICP备案

ICP,Internet Content Provider,中文全称:网络内容提供商。ICP可以理解为向广大用户提供互联网信息业务和增值业务的电信运营商,是经国家主管部门批准的正式运营企业或部门。

《互联网信息服务管理办法》指出互联网信息服务分为经营性和非经营性两类。国家对经营性互联网信息服务实行许可制度;对非经营性互联网信息服务实行备案制度。未取得许可或者未履行备案手续的,不得从事互联网信息服务。

ICP备案查询方法:

http://www.beianbeian.com/ (ICP备案查询网)

http://www.beian.miit.gov.cn/publish/query/indexFirst.action (工业和信息化部)

https://www.tianyancha.com/ (天眼查)

http://icp.chinaz.com (站长工具)

http://cha.fute.com/index (域名助手备案信息查询)

IP反查域名

https://site.ip138.com/

AS号码查询

自治系统(Autonomous System)是指使用统一内部路由协议的一组网络。 如果成员单位的网络路由器准备采用EGP(Exterior Gateway Protocol) BGP(Border Gateway Protocol)或 IDRP(OSI Inter-Domain Routing Protocol)协议,可以申请AS号码。 一般如果该单位的网络规模比较大或者将来会发展成较大规模的网络, 而且有多个出口,建议建立成一个自治系统,这样就需要AS号码。 如果网络规模较小,或者规模较为固定,而且只有一个出口, 可采用静态路由或其它路由协议,这样就不需要AS号码。

在线查询

https://bgp.he.net/

Nmap脚本查询

1
nmap --script targets-asn -cript-args targets-asn.asn=45062

可以先通过网站在线查询某公司的ASN,然后用Nmap脚本查询。

证书透明度

证书透明度(CT)日志按设计包含由参与CA为任何给定域颁发的所有证书。SSL/TLS证书一般包含域名、子域名和电子邮件地址。这些日志是公开可用的,任何人都能看到这些日志。这使它们成为攻击者的信息宝库。

常用的查询CT的网站:

https://crt.sh/

https://search.censys.io/certificates

https://transparencyreport.google.com/https/certificates

C段与旁注

当渗透网站不存在漏洞或无法以成功渗透的情况下,这时可以采用旁注或C段思路进行渗透。

  • C段:同网段不同服务器的渗透方案
  • 旁注:同服务器不同站点的渗透方案

常用Web工具

https://chapangzhan.com/

https://www.webscan.cc/

CDN的绕过

什么是CDN

CDN的全称Content Delivery Network,即内容分发网络。CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。但在安全测试过程中,若目标存在CDN服务,将会影响到后续的安全测试过程。

CDN的关键技术:内容存储和内容分发。

CDN

如何知道该站点是否存在CDN?

使用超级ping:http://ping.chinaz.com/

若存在多个响应ip,则说明存在CDN

如何绕过CDN获取真实ip

  • 利用子域名请求获取真实ip

    很多网站出于经济考虑,只对主站做CDN服务,可以从子域名入手获取真实ip

  • 利用国外地址请求获取真实ip

    一些站点由于服务对象基本在国内,或者成本原因,在国外一些地方没有CDN服务,如果用国外的服务器去请求站点域名,则会访问到站点的真实的IP地址。

    这里用到了一款全球ping扫描工具,热点越低的国家效果越好。

    IPIPtools:http://tools.ipip.net/cdn.php

  • 利用邮件服务器接口获取真实ip

    一般不会对内部邮箱服务器做CDN服务

    当你发邮件时,你可以通过邮件的源代码或者邮件头查看目标的真实IP

  • 利用空间测绘引擎特定文件获取真实ip

    如:查找ico图标文件:

    • shodan—— http.favicon.hash:xxxxx

    • fofa—— icon_hash=xxxxxx

  • 遗留文件

    如:phpinfo.php 会记录ip地址信息

    可以利用Google搜索引擎搜索关键字:inurl:phpinfo.php

  • APP流量抓包

    利用抓包工具对APP流量进行抓包分析

    如果是通过http协议的话,那么有可能发现web端的网站或是ip

  • 通过SSRF漏洞发起请求

    通过SSRF漏洞,使其来访问自己的外网服务器上的监听端口,由于是目标主机本身发起的http请求所以也请求自己的IP也是真实IP