一、DNS解析详细步骤
主机先于本地域名服务器进行递归查询,如果本地域名服务器缓存中没有ip地址,则本地域名服务器将以客服的身份进行访问,与其他的服务器是迭代查询,具体步骤如下:
①客户机向其本地域名服务器发出DNS请求报文。
②本地域名服务器收到请求后,查询本地缓存,若没有该记录,则以DNS客户的身份向根域名服务器发出解析请求。
③根域名服务器收到请求后,判断该域名属于.com域,将对应的顶级域名服务器dns.com的IP地址返回给本地域名服务器。
④本地域名服务器向顶级域名服务器dns.com发出解析请求报文。
⑤顶级域名服务器dns.com收到请求后,判断该域名属于abc.com域,因此将对应的授权域名服务器dns.abc.com的IP地址返回给本地域名服务器。
⑥本地域名服务器向授权域名服务器dns.abc.com发起解析请求报文。
⑦授权域名服务器dns.abc.com收到请求后,将查询结果返回给本地域名服务器。
⑧本地域名服务器将查询结果保存到本地缓存,同时返回给客户机。
二、子域名信息收集常用手段
1. 证书透明度查询
证书透明度查询网站:如crt.sh、Censys、SSLmate、Facebook CT等,由于许多企业域名使用HTTPS协议,TLS证书中通常包含域名信息,可以通过查询证书透明度来收集子域名。
2. 在线子域名查询网站
子域名查询网站:如SecurityTrails、IP138、Chinaz、dnsscan.cn等,输入域名即可获取子域名列表。
3. 威胁情报平台
威胁情报平台:
威胁情报 VirusTotal 在线查杀平台 https://www.virustotal.com/gui/
威胁情报 VenusEye 威胁情报中心 https://www.venuseye.com.cn/
威胁情报 绿盟科技 威胁情报云 https://ti.nsfocus.com/
威胁情报 IBM 情报中心 https://exchange.xforce.ibmcloud.com/
威胁情报 天际友盟安全智能平台 https://redqueen.tj-un.com/IntelHome.html
威胁情报 华为安全中心平台 https://isecurity.huawei.com/sec/web/intelligencePortal.do
威胁情报 安恒威胁情报中心 https://ti.dbappsecurity.com.cn/
威胁情报 AlienVault https://otx.alienvault.com/
威胁情报 深信服 https://sec.sangfor.com.cn/analysis-platform
威胁情报 丁爸情报分析师的工具箱 http://dingba.top/
威胁情报 听风者情报源 start.me https://start.me/p/X20Apn
威胁情报 GreyNoise Visualizer https://viz.greynoise.io/
威胁情报 URLhaus 数据库 https://urlhaus.abuse.ch/browse/
威胁情报 Pithus https://beta.pithus.org/
通过这些平台可以收集到目标组织的子域名信息。
4. 搜索引擎
搜索引擎语法:使用Google等搜索引擎,结合site:语法(如site:example.com)来限制搜索结果,从而获取子域名信息。
5. 爬虫爬取
爬虫技术:通过编写爬虫程序,爬取目标网站的所有页面、robots.txt文件、crossdomain.xml文件、sitemap文件等,从中筛选出子域名。
6. 自动化工具
自动化工具:如Subfinder、OneForAll、Layer子域名挖掘机等,这些工具通过多个API和字典枚举的方式自动化收集子域名。
7. DNS历史记录查询
DNS历史记录查询服务:如SecurityTrails、DNSdumpster.com、WhoisXML、PassiveTotal等,通过查询过去DNS解析记录的服务,可以查找目标组织过去使用过的子域名
三、绕过CDN查找主机真实IP的方法
1.历史DNS记录查询: 在网站启用CDN之前,其DNS记录可能指向真实IP。通过查询历史DNS记录,有时可以发现原始IP。
2.子域名检查: 由于目标服务可能在主站上做好了相应的CDN,但是由于种种原因例如部署费用过高,或者对二级域名不上心等,所以导致二级域名没有部署到CDN,这时我们可以从这个方面入手进行查询。利用子域名搜集工具等搜集到足够的子域名后,便可以对通过子域名进行真实IP的搜集。
3. 网站邮件头信息
比如说,邮箱注册,邮箱找回密码、RSS邮件订阅等功能场景,通过网站给自己发送邮件,从而让目标主动暴露他们的真实的IP,查看邮件头信息,获取到网站的真实IP。
4. 通过 SSL 证书
证书颁发机构 (CA) 必须将他们发布的每个 SSL/TLS 证书发布到公共日志中,SSL/TLS 证书通常包含域名、子域名和电子邮件地址。因此可以利用 SSL/TLS 证书来发现目标站点的真实 IP 地址。
CDN 运营商在给服务器提供保护的同时,也会与其服务器进行加密通信(ssl),这时当服务器的 443 端口接入域名时也会在 443 端口暴露其证书,我们通过证书比对便可发现网站的真实 IP 地址。
SSL证书搜索引擎:
https://censys.io/ipv4?q=github.com
5.国外主机解析域名
大部分 CDN 厂商因为各种原因只做了国内的线路,而针对国外的线路可能几乎没有,此时我们使用国外的DNS查询,很可能获取到真实IP。
国外多PING测试工具:
https://asm.ca.com/zh_cn/ping.php
http://host-tracker.com/
http://www.webpagetest.org/
https://dnscheck.pingdom.com/
6. 扫描全网
通过Zmap、masscan等工具对整个互联网发起扫描,针对扫描结果进行关键字查找,获取网站真实IP。
https://github.com/zmap/zmap
https://github.com/robertdavidgraham/masscan
四、Nmap全端口扫描
五、dirmap目录探测工具
dirmap为什么每次扫描的条数都不一样:
扫描策略调整:用户可能根据上次扫描结果调整了扫描策略,如增加了对某些特定目录的扫描,从而影响了扫描条数。
网络条件: 网络连接质量的变化可能导致某些请求在一次扫描中成功,而在另一次扫描中失败。
随机性: dirmap 可能在内部使用了一些随机化策略来避免被检测为自动化工具。
六、信息泄露分类及其利用
1、常见的信息泄露漏洞类型
1.1服务器标识版本
服务器标识版本能够揭示服务器上运行的特定软件及其版本,这可以被用来寻找已知漏洞。
1.2错误信息
详细的错误信息可以提供有关服务器的配置、目录结构甚至使用的技术线索,这些信息都可以被攻击者利用。
1.3源代码泄露
直接访问应用程序的源代码,可能暴露代码中的漏洞、硬编码的凭证以及其他敏感信息。
1.4配置文件泄露
配置不当的服务器可能会暴露配置文件,这些文件包含敏感信息,如数据库凭证、API密钥和系统设置。
1.5目录列表
不受限制的目录列表可以揭示网站目录和文件的结构,可能暴露敏感信息或可利用的文件。
1.6备份文件和旧版本
发现备份文件或网站的旧版本,可以让攻击者获得过时的软件版本或配置,而这些旧版本可能存在已知的漏洞。
1.7HTML/JavaScript注释
在HTML或JavaScript 文件中留下的注释,可能会无意中泄露敏感信息或调试细节,这些信息对于攻击者来说非常有用。
1.8Api响应
Api响应包含不必要的数据,可能会泄露内部服务器细节、数据库结构或其他敏感信息。
1.9URL中的敏感信息
将会话令牌、用户名或其他敏感数据包含在URL中,这些信息可能会被拦截利用。
1.10第三方服务
与第三方服务的集成,如果不进行适当的保护或配置,也可能导致信息泄露。
2.利用
2.1 可以根据账号,猜测默认密码,进入系统上传文件,getshell,等等操作对系统进行信息收集,获取其它信息进一步渗透。
2.2利用泄露的数据库结构信息进行 SQL 注入攻击或其他数据库攻击。
2.3分析代码逻辑,寻找可能存在的安全漏洞,如权限绕过漏洞、逻辑缺陷等,并利用这些漏洞获取非法访问权限。
2.4利用与第三方服务的集成点,进行跨站请求伪造(CSRF)攻击或其他攻击,以影响目标系统的安全性。