网安实习第二天作业(23组,730)

工具:

Xrary根据自己漏洞库进行漏洞扫描

Gopy更注重于信息收集

任务一:DNS解析步骤详解

DNS(Domain Name System,域名系统)解析是将域名转换为 IP 地址的过程。以下是 DNS 解析的详细步骤:

一、浏览器检查缓存

当你在浏览器中输入一个域名时,浏览器首先会检查自身的缓存,看是否有该域名对应的 IP 地址记录。如果有,就直接使用这个 IP 地址进行访问,这一步非常快速。

二、检查操作系统缓存

如果浏览器缓存中没有找到对应记录,浏览器会进一步检查操作系统的缓存(如 Windows 系统的 hosts 文件)。如果在操作系统缓存中找到了域名对应的 IP 地址,就使用该 IP 地址进行访问。

三、查询本地 DNS 服务器

如果操作系统缓存中也没有,那么系统会向本地配置的 DNS 服务器(通常由你的网络服务提供商提供)发送查询请求。 本地 DNS 服务器收到请求后,首先会检查自己的缓存。如果缓存中有该域名的记录,就直接返回对应的 IP 地址。 如果本地 DNS 服务器的缓存中没有该记录,它会向根域名服务器发起查询。

四、根域名服务器响应

根域名服务器是 DNS 层级结构的顶层服务器,它并不直接知道具体域名的 IP 地址,但它知道负责顶级域名(如.com、.org、.net 等)的顶级域名服务器的地址。 根域名服务器会返回负责相应顶级域名的顶级域名服务器的地址给本地 DNS 服务器。

五、查询顶级域名服务器

本地 DNS 服务器根据根域名服务器返回的地址,向顶级域名服务器发起查询。 顶级域名服务器会返回负责该二级域名的权威域名服务器的地址。

六、查询权威域名服务器

本地 DNS 服务器再向权威域名服务器发起查询。 权威域名服务器是负责具体域名解析的服务器,它拥有该域名的具体 IP 地址记录。权威域名服务器将查询到的 IP 地址返回给本地 DNS 服务器。

七、本地 DNS 服务器缓存并返回结果

本地 DNS 服务器将查询到的 IP 地址缓存起来,以便下次使用。然后,它将 IP 地址返回给发起查询的客户端(你的计算机或设备)。

八、客户端访问目标服务器

客户端(浏览器)使用得到的 IP 地址与目标服务器建立连接,进行数据传输和访问。 总之,DNS 解析通过一系列的查询和响应过程,将用户输入的域名转换为对应的 IP 地址,使得用户能够方便地访问各种网络资源。

任务二:如何绕过CDN查找主机真实IP
  1. 利用网络空间安全引擎搜索

    :通过关键字或网站域名,在一些网络空间安全引擎中搜索,可能找出被收录的 IP,有时获取到的就是网站真实 IP,例如:

  2. 网站根域或子域找到真实IP

    大部分CDN服务都是按流量进行收费的,所以一些网站管理员只给重要业务部署CDN,也有很多人忘了给“根域”部署CDN

    所以我们可以尽可能的多搜集一些子域名来尝试得到真实IP地址.

  3. 查看网站邮件头信息

    若网站有邮箱注册、找回密码、RSS 邮件订阅等功能,当网站给自己发送邮件时,邮件头信息中可能会包含真实 IP 地址

  4. 查询域名历史解析记录:域名的历史解析记录中可能会保留网站使用 CDN 前的 IP 地址。相关查询网站有:

  5. 利用 SSL 证书寻找真实 IP

    证书颁发机构(CA)会将发布的每个 SSL/TLS 证书发布到公共日志中,SSL/TLS 证书通常包含域名、子域名和电子邮件地址等信息,可能成为查找真实 IP 的切入点。例如使用 https://censys.io/ipv4?q=github.com 等 SSL 证书搜索引擎。

  6. 国外主机解析域名

    部分 CDN 厂商可能只做了国内线路,针对国外的线路可能缺失。此时使用国外的 DNS 查询,有可能获取到真实 IP。

  7. 检查配置不当导致的绕过情况

    在配置 CDN 时,若存在域名、端口等信息配置细节问题,可能导致 CDN 防护被绕过。例如:

    • 为方便用户访问,将 www.test.comtest.com 解析到同一个站点,但只给 www.test.com 配置了 CDN,那么访问 test.com 就可能绕过 CDN。

    • 站点同时支持 HTTP 和 HTTPS 访问,却只配置了 HTTPS 的 CDN,这时访问 HTTP 就可能绕过 CDN。

  8. 扫描全网(?不违法吗)

任务三:子域名信息收集常用手段

常用的子域名查找方法和工具如下:

一、搜索引擎

  1. 使用通用搜索引擎(如 Google、百度、必应等):

    • 可以通过输入特定的搜索语法来查找目标网站的子域名。例如,在 Google 中使用 “site:example.com” 可以列出被 Google 索引的与 “example.com” 相关的所有网页,其中可能包含子域名信息。

    • 也可以尝试更复杂的搜索语法,如 “site:example.com -www” 来排除主域名,更有可能找到子域名。

  2. 专业的搜索引擎:

    • Shodan:主要针对互联网上的设备和服务进行搜索,可以通过搜索特定的关键词或 IP 地址范围来查找与目标网站相关的子域名。例如,搜索 “hostname:example.com” 可能会找到与 “example.com” 相关的设备和子域名。

    • Censys:可以搜索互联网上的证书信息、IP 地址等,通过搜索与目标网站相关的证书信息,可能会发现子域名。例如,搜索 “parsed.names:example.com” 可以查找包含 “example.com” 的证书信息,其中可能包含子域名。

二、DNS 查询工具

  1. 在线 DNS 查询平台:

    • ViewDNS.info:提供多种 DNS 查询功能,包括子域名查询、DNS 记录查询等。可以输入目标域名进行子域名查询,该平台会尝试从不同的数据源获取子域名信息。

    • DNSDumpster:可以快速扫描目标域名的 DNS 记录,包括 A 记录、MX 记录、NS 记录等,从中可以发现子域名信息。同时,该平台还提供可视化的结果展示,方便用户分析。

  2. 命令行工具:

    • Dig:是一个常用的命令行 DNS 查询工具,可以通过指定不同的查询类型来获取目标域名的 DNS 记录。例如,使用 “dig axfr example.com” 可以尝试进行区域传输,获取目标域名的所有 DNS 记录,包括子域名。但需要注意的是,区域传输通常需要目标 DNS 服务器允许才能成功。

    • Nslookup:也是一个常用的命令行工具,可以查询 DNS 记录。可以使用 “nslookup -type=ns example.com” 来查询目标域名的名称服务器,然后通过名称服务器进一步查询子域名信息。

三、网络爬虫

  1. 自定义爬虫:

    • 可以编写自己的网络爬虫程序,从目标网站的主页面开始,遍历所有链接,提取其中的子域名信息。例如,使用 Python 的 Scrapy 框架可以快速构建一个自定义的爬虫,通过解析 HTML 页面中的链接,发现子域名。

    • 在编写爬虫时,需要注意遵守网站的 robots.txt 协议,避免对网站造成不必要的负担和法律问题。

  2. 自动化工具:

    • SubBrute:是一个强大的子域名暴力破解工具,可以通过字典攻击的方式尝试猜测目标域名的子域名。它使用多种数据源和技术,提高了子域名发现的成功率。

    • Knockpy:也是一个子域名枚举工具,通过发送 DNS 查询请求,尝试不同的子域名组合,以发现目标域名的子域名。

四、证书透明度日志

  1. 证书透明度(Certificate Transparency,CT)是一种用于监测和审计 SSL/TLS 证书颁发的机制。许多证书颁发机构会将颁发的证书信息公开记录在证书透明度日志中。

  2. 可以通过查询证书透明度日志来查找与目标域名相关的子域名。一些在线工具,如 Crt.sh,可以方便地搜索证书透明度日志,输入目标域名即可查看相关的证书信息,其中可能包含子域名。

五、社交工程和信息收集

  1. 社交媒体平台:

    • 在社交媒体平台上搜索目标网站的名称或相关关键词,可能会发现用户分享的包含子域名的链接或信息。例如,在 Twitter 上搜索 “example.com”,可能会找到用户发布的与目标网站相关的子域名链接。

    • 关注目标网站的官方社交媒体账号,有时会发布包含子域名的信息,如子域名对应的新服务、活动页面等。

  2. 员工信息和泄露数据:

    • 查找目标网站员工在社交媒体、技术论坛等平台上的发言和分享,可能会无意中透露子域名信息。例如,员工在讨论公司内部系统时可能会提到子域名。

    • 分析目标网站的历史数据泄露事件,可能会发现包含子域名的信息。一些数据泄露数据库和平台可以提供相关的搜索功能,帮助查找与目标网站相关的泄露数据。

六:子域名暴力猜解

可使用子域名暴力工具,如 layer 子域名挖掘机、wydomainsubdomainsbrutesublist3r 等。

任务四:nmap全端口扫描pikachu靶场
SYN半开扫描原理

SYN 半开扫描的原理是利用 TCP 连接建立过程中的三次握手特性来探测目标主机的端口状态 。

在正常的 TCP 连接建立过程中,客户端会发送一个 SYN(同步序列编号)报文到服务器,服务器如果该端口处于监听状态,则会回复一个 SYN + ACK(同步并确认)报文,客户端接着回复一个 ACK(确认)报文,完成三次握手,双方开始传输数据 。

而在 SYN 半开扫描中,扫描器模拟正常的连接请求,向目标主机和指定端口发送一个 SYN 报文 。如果目标端口是开放的,它会返回一个 SYN + ACK 报文;若端口未打开或被防火墙阻止,则会返回一个 RST(复位)报文 。但与正常连接建立过程不同的是,扫描器在接收到 SYN + ACK 报文后,并不会继续完成第三次握手(即不发送 ACK),而是直接丢弃这个连接尝试,因此不会建立起完整的连接 。根据收到的响应类型,扫描器就能判断端口的状态:收到 SYN + ACK 则认为端口开放,收到 RST 则认为端口关闭或不可达

SYN 半开扫描的优点包括速度较快,因为它不需要完成完整的 TCP 连接建立过程;并且相对较为隐蔽,因为没有完成三次握手,所以在目标系统的日志中留下的痕迹较少 。然而,这种扫描方式也有一些局限性,例如需要较高的系统权限来构造原始数据包,且可能会被一些防火墙或入侵检测系统检测到扫描行为并进行屏蔽

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

跳过主机存活检测扫描主要是指在使用某些扫描工具时,不进行传统的主机存活检测步骤,直接对目标进行端口扫描等操作。以下是一些可能的使用场景:

1.时间敏感的快速评估

当时间紧迫,需要尽快了解目标网络中特定服务或端口的开放情况时,可以跳过主机存活检测直接进行扫描。例如在应急响应场景中,安全团队需要迅速确定是否存在特定的安全漏洞可能被利用,没有足够的时间进行全面的存活检测。

2.已知目标大概率存活的情况

内部网络环境中,对一些关键服务器或设备进行定期扫描时,如果对网络的稳定性和设备的在线状态有较高的信心,可以跳过存活检测以节省时间。比如在一个企业内部网络中,某些重要的服务器通常都保持在线状态,为了快速检查这些服务器上特定服务的端口开放情况,直接进行端口扫描而不进行存活检测。

对于一些连续运行的关键业务系统,根据以往的经验和监控数据知道这些系统很少出现离线情况,此时进行安全检查时可以考虑跳过主机存活检测扫描,以便更快地获取关于端口和服务的信息。

3.大规模网络扫描中的效率提升

在对非常大的网络范围进行扫描时,主机存活检测可能会耗费大量的时间。如果主要目的是快速了解网络中是否存在特定类型的服务或漏洞,而不是进行全面的网络资产清查,可以选择跳过存活检测。例如对一个大型企业的多个分支机构网络进行快速漏洞排查,为了在有限时间内尽可能多地检查可能存在风险的端口和服务,直接进行扫描而不先进行耗时的存活检测。

4.避免触发某些安全防护机制

一些网络安全防护系统可能会对频繁的主机存活检测行为产生警觉,并触发警报或采取防御措施。在这种情况下,跳过主机存活检测扫描可以降低被发现的风险。比如在对一些安全防护级别较高的目标网络进行扫描时,为了避免引起对方的注意,可以选择这种方式,以更隐蔽的方式进行端口扫描等操作,获取所需的信息。

任务五:dirmap扫描pikachu靶场

靶场端口设置:

扫描结果:

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

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

任务六:Fscan扫描pikachu靶场

任务七:插件安装截图

  • 6
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值