毕业实训-Day2

一、DNS解析详细步骤

1. 客户端请求

  • 用户在浏览器中输入一个域名,如www.example.com,并尝试访问该网站。

2. 检查本地缓存

  • 客户端(通常是用户的计算机或移动设备)首先会检查其本地缓存(包括浏览器缓存和操作系统缓存,如Windows的C:\Windows\System32\drivers\etc\hosts文件或Linux的/etc/hosts文件)中是否已经有该域名的解析记录。
    • 如果有,则直接使用缓存中的IP地址访问网站,解析过程结束。
    • 如果没有,则继续下一步。

3. 查询本地DNS服务器

  • 客户端将域名解析请求发送给本地网络中的DNS服务器(通常由互联网服务提供商ISP提供)。
    • 本地DNS服务器也会检查其缓存中是否有该域名的解析记录。
    • 如果有,则直接将IP地址返回给客户端。
    • 如果没有,则继续向上查询。

4. 查询根域名服务器

  • 如果本地DNS服务器无法解析该域名,它会向根域名服务器发送查询请求。
    • 根域名服务器是DNS系统的顶级服务器,负责管理所有顶级域名(如.com、.net、.org等)的服务器地址。
    • 根域名服务器会返回给本地DNS服务器一个或多个顶级域名服务器的地址。

5. 查询顶级域名服务器

  • 本地DNS服务器根据根域名服务器提供的地址,向相应的顶级域名服务器发送查询请求。
    • 顶级域名服务器会检查其管理的域名信息,并返回给本地DNS服务器该域名对应的权威域名服务器(Name Server)的地址。

6. 查询权威域名服务器

  • 本地DNS服务器再向权威域名服务器发送查询请求。
    • 权威域名服务器是负责该域名解析的最终服务器,它存储着域名与IP地址的映射关系。
    • 权威域名服务器将域名对应的IP地址返回给本地DNS服务器。

7. 缓存并返回结果

  • 本地DNS服务器将解析结果(IP地址)缓存起来,以便将来对该域名的查询可以更快地响应。
  • 同时,本地DNS服务器将IP地址返回给客户端。

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

1. DNS 记录查找

  • DNS A 记录:尝试查找 DNS 记录中的 A 记录,有时主机的真实 IP 可能会在这些记录中泄露。
  • DNS 反向查询:对域名进行反向 DNS 查找,可能会发现与 CDN 不同的 IP 地址。

2. 使用 CDN 记录

  • CDN 提供商的 IP 范围:通过检查 CDN 提供商的 IP 地址范围,并验证是否有异常的 IP 地址。可以通过 Cloudflare IP 地址列表 或其他 CDN 提供商的文档找到这些信息。

3. 子域名和域名关联

  • 子域名扫描:检查是否存在未通过 CDN 保护的子域名,这些子域名可能会暴露主机的真实 IP 地址。

4. 证书透明度日志

  • 证书透明度查询:检查 SSL/TLS 证书透明度日志,有时证书可能包括主机的真实 IP 地址。可以使用 crt.sh 进行查询。

5. 网络扫描

  • 端口扫描:尝试对目标进行端口扫描,看是否可以找到与 CDN 以外的 IP 地址相关的服务。这可以使用工具如 Nmap 实现。

6. HTTP 头分析

  • HTTP 响应头:有时 HTTP 响应头中可能包含与真实 IP 地址相关的信息。检查 X-Forwarded-ForX-Real-IP 等头信息可能有帮助。

7. 利用域名和 IP 关联

  • 网络流量分析:通过监控和分析流量,查看是否可以识别与主机真实 IP 相关的流量模式。

8. 利用第三方服务

  • Shodan:使用 Shodan 等服务搜索可能暴露的 IP 地址。
  • Censys:通过 Censys 查找与目标域名相关的 IP 地址。

9. 社交工程学和信息泄露

  • 公司信息和公开资源:通过公司公开的文档、招聘信息或技术博客等途径,可能会找到关于主机真实 IP 的线索。

10. 实验和测试

  • 利用应用程序漏洞:如果目标存在应用程序漏洞,可以尝试通过这些漏洞间接获得真实 IP 地址。

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

1. DNS 查询

  • DNS 解析:通过查询 DNS 记录,尤其是 NS(Name Server)、A(Address)、CNAME(Canonical Name)等记录,获取子域名信息。
  • DNS Brute Force:使用字典攻击方式,通过大量的可能子域名尝试进行 DNS 查询。

2. 在线工具

3. 搜索引擎

  • Google 搜索:使用 site:example.com 等高级搜索查询,寻找公开的子域名。
  • 特定搜索引擎:例如 Crt.shCert Spotter 等可以查询证书透明度日志来获取子域名信息。

4. 证书透明度日志

  • Certificate Transparency:利用公共证书透明度日志获取到已发布的 SSL/TLS 证书中包含的子域名信息。

5. 网络爬虫

6. 社交工程学

  • 信息泄露:从泄露的文档、公司报告、招聘信息等中提取潜在的子域名。

7. WHOIS 查询

  • 域名注册信息:查询域名的 WHOIS 记录,有时可以从注册信息中找到相关子域名的信息。

8. 网络监控和分析

  • 流量分析:通过分析网络流量,发现可能的子域名。

四、Nmap全端口扫描

1. 准备Nmap环境

2. Pikachu靶场搭建

3. 使用Nmap进行端口扫描

  • 21号端口:FTP (File Transfer Protocol)

    • 用于文件传输。FTP是早期的互联网文件传输协议,通过它可以上传或下载文件。
  • 80号端口:HTTP (Hypertext Transfer Protocol)

    • 用于网页浏览。HTTP是万维网的基础协议,当你在浏览器中输入网址并按下回车键时,浏览器就会通过80端口向服务器发送请求,服务器则返回网页数据。
  • 135号端口:RPC (Remote Procedure Call) endpoint mapper

    • RPC是一种允许程序调用另一个地址空间(通常是另一台机器上)的过程的协议。135端口是RPC endpoint mapper使用的端口,它用于定位其他RPC服务。
  • 137、139号端口:NetBIOS over TCP/IP

    • NetBIOS是一种在局域网中提供命名服务和共享资源的协议。137端口用于名字服务,139端口用于会话服务。
  • 445号端口:SMB (Server Message Block)

    • SMB是用于文件共享和打印服务的网络协议。Windows系统广泛使用SMB协议。
  • 903号端口:Windows Installer

    • 用于Windows Installer服务,主要用于安装和配置Windows软件。
  • 913号端口:通常是自定义服务或未分配的端口

    • 具体作用取决于具体的网络环境和配置。如果没有特殊说明,一般认为是自定义服务或未分配的端口。

4. SYN半开扫描的原理

SYN包是TCP连接过程中的一个包,在三次握手中的第一步。当服务器收到SYN包时,它会回应一个SYN-ACK包,表示它已经收到了连接请求,并准备好接收更多的数据。在半开扫描中,扫描器不会回应最后的ACK包,也不会完成连接的建立。服务器由于没有收到最后的ACK,会继续等待原始的SYN发起者的响应,从而可以在其日志中记录下这个半开的连接,这可以作为端口开放的证据。

5. 跳过主机存活检测扫描

通常Nmap在进行高强度的扫描时是用它确定正在运行的机器。 默认情况下,Nmap只对正在运行的主机(也就是存活的主机)进行高强度的探测如 端口扫描,版本探测,或者操作系统探测。-P0的第二个字符是数字0而不是字母O。 跳过正常的主机发现继续执行所要求的功能,就好像每个IP都是活动的,也就是每个IP都是存活的。

所以可以使用-P0禁用ping的探测,从而跳过主机发现即存活的检测

五、dirmap目录探测工具实践

1. 打开Dirmap


2. 探测网站

3. 为什么dirmap每次扫描条数不一样

Dirmap具有一些高级特性,如能够爬取页面并动态生成字典。这意味着在扫描过程中,它会根据目标网站的实际情况动态调整请求,从而可能导致扫描条数的变化。

六、Fscan使用

七、插件安装截图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值