重邮实训第二次作业

1、DNS解析详细步骤

假定某客户机想获知域名为xxx.xyk.com主机的IP地址,域名解析的过程(共使用8个UDP报文)如下:

①客户机向其本地域名服务器发出DNS请求报文

②本地域名服务器收到请求后,查询本地缓存,若没有该记录,则以DNS客户的身份向根域名服务器发出解析请求

③根域名服务器收到请求后,判断该域名属于.com域,将对应的顶级域名服务器dns.com的IP地址返回给本地域名服务器
④本地域名服务器向顶级域名服务器dns.com发出解析请求报文

⑤顶级域名服务器dns.com收到请求后,判断该域名属于xyk.com域,因此将对应的授权域名服务器dns.xyk.com的IP地址返回给本地域名服务器

⑥本地域名服务器向授权域名服务器dns.xyk.com发起解析请求报文

⑦授权域名服务器dns.xyk.com收到请求后,将查询结果返回给本地域名服务器

⑧本地域名服务器将查询结果保存到本地缓存,同时返回给客户机
                        

(原文链接:https://blog.csdn.net/2201_75444658/article/details/140272157)

2、绕过CDN查找主机真实IP的方法

绕过CDN寻找真实IP

方法1: 查询历史DNS记录

查看 IP 与 域名绑定的历史记录,可能会存在使用 CDN 前的记录,相关查询网站有:
https://dnsdb.io/zh-cn/ ###DNS查询
https://x.threatbook.cn/ ###微步在线
http://toolbar.netcraft.com/site_report?url= ###在线域名信息查询
http://viewdns.info/ ###DNS、IP等查询
https://tools.ipip.net/cdn.php ###CDN查询IP

方法2: 子域名查询

由于目标服务可能在主站上做好了相应的CDN,但是由于种种原因例如部署费用过高,或者对二级域名不上心等,所以导致二级域名没有部署到CDN,这时我们可以从这个方面入手进行查询。利用子域名搜集工具等搜集到足够的子域名后,便可以对通过子域名进行真实IP的搜集。
(原文链接:https://blog.csdn.net/ewii12567/article/details/141459466)

3、子域名信息收集常用手段

收集方法

1. 查找目标主域名

  • 搜索引擎:通过百度、谷歌等搜索引擎直接搜索目标组织的名称,通常可以直接找到其官网,进而获取主域名。

2. 查找目标所有关联域名

2.1 备案查询

2.2 企业关系查询

  • 企业信息查询平台:如天眼查、爱企查、企查查等,通过查看股权穿透图来查找子公司,并收集其子公司的域名。

2.3 Whois反查关联域名

  • Whois查询网站:如Whois.chinaz.com,通过同一公司的域名可能使用同一邮箱注册的信息进行反查。

2.4 官网等方式查关联域名

  • 官网架构图:目标企业的官网有时会列出子公司的介绍和官网链接,通过这些信息可以直接获取子域名。

3. 收集子域名

3.1 证书透明度查询

  • 证书透明度查询网站:如crt.shCensysSSLmateFacebook CT等,由于许多企业域名使用HTTPS协议,TLS证书中通常包含域名信息,可以通过查询证书透明度来收集子域名。

3.3 威胁情报平台

3.4 搜索引擎

  • 搜索引擎语法:使用Google等搜索引擎,结合site:语法(如site:example.com)来限制搜索结果,从而获取子域名信息。

3.5 爬虫爬取

  • 爬虫技术:通过编写爬虫程序,爬取目标网站的所有页面、robots.txt文件、crossdomain.xml文件、sitemap文件等,从中筛选出子域名。

3.6 DNS记录查询

  • 工具如nslookup:使用nslookup等工具查询域名的SRV、NS、MX、TXT等记录,以收集子域名信息。但这种方法收集的域名有限。

3.7 自动化工具

3.8 DNS历史记录查询

  • DNS历史记录查询服务:如SecurityTrails、http://DNSdumpster.com、WhoisXML、PassiveTotal等,通过查询过去DNS解析记录的服务,可以查找目标组织过去使用过的子域名。这种方法有时能发现已被删除但仍解析到目标组织的子域名。

  • 3.9 从JS文件发现子域名
  • JS文件分析:许多网站在JS文件中会包含子域名的信息,通过分析JS文件可以挖掘出子域名。可以使用专门的脚本或工具(如JSFinder)来自动化这一过程。
  • 3.10 子域名爆破
  • 子域名爆破工具:使用如Sublist3r、Amass、Subfinder、Assetfinder等工具,通过字典或其他方法生成可能的子域名列表,并对列表中的每个子域名进行DNS解析以确定其是否存在。
  • 工具推荐
  • Subfinder:集成了多个API接口进行自动化搜索子域名信息,收集速度快。
  • OneForAll:功能强大的子域收集工具,支持多种搜索方式。
  • Layer子域名挖掘机:扫描结果依赖于字典的强大性,适合使用自定义字典进行深度挖掘
  • Sublist3r:简单易用的子域名枚举工具,支持多线程枚举。
  • KSubdomain:无状态子域名爆破工具,支持高并发DNS爆破,速度快。
  • 批量处理
  • 对于有大量域名需要查找子域名的情况,可以通过请求API接口或使用高效的爆破工具(如KSubdomain)进行处理。但需要注意控制请求频率,频率过高会被判定为ddos攻击!

(原文链接:信息收集之子域名收集技巧总结 - 知乎 (zhihu.com)

4、Nmap全端口扫描

Nmap全端口扫描

启动环境

启动zenmap,确定扫描的目标后进行扫描

SYN半开扫描的原理

SYN扫描又称“半开扫描”。回顾TCP连接的三次握手,申请方首先发送的是一个SYN数据包,服务方在接到这个SYN数据包后,如果该端口处于侦听状态,则会回复一个SYN|ACK的数据包;如果该端口没有处于侦听状态,则会回复一个RST的数据包。而此时如果对方处于侦听状态,申请方还需要再向对方回复一个ACK数据包以示建立连接。此时对方就认为连接建立,并记入日志。

无论服务方回复SYN|ACK的数据包,还是回复RST的数据包,申请方其实已经能够判断对方端口是否为“开”的状态。之后的ACK数据包发送则被对方监视,如果此时不发送ACK数据包,而是发一个RST数据包,则不仅关闭了这个未完成的连接过程,并且也会因为连接未建立而不会被对方记录。这种扫描方式因为使用了SYN标志位,所以被称为TCP SYN扫描。这种扫描技术的优点在于一般不会在目标计算机上留下记录,有时即使在用netstat命令也显示不出来;但这种方法的一个缺点是必须要有管理员权限才能建立自己的SYN数据包。
(原文链接:https://blog.csdn.net/rqaz123/article/details/123105174)

跳过主机存活检测扫描使用场景

在进行网络扫描时,通常需要先确认目标主机是否存活,然后再进行端口扫描。然而,在某些情况下,如果已经知道目标主机是存活的,或者为了加快扫描速度,可以选择跳过主机存活检测直接进行端口扫描。这通常通过特定的Nmap参数来实现,如-Pn(不能ping,跳过主机发现)。

跳过主机存活检测扫描的常见使用场景包括:

已知目标存活:当已经通过其他方式(如手动确认、DNS解析等)确认目标主机存活时,可以直接跳过存活检测,节省扫描时间。

大规模扫描:在进行大规模网络扫描时,跳过主机存活检测可以显著提高扫描效率,尽管这可能会增加扫描过程中的误报率(即错误地将不存在的主机视为存活主机)。

绕过防火墙限制:某些情况下,防火墙可能会阻止ICMP Echo请求(即ping命令),导致无法通过常规方式确认主机存活。此时,跳过存活检测可以绕过这一限制,直接对目标主机进行端口扫描。
(原文链接:https://blog.csdn.net/qq_69302412/article/details/141612049)

5、dirmap目录探测工具实践

扫描结果

每次扫描不一样的原因:


动态内容:网站的内容和服务可能随着时间动态变化,比如新页面或目录的添加、旧页面的删除或移动等。这些变化会直接影响Dirmap扫描时能够发现的条数。

负载与响应:网站在不同时间段的负载情况也会影响扫描结果。如果网站在扫描时负载较高,响应速度可能变慢,甚至某些页面或目录无法及时响应,导致扫描条数减少。

6、信息泄露分类及利用方式总结

一、常见的信息泄露漏洞类型

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第三方服务:与第三方服务的集成,如果不进行适当的保护或配置,也可能导致信息泄露。

二、OSINT 工具&方法

2.1Whatweb

Whatweb是一款用于识别网站的工具,它通过纰漏服务器信息(包括版本、IP地址、网页标题和运行的操作系统)来帮助我们获取Web应用程序的banner。

whatweb <website URL>

图片

2.1 cURL

cURL命令包含从HTTP服务器获取banner信息的功能。

curl -s -I <website URL>

2.3Nmap

Nmap也可以作为简单的banner抓取工具。它会连接到一个开放的TCP端口,并在几秒内打印出监听服务发送的任何信息。

输入以下命令,它将抓取远程主机22端口上运行的SSH服务的banner。

nmap -sV -p22 "IP"

-sV参数输出运行服务器的版本。

2.4 检查网页头部信息

HTTP/1.1 302 Found

Cache-Control: private, must-revalidate

Connection: keep-alive Date: Mon, 19 Oct 2015 14:28:01 GMT Server: nginx/1.8.0

头部信息经常泄露服务器版本,这是由于配置不当造成的。

2.5 检查错误信息

你可以请求一个不存在的页面,看看返回的消息,它可能泄露服务器版本。

图片

2.6源代码泄露

获取应用程序的源代码可能会暴露代码中的漏洞,硬编码的凭证和其他敏感信息。以下是一些用于识别和缓解此问题的方法和示例。

2.7监测源代码泄露的方法

搜索引擎(Google Hacking):使用特定的搜索查询(dork)来查找暴露的源代码文件。

URL 操纵:检查修改URL是否能暴露源代码文件。

目录遍历:测试是否存在访问源代码文件的目录遍历漏洞。

备份和旧版本:搜索备份文件或网站的旧版本

误配置的代码仓库:寻找暴露的Git或SVN代码仓库。

2.8源代码泄露示例

  1. Git 代码库暴露: 攻击者访问https://example.com/.git/并下载整个代码库,从而泄露源代码和提交历史记录,其中可能包含敏感信息。

  2. 暴露的配置文件: 服务器配置从无,允许访问 https://example.com/config.php ,该文件包含数据库凭证、API密钥和其他敏感配置信息。

  3. 备份文件下载: 攻击者通过目录遍历或URL猜测等方式找到https://example.com/backup.zip,并下载该备份文件,其中可能包含整个网站的源代码和敏感数据。

  4. 环境变量泄露: 访问 https://example.com/.env 会泄露环境变量,例如数据库连接字符串、密钥等应用程序使用的敏感信息。

本文转载自:

https://github.com/owl234/Awesome-SRC-experience/tree/main

7、浏览器插件安装

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值