第二次作业

1. DNS 解析的详细步骤

DNS(Domain Name System,域名系统)解析是一个将域名转换为 IP 地址的过程。

  1. 客户端查询本地缓存:客户端首先检查其本地缓存中是否已经有该域名对应的 IP 地址记录。

  2. 请求本地 DNS 服务器:如果没有找到记录,客户端会向本地 DNS 服务器发送查询请求。

  3. 本地 DNS 检查缓存:本地 DNS 服务器检查其缓存中是否有该域名的记录。

  4. 递归查询或迭代查询:如果本地 DNS 缓存中没有记录,它可能会进行递归查询或者迭代查询。

    • 迭代查询:DNS 服务器只提供它知道的信息(通常是根 DNS 服务器的地址),然后客户端自己继续查询。
    • 递归查询:DNS 服务器负责处理所有查询直到找到答案,并将结果返回给客户端。
  5. 根 DNS 服务器查询:如果是迭代查询,客户端会从根 DNS 服务器开始查询。

  6. 顶级域(TLD) DNS 服务器查询:根 DNS 服务器会指向相应的顶级域 DNS 服务器。

  7. 权威 DNS 服务器查询:顶级域 DNS 服务器会指向具体的权威 DNS 服务器,后者拥有最终的 IP 地址记录。

  8. 返回 IP 地址:最后,权威 DNS 服务器返回 IP 地址给上一级 DNS 服务器,直至客户端。

  9. 缓存结果:所有参与查询过程的 DNS 服务器都会将结果缓存起来,以备后续使用。

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

1.使用 Whois 查询:有时候可以通过 WHOIS 数据库来获取一些有用的信息。

2.查找非 CDN 资源:有些网站可能有一些资源(如图片或脚本文件)并未通过 CDN 分发,直接访问这些资源可能会暴露真实 IP。

3.利用 DNS 记录:查看 MX 或 TXT 记录等其他 DNS 记录,这些记录有时会指向真实的服务器 IP。

4.使用特定工具:有些工具可以帮助识别 CDN 后面的真实 IP,比如使用 Shodan 进行搜索。

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

收集子域名信息对于渗透测试和安全审计非常重要。常用的手段包括:

1.使用子域名枚举工具:例如 Sublist3r, Subfinder, Amass 等工具可自动发现子域名。

2.分析证书透明度日志:TLS/SSL 证书通常包含子域名信息,可以通过证书透明度日志来查找这些信息。

3.利用搜索引擎:Google 和 Bing 等搜索引擎可以用来查找公开的子域名信息。

4.扫描 DNS 记录:通过扫描目标的 DNS 区域记录来发现未知的子域名。

5.使用社交工程:有时可以通过观察社交媒体和官方文档来找到未公开的子域名信息。

4.Nmap 全端口扫描

Nmap(Network Mapper)是一款强大的网络扫描工具,它可以用来探测网络中的主机和服务。进行全端口扫描意味着扫描目标主机的所有端口(通常是从 0 到 65535)。这种类型的扫描非常全面但也较为耗时,并且可能会触发目标系统的入侵检测系统(IDS)或防火墙。

扫描本地回环,全端口扫描 nmap -p 1-65535 -T4 -A -v 127.0.0.1

思考题

SYN 半开扫描(SYN Scan)原理

SYN 半开扫描是 Nmap 中最常用的扫描类型之一,它基于 TCP 协议的三次握手机制。在正常的 TCP 连接建立过程中,客户端首先发送一个 SYN(同步)数据包到服务器的指定端口,服务器收到后回应一个 SYN+ACK(同步确认)数据包,客户端再发送一个 ACK 数据包来完成连接的建立。而在 SYN 半开扫描中,客户端仅发送一个 SYN 数据包,并等待服务器的响应,但不再发送 ACK 数据包来完成连接建立。

跳过主机存活检测(Host Discovery)原理

在默认情况下,Nmap 会在扫描之前进行主机存活检测,以确定目标主机是否在线。这一步骤可以通过发送 ICMP 请求(如 ping 请求)、TCP SYN 数据包或其他方式来实现。跳过主机存活检测意味着不执行这一步骤,而是直接对目标主机进行端口扫描。

跳过主机存活检测扫描使用常见:

-sS:使用 SYN 扫描进行端口扫描,这是一种隐蔽且快速的扫描方式。

-Pn:跳过主机存活检测,可以提高扫描速度并减少被检测的可能性,但在使用时需要注意准确性问题以及潜在的风险。

5.DirMap 目录勘测工具实践

DirMap 是一款用于目录遍历和文件泄露漏洞探测的工具。它可以帮助用户快速找到网站中存在的隐藏目录、文件和其他敏感资源。

在Windows Powershell中安装依赖:

问题:找不到imp模块

在 Python 3 中,imp 模块已经被移除,取而代之的是 importlib 模块。

解决方案

  1. 修改源代码
    • 打开 E:\shixi\dirmap-master\dirmap-master\lib\core\option.py 文件。
    • 将第一行的 import imp 替换为使用 importlib 的相应代码。

      将以下代码替换到 option.py 文件中相应的 import imp 位置:

      from importlib import util

打开dirmap查看操作指南

运行dirmap.py

输入python dirmap.py -i 127.0.0.1 -lcf运行dirmap.py扫描

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

答:

  1. 动态内容

    如果目标网站包含动态生成的内容,那么每次请求可能会返回不同的页面或资源列表。
  2. 随机性

    dirmap 可能使用了一些随机性来优化扫描效率,例如在扫描过程中随机选择待扫描的目录或文件。
  3. 缓存影响

    浏览器或代理服务器的缓存可能会导致重复或不同的响应。
  4. 服务器状态

    服务器的状态可能会改变,例如某些资源可能暂时不可用或已被删除。
  5. 扫描参数

    每次扫描时使用的参数可能不同,例如使用的字典文件、扫描深度、扫描速度等。
  6. 网络状况

    网络状况的变化,如延迟、丢包等,也可能影响扫描结果。
  7. 并发度

    dirmap 支持并发扫描,每次扫描时的并发请求数量可能会有所不同,这也会影响扫描结果的数量。
  8. 扫描策略

    dirmap 可能有不同的扫描策略,例如是否使用递归扫描、是否使用深度优先或广度优先等,这些策略的不同也会导致结果数量的变化。
  9. 重试机制

    如果某个请求失败了,dirmap 可能会有重试机制,重试次数或重试间隔的不同也会导致结果数量的变化。

dirmap高级应用:

根目录下的dirmap.conf 文件通常是 dirmap 工具的一个配置文件,它用于设置工具的行为和参数。高级配置实例有多线程扫描,自定义字典,高级扫描模式,网络超时重试,代理支持等。详细工具需在dirmap.conf中进行配置。

6.Fscan 实践指南

在fscan.exe文件目录下打开Windows Powershell

7、课上所演示插件安装成功截图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值