2024.8.27
目录
当我键入www.baidu.com的时候,我的电脑都替我做了哪些工作?
usl是什么?
URL(Uniform Resource Locator)是统一资源定位符的缩写,简称网址。它用于指定网络上资源的位置和访问方式,包含了资源的协议、主机名、路径等信息,可以唯一标识互联网上的资源。
当我键入www.baidu.com的时候,我的电脑都替我做了哪些工作?
1. DNS 解析:
- 浏览器首先检查本地缓存中是否有 `www.baidu.com` 的 IP 地址。
- 如果本地缓存中没有,它会向配置的 DNS 服务器发送请求,询问 `www.baidu.com` 对应的 IP 地址。
- DNS 服务器将返回与 `www.baidu.com` 关联的 IP 地址。
2. 建立 TCP 连接:
- 浏览器获取到 IP 地址后,会与该 IP 地址的服务器建立一个 TCP 连接。通常,这个连接通过端口 80(HTTP)或 443(HTTPS)进行。
3. 发送 HTTP/HTTPS 请求:
- TCP 连接建立后,浏览器会发送一个 HTTP 或 HTTPS 请求到服务器,通常是一个 GET 请求,要求访问 `/`(主页)。
4. 服务器响应:
- 服务器接收到请求后,会处理请求并返回相应的资源,例如 HTML 文件、CSS 样式表、JavaScript 文件、图像等。
- 这些资源会被打包在 HTTP/HTTPS 响应中,返回给浏览器。
5. 渲染页面:
- 浏览器接收到服务器的响应后,会解析 HTML 内容,生成 DOM 树,同时解析并应用 CSS 样式表生成渲染树,并执行 JavaScript。
- 浏览器根据解析和渲染的结果将页面展示在窗口中。
6. 后续资源请求:
- 如果初始 HTML 文件中引用了其他外部资源(例如图像、样式表、脚本文件等),浏览器会继续发送请求获取这些资源,直到页面完全加载完毕。
今日作业:
1、DNS解析详细步骤。
2、绕过CDN查找主机真实IP的方法。
3、子域名信息收集常用手段。
4、Nmap全端口扫描(使用昨日搭建的pikachu靶场),加分项:能够说明SYN半开扫描的原理和跳过主机存活检测扫描使用常见。
5、dirmap目录探测工具实践(使用昨日搭建的pikachu靶场),要求讲述为什么dirmap每次扫描条数不一样,加分项:dirmap高级应用,详细见项目文档,项目链接:https://github.com/H4ckForJob/dirmap
6、Fscan实践(使用昨日搭建的pikachu靶场)
7、课上所演示插件安装成功截图。
注意:每个加分项加0.5分,除布置任务除外,如果其他信息收集建议、好方法,经研判会额外加分。
1.DNS解析详细步骤
1. 用户输入域名:
- 用户在浏览器地址栏中输入域名,例如`www.example.com`。
2. 浏览器检查缓存:
- 浏览器首先会检查自己的DNS缓存,看看是否已经有对应域名的IP地址。
- 如果找到缓存结果,则直接使用该IP地址,不再进行进一步的DNS查询。
3. 操作系统缓存检查:
- 如果浏览器缓存中没有对应的IP地址,浏览器会向操作系统查询,操作系统也有自己的DNS缓存。
- 如果操作系统缓存中找到对应的IP地址,则返回给浏览器使用。
4. 查询本地DNS服务器:
- 如果操作系统缓存中也没有找到,操作系统会将查询请求发送到配置的本地DNS服务器(通常是ISP提供的DNS服务器)。
5. 本地DNS服务器查询缓存:
- 本地DNS服务器收到请求后,首先检查自身缓存中是否有对应的IP地址记录。
- 如果缓存中有记录,直接返回结果。
6. 递归查询:
- 如果本地DNS服务器缓存中没有记录,它会进行递归查询,从根DNS服务器开始向下查询。
1. 根DNS服务器:
- 本地DNS服务器首先向根DNS服务器发送请求。
- 根DNS服务器不直接提供IP地址,而是告诉本地DNS服务器,负责该顶级域名(如`.com`)的权威DNS服务器的地址。
2. 顶级域名服务器(TLD DNS):
- 本地DNS服务器向TLD服务器(如负责`.com`域名的服务器)发送请求。
- TLD服务器响应并告知负责该具体域名(如`example.com`)的权威DNS服务器的地址。
3. 权威DNS服务器:
- 本地DNS服务器向权威DNS服务器发送请求。
- 权威DNS服务器提供该域名对应的IP地址。
7. 返回结果:
- 本地DNS服务器将从权威DNS服务器获得的IP地址返回给用户的计算机。
- 用户的计算机会缓存此结果,并将IP地址传递给浏览器。
8. 浏览器连接到服务器:
- 浏览器使用获得的IP地址与目标服务器建立连接,发送HTTP请求并加载网页内容。
2.绕过CDN查找主机真实IP的方法
-
DNS查询:
- 使用DNS查询工具(如
dig
或nslookup
)来查找域名的A记录,有时可以直接获得真实IP。 - 尝试查询不同的DNS服务器,有时会得到不同的结果。
- 使用DNS查询工具(如
-
历史DNS记录:
- 使用一些在线服务(如SecurityTrails、ViewDNS.info等)查询历史DNS记录,可能能找到CDN未使用时的真实IP。
-
HTTP请求:
- 通过发送HTTP请求到某些已知的资源,观察响应头信息,有时可以在某些Header中找到真实IP。
-
反向查找:
- 如果已知某个IP地址,可以尝试进行反向查找,查看该IP是否会返回某个特定的域名。
-
暴露的服务:
- 对于某些使用CDN的服务,如果原始服务器上有未经过CDN保护的服务(如SSH、FTP等),可以尝试直接连接这些服务。
-
社交工程学:
- 通过社交工程学手段获取相关人员的信息,可能会获得真实IP。
-
利用子域名:
- 有时候,某些子域名可能没有经过CDN保护,可以通过查找这些子域名获取真实IP。
以上方法在某些情况下可能侵犯他人的隐私或违反法律,因此请务必在合规的前提下使用这些信息。同时,确保您的行为符合道德标准,不要进行任何形式的网络攻击或恶意行为。
3.子域名信息收集常用手段
1. DNS查询
dig 命令:使用dig命令查询域名的DNS记录,例如:
dig example.com ANY
nslookup 命令:类似于dig,也可以用于查找DNS记录。
nslookup example.com
2. 在线工具
SecurityTrails:可以查找域名的历史DNS记录和子域名。
VirusTotal:可以输入域名,查看相关的子域名和历史信息。
crt.sh:可以通过证书透明度日志搜索子域名。
Sublist3r:一个开源工具,专门用来收集子域名。
3. 暴力破解
Subbrute:使用字典文件对目标进行子域名暴力破解。
dnsgen:生成可能的子域名并进行DNS查询。
Amass:功能强大的信息收集工具,可以进行子域名发现。
4. 搜索引擎
- 使用Google等搜索引擎进行特定搜索,例如:
site:example.com -www
这个搜索可以找到所有在example.com下的子域名。
5. 社交媒体和社区
- 在社交媒体平台(如Twitter、LinkedIn)上搜索与目标相关的帖子,可能会发现子域名信息。
- 论坛和社区(如Reddit、StackOverflow)中也可能有相关信息。
6. GitHub和代码托管平台
- 在GitHub等平台上搜索特定的域名,可能找到公开的代码或配置文件中包含的子域名。
7. WHOIS查询
- 查询域名的WHOIS信息,有时可以找到与子域名相关的联系信息。
8. 被动收集
- Passive DNS Replication:利用被动DNS服务收集历史DNS查询数据。
- Threat Intelligence Feeds:利用威胁情报服务获取与目标相关的已知子域名。
9. Web爬虫
- 编写爬虫访问目标网站,检查HTML代码中是否有指向子域名的链接。
10. API接口
- 许多服务提供API接口,允许查询和收集子域名信息,例如Shodan、Censys等。
注意事项
在进行任何信息收集活动时,请确保遵循法律法规和道德标准,避免进行未授权的访问或攻击。
4.Nmap全端口扫描
1.nmap扫描
手机开热点,连接两台电脑一台手机,用nmap扫IP网段,发现这三个设备
2.扫描pikachu
3.SYN半开扫描的原理
半开扫描是一种扫描技术,它使用一种特殊的扫描方式来探测目标系统的开放端口,而不会完全建立连接。其原理包括以下几个步骤:
-
发送SYN包:扫描器向目标系统的特定端口发送一个TCP SYN包,这是一个用于建立TCP连接的请求包。
-
监听响应:扫描器接收目标系统的响应。如果端口是开放的,目标系统会发送一个SYN/ACK包作为响应;如果端口是关闭的,目标系统会发送一个RST包作为响应。
-
分析响应:扫描器分析目标系统的响应。如果接收到SYN/ACK包,则表明该端口是开放的;如果接收到RST包,则表明该端口是关闭的。
通过这种方式,半开扫描可以在不完全建立TCP连接的情况下快速探测目标系统的开放端口,并且不会留下可追溯的连接记录,从而提高了扫描的隐蔽性。然而,由于其依赖目标系统的响应,因此对于一些防火墙或入侵检测系统可能会被检测到。
4.跳过主机存活检测扫描使用常见手段
对于跳过主机存活检测扫描使用常见手段,一般来说有以下几种方法:
-
修改扫描器设置:可以通过修改扫描器的设置来跳过主机存活检测扫描,例如通过设置扫描器的参数来跳过存活主机检测,或者选择特定的扫描方式可以绕过主机存活检测。
-
手动扫描:可以通过手动扫描的方式来跳过主机存活检测扫描,手动扫描可以避开一些常见的扫描手段。
-
使用专门工具:还可以通过使用专门的工具来跳过主机存活检测扫描,这些工具可能具有特殊的技术手段来避开传统的扫描检测。
需要注意的是,为了确保扫描的准确性和安全性,建议在合法授权的情况下进行扫描,并且充分了解相关法律法规和道德规范。
5.dirmap目录探测工具实践
下载依赖并运行
1.扫描pikachu
2.为什么dirmap每次扫描条数不一样
Dirmap具有一些高级特性,如能够爬取页面并动态生成字典。这意味着在扫描过程中,它会根据目标网站的实际情况动态调整请求,从而可能导致扫描条数的变化。
6.Fscan实践
1.扫描主机地址
2.扫描pikachu
7.课上所演示插件安装成功截图
在火狐安装插件Wappalyzer和findsomething并固定到工具栏
8.dumpall
启动
扫描pikachu
扫描后多出两个文件夹