今日作业,整理今日所学知识,具体如下:
1、DNS解析详细步骤。
DNS(域名系统)解析是将域名转换为IP地址的过程,下面是详细的步骤:
用户输入域名:
用户在浏览器中输入一个域名(如 www.example.com),并按下回车键。
检查本地缓存:
浏览器首先检查本地缓存,看看是否已经有该域名的IP地址记录。如果有,浏览器直接使用这个IP地址进行访问。如果没有,浏览器将请求发给操作系统。
操作系统缓存:
操作系统检查其DNS缓存中是否有该域名的IP地址。如果有,操作系统会将该IP地址返回给浏览器。如果没有,操作系统会将请求发送给本地DNS解析器。
本地DNS解析器:
本地DNS解析器通常由互联网服务提供商(ISP)提供,它会先检查自身的缓存。如果缓存中没有该域名的IP地址,本地DNS解析器会开始递归查询过程。
递归查询:根DNS服务器:本地DNS解析器首先向根DNS服务器发送查询请求。根DNS服务器返回包含权威DNS服务器的IP地址列表,这些服务器负责管理顶级域(如 .com、.org 等)。顶级域DNS服务器(TLD DNS服务器):本地DNS解析器向对应的TLD DNS服务器发送查询请求。TLD DNS服务器返回包含权威DNS服务器的IP地址列表,这些服务器负责管理具体的域(如 example.com)。
权威DNS服务器:本地DNS解析器向域名的权威DNS服务器发送查询请求。权威DNS服务器返回域名对应的IP地址。
返回结果:
本地DNS解析器将从权威DNS服务器获得的IP地址返回给操作系统,然后操作系统将IP地址返回给浏览器。
建立连接:
浏览器使用获得的IP地址与目标服务器建立连接,并请求网页内容。
缓存记录:
浏览器、操作系统和本地DNS解析器会缓存这个域名与IP地址的映射,以便将来能够更快速地访问。
这些步骤使得用户输入的域名能够被快速转换为服务器的IP地址,从而实现网页的访问。
2、绕过CDN查找主机真实IP的方法。
-
DNS记录检查:
- 有些网站在使用CDN的同时,仍会保留一些DNS记录指向源服务器。可以使用DNS查询工具(如
dig
或nslookup
)检查这些记录,看看是否能找到任何指向源服务器的IP地址。
- 有些网站在使用CDN的同时,仍会保留一些DNS记录指向源服务器。可以使用DNS查询工具(如
-
WHOIS查询:
- 使用WHOIS查询可以获取到域名的注册信息,有时可以从中找到有关服务器的线索或联系信息。
-
网络扫描工具:
- 使用网络扫描工具(如 Nmap)进行端口扫描,尝试找出哪些IP地址和端口开放,从中获取可能的线索。不过,这种方法可能会被CDN的安全措施检测到并封锁。
-
泄露的记录或信息:
- 有时源服务器的真实IP可能会通过某些泄露的记录或信息被暴露,例如在公开的文件、日志中,或在某些特定情况下由安全漏洞造成。
-
反向工程和社交工程:
- 通过对目标网站进行反向工程或进行社交工程攻击,获取有关真实服务器的信息。这种方法涉及伦理和法律风险,请谨慎对待。
-
Web应用程序漏洞:
- 某些Web应用程序漏洞(如配置错误、信息泄露)可能会暴露真实服务器的IP地址。进行安全测试和渗透测试时,可能会发现这些信息。
-
第三方服务:
- 使用一些第三方服务或工具,这些服务可能会提供IP地址泄露的线索,例如一些特定的反向CDN检测工具。
3、子域名信息收集常用手段。
域名信息收集是网络安全和信息收集的重要部分,主要用于了解目标网站的结构、潜在的漏洞或未公开的资源。以下是一些常用的子域名信息收集手段:
-
DNS查询:
- 暴力破解:使用字典攻击工具(如
dnsenum
、Sublist3r
)对常见子域名进行尝试,以发现子域名。 - DNS记录查询:使用
dig
或nslookup
查询DNS记录,以获取子域名和其他DNS信息。 - DNS枚举:通过查找DNS记录中的 CNAME、A、MX 等记录来发现子域名。
- 暴力破解:使用字典攻击工具(如
-
搜索引擎查询:
- Google Dork:使用特定的搜索引擎查询语法(如
site:example.com -www
)来查找公开的子域名信息。 - Bing:同样可以使用 Bing 的搜索引擎查询语法来发现子域名。
- Google Dork:使用特定的搜索引擎查询语法(如
-
子域名枚举工具:
- Sublist3r:一个流行的子域名枚举工具,可以从多种数据源(包括搜索引擎、DNS记录、公共数据集等)收集子域名信息。
- Amass:一个功能强大的工具,支持通过各种方式(包括DNS查询、搜索引擎、网络爬虫等)进行子域名信息收集。
- Subfinder:快速的子域名发现工具,支持从多个源(包括公共API)获取子域名信息。
-
在线服务和工具:
- VirusTotal:通过提交域名可以获取相关的子域名信息。
- Censys 和 Shodan:这些搜索引擎可以发现与特定域名相关的子域名及其他公开的网络资产。
- SecurityTrails 和 HackerTarget:提供子域名信息查询服务的在线工具。
-
公共数据集和API:
- Certificate Transparency Logs:通过查找证书透明日志(如
crt.sh
)中的证书信息,获取子域名。 - Passive DNS 数据库:查询被动DNS数据库(如
PassiveTotal
、Farsight Security
)以获取子域名信息。
- Certificate Transparency Logs:通过查找证书透明日志(如
-
网络爬虫和数据抓取:
- Scrapy:自定义的爬虫工具可以抓取网站的HTML页面,从中提取出潜在的子域名。
- LinkFinder:用于从网页中提取子域名和其他URL信息。
-
社交工程和情报收集:
- 社交媒体:通过分析社交媒体平台上的公开信息,可能会发现有关子域名的线索。
- 公司网站和公开文档:查找公司的公开文档、报告或其他材料,可能会包含子域名信息。
4、Nmap全端口扫描(使用昨日搭建的pikachu靶场),加分项:能够说明SYN半开扫描的原理和跳过主机存活检测扫描使用常见。
首先,启动靶场环境
启动zenmap对目标进行扫描。如下图所示:
扫描结果显示我本地开启的端口3306(MySQL)、21(FTP)、8082(本地phpstudy配置的Apache)等。
SYN半开扫描的原理
SYN半开扫描(SYN Scan)是一种常用的网络扫描技术,用于识别目标主机上开放的端口。这种扫描技术以其高效和隐蔽性而著称,主要原理如下:
-
发送SYN报文:
- 扫描工具(如 Nmap)向目标主机的指定端口发送一个SYN(同步)报文。这个报文是TCP三次握手的第一步,表示客户端希望与目标主机建立连接。
-
等待响应:
- 根据目标主机的响应来判断端口的状态:
- 开放(Open):如果目标主机的端口是开放的,目标主机会回复一个SYN-ACK(同步-确认)报文。这表示目标主机愿意建立连接。
- 关闭(Closed):如果目标主机的端口是关闭的,目标主机会回复一个RST(重置)报文。这表示目标主机不愿意接受连接。
- 过滤(Filtered):如果目标主机的端口被防火墙或其他网络设备过滤,可能不会收到响应,或者收到ICMP端口不可达消息。这表示目标主机或网络设备正在阻止扫描尝试。
- 根据目标主机的响应来判断端口的状态:
-
不完成三次握手:
- 在收到SYN-ACK报文后,扫描工具不会完成TCP三次握手的最后一步(即发送ACK报文)。这意味着实际的TCP连接没有建立,只是检查了端口的状态。
- 这种方法的好处是,目标主机不会看到完全建立的TCP连接,从而减少了被检测到的可能性。
-
解析扫描结果:
- 扫描工具分析从目标主机收到的响应,并根据响应类型确定端口的状态。根据这些信息,扫描工具会生成端口开放、关闭或被过滤的结果。
5、dirmap目录探测工具实践(使用昨日搭建的pikachu靶场),要求讲述为什么dirmap每次扫描条数不一样,加分项:dirmap高级应用,详细见项目文档。
用dirmap扫描pikachu靶场:
将结果与真实目录对比,扫描出了大部分的目录结构。
为什么dirmap每次扫描条数不一样
一般原因有:
内容更新:
目标网站的目录结构可能会发生变化。例如,网站管理员可能添加、删除或重命名目录和文件。这些变化会导致扫描结果的差异。
临时页面或重定向:网站可能会设置临时页面或进行重定向,这些在扫描时可能被识别为不同的结果
扫描设置不同:扫描时使用的参数和选项可能会影响扫描结果。例如,dirmap
可能会根据设置的深度、线程数或超时时间不同而返回不同的结果。
6.信息泄露分类及利用方式总结(替换fscan作业)
信息泄露是指未经授权的信息被公开或访问的情况。它可能涉及各种类型的数据和敏感信息,不同的泄露情况可能有不同的分类和利用方式。以下是信息泄露的常见分类及其利用方式的总结:
个人信息泄露:
分类:
- 身份信息:如姓名、身份证号码、护照号码、社会保障号码等。
- 联系信息:如电话号码、电子邮件地址、住址等。
- 财务信息:如银行账户信息、信用卡号码、交易记录等。
利用方式:
- 身份盗用:使用泄露的个人信息进行身份盗用,可能会申请贷款、开设银行账户等。
- 社交工程攻击:利用泄露的信息进行社交工程攻击,如伪装成可信的联系人或公司进行诈骗。
- 诈骗和钓鱼:使用泄露的联系信息进行诈骗电话、钓鱼邮件等。
公司和组织信息泄露:
分类:
- 商业机密:如研发计划、市场策略、客户数据等。
- 财务数据:如财务报表、预算、薪资数据等。
- 员工信息:如员工的个人信息、工资单、考勤记录等。
利用方式:
- 竞争对手分析:利用泄露的商业机密来进行市场竞争。
- 经济间谍活动:获取财务数据进行内幕交易或其他非法经济活动。
- 勒索攻击:通过持有敏感数据进行勒索,要求公司支付赎金。
技术和信息系统泄露:
分类:
- 源代码和软件:如源代码、软件设计文档、系统配置文件等。
- 系统漏洞:如未修补的安全漏洞、配置错误等。
- 网络架构:如网络拓扑结构、IP地址、端口信息等。
利用方式:
- 代码注入和漏洞利用:利用泄露的源代码或漏洞信息进行代码注入攻击或其他漏洞利用。
- 攻击网络和系统:通过泄露的网络架构信息进行网络攻击,如DDoS攻击、内部网络渗透等。
- 逆向工程:利用泄露的技术信息进行逆向工程,重建或破解软件。
医疗和健康信息泄露:
分类:
- 病历信息:如病史、诊断记录、治疗方案等。
- 个人健康信息:如健康状况、药物使用记录、检查结果等。
利用方式:
- 医疗诈骗:利用泄露的医疗信息进行医保欺诈。
- 身份盗用:利用个人健康信息进行身份盗用。
- 隐私侵犯:公开敏感的健康信息进行隐私侵犯和骚扰。
政府和国家机密泄露:
分类:
- 机密文件:如政府报告、国家安全文件、外交资料等。
- 情报数据:如间谍活动记录、情报分析结果等。
利用方式:
- 间谍活动:利用泄露的情报进行国家间谍活动。
- 政治操控:利用泄露的机密文件进行政治操控或宣传。
- 国家安全威胁:泄露国家安全信息可能导致国家安全威胁和恐怖活动。
敏感公共信息:
分类:
- 社交媒体数据:如社交媒体上的公开个人信息、图片、动态等。
- 公共记录:如公开的企业注册信息、法庭记录等。
利用方式:
- 社交工程攻击:利用公开的社交媒体数据进行针对性的社交工程攻击。
- 信息挖掘:分析公开记录中的信息,进行数据挖掘或统计分析。
7、课上所演示插件安装成功截图。