本文所有内容仅用于网络安全合规学习、渗透测试面试备考、企业授权安全检测。文中涉及的协议原理、安全缺陷、风险分析内容,仅用于安全防御研究与网络安全认知提升。严禁用于未授权测试、非法入侵、网络攻击等违规违法行为,一切违规使用后果由使用者自行承担。


1. 网络层协议

1.1 IP 协议(Internet Protocol)

基础知识

IP 协议是网络层的核心协议,负责将数据包从源地址路由到目标地址,本身不保证可靠传输(无连接、无状态)。

IPv4 头部结构(20字节固定头):

各字段含义(渗透视角重点):

字段长度含义渗透利用点
TTL(Time to Live)8bit每经过一个路由器减1,为0时丢包通过TTL值推断目标OS(Windows初始128,Linux初始64)
Protocol8bit上层协议(1=ICMP, 6=TCP, 17=UDP)协议隧道构造依据
Source Address32bit源IP(可伪造!)IP欺骗、DDoS反射攻击的基础
Flags/Fragment Offset—IP分片控制分片绕过IDS/IPS检测
Identification16bit分片重组标识空闲扫描(Idle Scan)依赖IPID自增特性

IPv4 vs IPv6 关键差异:

特性IPv4IPv6
地址长度32位128位
头部大小20字节(可变)40字节(固定)
校验和有无(由上层协议负责)
NAT 依赖是否
ARP使用 ARP使用 NDP(邻居发现协议)

CIDR 子网划分速记:

CIDR子网掩码可用主机数
/24255.255.255.0254
/25255.255.255.128126
/16255.255.0.065534
/8255.0.0.016777214

1.2 ICMP 协议(Internet Control Message Protocol)

基础知识

ICMP 用于传递控制消息和错误报告,封装在 IP 数据包内(Protocol=1)。

重要报文类型:

TypeCode含义
00Echo Reply(ping 回复)
30-15Destination Unreachable(目标不可达)
33Port Unreachable(端口不可达,UDP扫描依赖此返回)
50-3Redirect(重定向)
80Echo Request(ping 请求)
110Time Exceeded(TTL超时,traceroute依赖此)

ICMP 数据包结构


2. 传输层协议

2.1 TCP 协议(Transmission Control Protocol)

基础知识

TCP 是面向连接、可靠传输的协议,提供流量控制、拥塞控制、顺序保证。

TCP 头部结构(20字节固定头):

标志位(Flags)详解:

标志名称含义渗透利用
SYNSynchronize建立连接,携带初始序列号 ISNSYN Flood、端口扫描
ACKAcknowledge确认收到数据半开连接检测
FINFinish正常关闭连接FIN Scan 穿透无状态防火墙
RSTReset强制终止连接连接重置、端口关闭标志
PSHPush立即将数据推送给应用层—
URGUrgent紧急数据指针有效某些IDS绕过技巧

三次握手:

1. 客户端发送SYN包(请求连接);2. 服务端返回SYN+ACK包(同意连接);3. 客户端发送ACK包(确认连接),连接建立。

核心疑问:为什么不能两次握手?防止失效的连接请求占用服务端资源,避免资源浪费。

四次挥手:

1. 客户端发送FIN包(请求断开);2. 服务端返回ACK包(确认断开请求,继续传输剩余数据);3. 服务端传输完成,发送FIN包(告知客户端可断开);4. 客户端返回ACK包,连接彻底断开。

2.2 UDP 协议(User Datagram Protocol)

基础知识

UDP 是无连接、不可靠的传输协议,没有握手、重传、流量控制,开销极低。

UDP 头部结构(仅 8 字节):

使用 UDP 的常见协议:

协议端口备注
DNS53查询用UDP,区域传输用TCP
DHCP67/68地址分配
SNMP161/162网络管理
TFTP69简单文件传输
NTP123时间同步
Syslog514日志
RTP动态实时音视频

3. 应用层协议

3.1 HTTP / HTTPS

基础知识

HTTP(HyperText Transfer Protocol)是 Web 通信的基础.

端口:HTTP 80(明文)、HTTPS 443(加密)

传输层:均基于TCP协议

核心区别:HTTP明文传输,所有数据可直接抓包窃取;HTTPS=HTTP+TLS/SSL加密,传输数据加密,防中间人窃听、篡改。

核心版本差异

HTTP1.0:短连接,一次请求一次连接,请求完成立即断开,效率极低;

HTTP1.1:默认长连接(Keep-Alive),支持管线化请求,新增Host请求头,支持断点续传,是目前主流版本;

HTTP2.0:基于HTTPS,支持多路复用、二进制帧传输、头部压缩,解决1.1的队头阻塞问题;

HTTP3.0:基于QUIC协议(UDP),无需三次握手,极速连接,抗网络延迟。

HTTP 方法详解:

方法含义渗透意义
GET获取资源参数在 URL 中,易被日志记录
POST提交数据参数在 body 中
PUT上传/更新资源若未鉴权,可上传 webshell
DELETE删除资源若未鉴权,可删除文件
OPTIONS查询支持的方法信息收集,发现危险方法
TRACE调试回显请求XST(Cross-Site Tracing)攻击
PATCH部分更新资源—
HEAD只获取响应头探测资源是否存在

重要 HTTP 状态码:

状态码含义渗透意义
200OK请求成功
301Moved Permanently永久重定向
302Found临时重定向,开放重定向漏洞
400Bad Request请求格式错误
401Unauthorized需要认证(返回 WWW-Authenticate 头)
403Forbidden无权限(已认证但无授权)
404Not Found资源不存在
405Method Not Allowed方法不被允许
500Internal Server Error服务端错误,可能泄露堆栈信息
502Bad Gateway反向代理错误

关键 HTTP 请求头:

头部含义渗透意义
Host目标主机名Host 头注入(缓存投毒、密码重置链接劫持)
Cookie会话标识会话劫持
Authorization认证信息Basic/Bearer token 泄露
X-Forwarded-For代理链中真实IP伪造 IP 绕过 IP 白名单
Referer来源页面CSRF 防御绕过,信息泄露
User-Agent客户端信息XSS via User-Agent,指纹欺骗
Content-Type请求体格式修改为 text/xml 触发 XXE
Transfer-Encoding传输编码HTTP 请求走私的核心

Cookie 安全属性:

属性含义缺失的风险
HttpOnly禁止 JS 读取缺失则 XSS 可窃取 Cookie
Secure仅 HTTPS 传输缺失则明文网络可嗅探
SameSite=Strict跨站请求不携带缺失或 Lax 则存在 CSRF 风险
Domain作用域设置过宽可能跨子域泄露
Expires/Max-Age有效期Session Cookie 应无 Expires
TLS/HTTPS 握手流程

TLS 1.2 握手:

Client                                          Server
  |                                               |
  |------- ClientHello(支持的密码套件,随机数) -->|
  |<------ ServerHello(选定密码套件,随机数) ----|
  |<------ Certificate(服务器证书)  ------------|
  |<------ ServerKeyExchange(DH参数,可选)------|
  |<------ ServerHelloDone ----------------------|
  |                                               |
  |  验证证书(CA链 + 域名 + 有效期)              |
  |                                               |
  |------- ClientKeyExchange(预主密钥)  -------->|
  |------- ChangeCipherSpec ---------------------->|
  |------- Finished(握手摘要)  ----------------->|
  |<------ ChangeCipherSpec ----------------------|
  |<------ Finished --------------------------------|
  |                                               |
  |============ 加密通信开始 =====================|

TLS 1.3 改进:

  • 握手从 2-RTT 缩减到 1-RTT(0-RTT 重连)
  • 强制前向保密(DHE/ECDHE)
  • 移除不安全算法(RC4, DES, MD5, SHA-1, RSA 密钥交换)
  • 加密更多握手内容

3.2 DNS(Domain Name System)

基础知识

DNS 将域名解析为 IP 地址,默认使用 UDP 53 端口(查询),当响应超过 512 字节时切换到 TCP 53;区域传输(AXFR)固定使用 TCP 53。

DNS 解析流程(递归 + 迭代):

客户端
  │
  │─── 递归查询 ──→ 本地 DNS 服务器(Recursive Resolver)
  │                       │
  │                       │─── 迭代查询 ──→ 根服务器(Root, ".")
  │                       │               ← 返回 .com TLD 服务器地址
  │                       │
  │                       │─── 迭代查询 ──→ TLD 服务器(.com)
  │                       │               ← 返回 example.com 权威服务器地址
  │                       │
  │                       │─── 迭代查询 ──→ 权威服务器(example.com)
  │                       │               ← 返回 A 记录(IP 地址)
  │                       │
  │ ←─── 最终结果 ─────────┘
  │                缓存 TTL 时间内不再查询

DNS 记录类型:

记录类型含义渗透意义
A域名 → IPv4最基础的记录
AAAA域名 → IPv6IPv6 资产发现
CNAME域名别名子域名劫持的基础(悬空 CNAME)
MX邮件服务器发现邮件基础设施
TXT文本记录SPF/DKIM/DMARC 配置,可能泄露敏感信息
NS权威名称服务器目标使用的 DNS 服务商信息
PTRIP → 域名(反向解析)资产发现
SOA区域授权信息包含管理员邮箱、序列号等
SRV服务位置记录发现服务(如 _ldap._tcp, _kerberos._tcp)

DNS 数据包结构(重要字段):

+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|                      ID                         |  ← 事务ID(16位),响应与查询ID匹配
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
|QR|  Opcode |AA|TC|RD|RA|   Z    |   RCODE      |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
  • ID:16位随机事务ID,DNS 缓存投毒的攻击面
  • QR:0=查询,1=响应
  • AA:权威回答标志
  • RD:期望递归标志

3.3 SMB(Server Message Block)

基础知识

SMB 是 Windows 文件共享和网络通信的核心协议。

端口:

  • 445/TCP:直接通过 TCP/IP 运行 SMB(现代 Windows 默认)
  • 139/TCP:通过 NetBIOS 会话服务运行 SMB(旧版兼容)
  • 137/UDP、138/UDP:NetBIOS 名称服务和数据报服务

SMB 版本对照:

版本系统安全性特性
SMBv1Windows XP/2003极危险(已废弃)无加密,无签名要求,EternalBlue漏洞
SMBv2Windows Vista/2008中等引入签名、加密协商
SMBv2.1Windows 7/2008R2中等支持大型 MTU
SMBv3Windows 8/2012较好端到端加密,预身份验证完整性
SMBv3.1.1Windows 10/2016最好强制预身份验证哈希

3.4 LDAP(Lightweight Directory Access Protocol)

基础知识

LDAP 是访问和维护分布式目录信息的协议,Active Directory(AD)基于 LDAP 实现。

端口:

  • 389/TCP:明文 LDAP
  • 636/TCP:LDAPS(LDAP over SSL)
  • 3268/TCP:AD 全局目录
  • 3269/TCP:AD 全局目录(SSL)

LDAP 基本操作:

操作说明
bind认证(明文或 SASL,匿名 bind 不提供凭证)
search搜索目录条目
add / delete / modify增删改条目
compare比较属性值

LDAP 搜索过滤器语法:

(attribute=value)          基本比较
(&(filter1)(filter2))      AND
(|(filter1)(filter2))      OR
(!(filter))                NOT
(attribute=*)              属性存在
(attribute>=value)         大于等于

示例:
(&(objectClass=user)(sAMAccountName=alice))    查找 alice 用户
(&(objectClass=user)(memberOf=CN=Domain Admins,...))  查找域管理员

3.5 Kerberos

基础知识

Kerberos 是 Active Directory 使用的默认认证协议(LDAP 用于授权),基于对称密钥加密,避免密码在网络中传输。

默认端口:88/TCP 和 88/UDP

三个角色:

角色全称职责
Client客户端发起认证请求的用户/服务
KDCKey Distribution Center密钥分发中心(域控制器承担此角色)
ASAuthentication ServiceKDC 的一部分,处理初始认证
TGSTicket Granting ServiceKDC 的一部分,颁发服务票据
SSService Server提供服务的目标服务器

Kerberos 完整认证流程:

Client                    KDC (AS)                 KDC (TGS)              Service Server
  │                          │                          │                        │
  │── AS_REQ ──────────────>│                          │                        │
  │   (用户名 + 时间戳,      │                          │                        │
  │    用用户密码哈希加密时间戳)│                          │                        │
  │                          │ 验证用户名                │                        │
  │                          │ 用用户密码哈希解密时间戳    │                        │
  │<── AS_REP ───────────────│                          │                        │
  │   包含两部分:            │                          │                        │
  │   ① TGT(用 krbtgt 密码   │                          │                        │
  │          哈希加密)        │                          │                        │
  │   ② Session Key(用用户   │                          │                        │
  │          密码哈希加密)    │                          │                        │
  │                          │                          │                        │
  │── TGS_REQ ────────────────────────────────────────>│                        │
  │   (TGT + 想要访问的 SPN  │                          │                        │
  │    + 用 Session Key 加密  │                          │                        │
  │      的认证符)           │                          │                        │
  │                          │                          │ 用 krbtgt 密码解密 TGT  │
  │                          │                          │ 验证 TGT 有效           │
  │<── TGS_REP ────────────────────────────────────────│                        │
  │   包含:                  │                          │                        │
  │   ① 服务票据 ST(用目标    │                          │                        │
  │      服务账户密码哈希加密) │                          │                        │
  │   ② 新 Session Key        │                          │                        │
  │                          │                          │                        │
  │── AP_REQ ──────────────────────────────────────────────────────────────────>│
  │   (服务票据 ST)          │                          │                        │
  │                          │                          │ 用自身密码解密 ST        │
  │                          │                          │ 验证客户端身份           │
  │<── AP_REP ─────────────────────────────────────────────────────────────────│
  │   认证成功,可以访问服务    │                          │                        │

票据加密方式对照:

加密类型ETYPE 值安全性破解难度
RC4-HMAC23弱(不推荐)低(Hashcat可快速破解)
AES128-CTS17较强中
AES256-CTS18强高

关键数据结构:

  • TGT(Ticket Granting Ticket):用 krbtgt 账户密码哈希加密,客户端无法解密,内含 PAC(特权属性证书,包含用户组信息)
  • Service Ticket:用目标服务账户密码哈希加密
  • PAC(Privilege Attribute Certificate):包含用户的 SID、组成员信息,决定授权

3.6 FTP(File Transfer Protocol)

基础知识

FTP 是用于文件传输的应用层协议,完全明文传输(包括用户名和密码)。

端口:

  • 21/TCP:控制连接(命令)
  • 20/TCP:数据连接(主动模式下)

主动模式 vs 被动模式:

【主动模式(PORT)】
客户端 → 服务器21 建立控制连接
客户端告诉服务器:"我在 PORT IP:PORT 等你连接"
服务器:20 → 客户端指定PORT  建立数据连接
问题:客户端防火墙会拦截从外部发起的连接

【被动模式(PASV)】
客户端 → 服务器21 建立控制连接
客户端发送 PASV 命令
服务器回复:"请连接我的 IP:随机高端口"
客户端 → 服务器:随机高端口 建立数据连接
优势:数据连接由客户端发起,防火墙友好

常用 FTP 命令:

命令含义
USER / PASS认证
LIST / NLST列出文件
GET / PUT下载/上传
PASV / PORT切换传输模式
CWD / PWD切换/显示目录
QUIT退出

FTPS vs SFTP 区别(面试常问):

特性FTPSSFTP
协议基础FTP + SSL/TLSSSH 子协议
端口990(隐式)/ 21(显式)22
命令兼容保留 FTP 命令完全不同的命令集
防火墙友好较差(多端口)好(单一端口22)

3.7 SSH(Secure Shell)

基础知识

SSH 提供加密的远程管理通道,是运维和渗透中最常用的协议之一。

端口:22/TCP(可配置)

SSH 认证方式:

方式安全性说明
密码认证中等易受暴力破解,推荐配合强密码和失败锁定
公钥认证高服务端保存公钥,客户端用私钥签名证明身份
基于证书最高CA 签发证书,适合大规模部署
GSSAPI(Kerberos)高企业 AD 环境集成

SSH 密钥交换流程(简化):

1. 版本协商:双方交换版本字符串
2. 算法协商:双方交换支持的算法列表(密钥交换/加密/MAC/压缩)
3. 服务器身份认证:
   - 客户端用 known_hosts 验证服务器公钥
   - 防止中间人攻击
4. 密钥交换(DH/ECDH):
   - 双方协商出共享密钥(会话密钥)
   - 会话密钥用于后续加密
5. 用户认证(密码或公钥)
6. 会话开始

SSH 重要文件:

文件位置说明
私钥~/.ssh/id_rsa权限必须为 600(否则 SSH 拒绝使用)
公钥~/.ssh/id_rsa.pub上传到服务器
授权密钥~/.ssh/authorized_keys服务器保存已授权的公钥列表
已知主机~/.ssh/known_hosts防止中间人,保存已信任的服务器公钥
客户端配置~/.ssh/config连接快捷方式和选项
服务端配置/etc/ssh/sshd_config服务端安全配置

3.9 SNMP(Simple Network Management Protocol)

基础知识

SNMP 用于网络设备(路由器、交换机、服务器)的监控和管理。

端口:

  • 161/UDP:SNMP 查询(Manager → Agent)
  • 162/UDP:SNMP Trap(Agent → Manager,主动上报告警)

版本差异:

版本认证加密安全性
SNMPv1Community String(明文)无极差
SNMPv2cCommunity String(明文)无极差
SNMPv3用户名 + 密码(哈希)支持 AES/DES合理

Community String:

  • public:只读(最常见的默认值)
  • private:读写(常见默认值,权限极高!)
  • 相当于 v1/v2c 的"密码",但完全明文传输

MIB(Management Information Base):

MIB 是设备信息的层级数据库,使用 OID(对象标识符)索引:

1.3.6.1.2.1.1.1.0  → sysDescr(系统描述,含OS版本)
1.3.6.1.2.1.1.5.0  → sysName(主机名)
1.3.6.1.2.1.25.4.2.1.2  → hrSWRunName(运行中的进程)
1.3.6.1.2.1.4.34.1.3    → IP地址表
1.3.6.1.4.1.77.1.2.25   → Windows用户列表(仅Windows)
1.3.6.1.2.1.17.4.3.1.2  → MAC地址表

3.10 SMTP / POP3 / IMAP

基础知识

SMTP(发邮件):25(明文)、465(加密);

POP3(收邮件):110(明文)、995(加密);

IMAP(邮件同步):143(明文)、993(加密)

端口对照:

协议明文端口加密端口用途
SMTP25(服务器间)/ 587(客户端提交)465(SMTPS)发送邮件
POP3110995接收邮件(下载后删除服务器)
IMAP143993接收邮件(保留在服务器,多设备同步)

SMTP 重要命令:

命令功能渗透意义
HELO / EHLO打招呼,EHLO 返回服务器支持的扩展版本和功能信息
VRFY验证邮件地址是否存在用户名枚举!
EXPN展开邮件列表用户名/群组枚举!
RCPT TO指定收件人枚举有效用户(根据响应码判断)
AUTH认证暴力破解目标

SMTP 响应码:

220 Service ready
250 OK(VRFY 确认地址存在时返回 250)
251 User not local(用户存在但在其他服务器)
252 Cannot VRFY(服务器禁用了 VRFY 但邮件可能仍会被接受)
550 No such user(用户不存在)
# 使用 swaks 发送伪造邮件
swaks --from ceo@company.com --to victim@company.com \
  --server mail.company.com \
  --header "Subject: Urgent" \
  --body "Please wire $50,000 to..."

4. SPF / DKIM / DMARC(邮件安全机制)

机制全称作用存储在
SPFSender Policy Framework声明哪些 IP 可以发送该域的邮件DNS TXT 记录
DKIMDomainKeys Identified Mail对邮件头/体进行数字签名,防篡改DNS TXT 记录(公钥)
DMARCDomain-based Message Authentication告诉收件方 SPF/DKIM 失败时的处理策略DNS TXT 记录

3.11 Telnet 远程登录协议

基础知识

Telnet(Teletype Network)是最早的远程登录协议,提供双向的、面向字节流的交互式终端会话。它是 SSH 出现之前 Unix/网络设备管理的标准方式,目前虽已基本被 SSH 取代,但在老旧设备、工控系统(ICS/SCADA)、嵌入式设备和 IoT 场景中仍大量存在。

端口:23/TCP(默认,部分设备使用其他端口)

最核心的缺陷:完全明文传输。 用户名、密码、所有命令输出在网络中都以明文流动,同网段任何人均可嗅探。

暴力破解:

# Hydra
hydra -l admin -P /usr/share/wordlists/rockyou.txt telnet://target

# 带用户名字典
hydra -L users.txt -P passwords.txt telnet://target

# Medusa
medusa -h target -u admin -P passwords.txt -M telnet

# Nmap NSE
nmap -p 23 --script=telnet-brute --script-args userdb=users.txt,passdb=pass.txt target

3.12 DHCP(Dynamic Host Configuration Protocol)

基础知识

DHCP 负责自动为网络中的主机分配 IP 地址及其他网络参数,基于 UDP 协议运行,是局域网的基础服务。DHCP 的无认证机制使其成为内网渗透的重要攻击面。

端口:

  • 67/UDP:DHCP 服务器监听端口
  • 68/UDP:DHCP 客户端监听端口

3.13 MQTT/MQTTS(物联网核心协议)

基于TCP传输层,属于应用层协议,是目前物联网设备、智能家居、工业终端最主流的通信协议。

MQTT:1883端口,明文TCP传输,所有设备通信数据、认证信息可直接抓包窃取,无安全防护;

MQTTS:8883端口,基于TLS加密传输,杜绝中间人窃听、篡改,是生产环境标准配置。


4. 无线协议

4.1 WEP(Wired Equivalent Privacy)

完全不安全,已废弃。

致命缺陷:使用 RC4 流密码,IV(Initialization Vector)仅 24 位,IV 空间只有 16,777,216 种,在繁忙网络中几小时内就会出现 IV 重用,导致密钥流复用,可以统计分析破解。

# 破解流程(需要 Aircrack-ng 套件)
airmon-ng start wlan0                     # 开启监听模式
airodump-ng wlan0mon                      # 扫描 AP
airodump-ng -c CHANNEL --bssid BSSID -w capture wlan0mon  # 捕获数据包
# 加速 IV 收集:
aireplay-ng -3 -b BSSID -h CLIENT wlan0mon  # ARP 重放攻击
# 破解(至少需要 20,000-40,000 个 IV)
aircrack-ng capture*.cap

4.2 WPA2(Wi-Fi Protected Access 2)

认证方式:

  • WPA2-Personal(PSK):预共享密钥,适用于家庭/小企业
  • WPA2-Enterprise(802.1X):RADIUS 服务器认证,适用于企业

四次握手(PTK 协商):

AP(Authenticator)                    Client(Supplicant)
      │                                      │
      │─── EAPOL Message 1 ──────────────>   │  AP发送 ANonce(随机数)
      │                                      │
      │                                      │  Client 生成 SNonce
      │                                      │  PTK = PRF(PMK + ANonce + SNonce + MAC_AP + MAC_Client)
      │                                      │  MIC = HMAC-SHA1(KCK, 握手消息)
      │<── EAPOL Message 2 ─────────────────│  Client发送 SNonce + MIC
      │                                      │
      │  AP 计算 PTK 并验证 MIC              │
      │                                      │
      │─── EAPOL Message 3 ──────────────>   │  AP 发送 GTK(加密)+ MIC
      │<── EAPOL Message 4 ─────────────────│  Client 确认

PTK(Pairwise Transient Key)组成:

  • KCK:Key Confirmation Key(验证 MIC)
  • KEK:Key Encryption Key(加密 GTK)
  • TK:Temporal Key(实际数据加密用)

PMK = PBKDF2(passphrase, SSID, 4096, 256)

因为 PMK 是 WiFi 密码的函数,四次握手可以被离线爆破:

# 捕获握手包
airodump-ng -c CHANNEL --bssid BSSID -w capture wlan0mon
# 强制客户端重连(获取握手包)
aireplay-ng -0 5 -a BSSID -c CLIENT wlan0mon

# 破解
aircrack-ng -w rockyou.txt capture.cap
hashcat -m 22000 capture.hc22000 rockyou.txt   # hashcat 格式

# 转换格式
hcxpcapngtool -o capture.hc22000 capture.pcap

4.3 WPA3

主要改进:

  • 使用 SAE(Simultaneous Authentication of Equals / Dragonfly)替代 PSK
  • 前向保密:即使后来密码泄露,历史流量也无法解密
  • 防止离线字典攻击(每次认证需要在线交互)
  • 增强开放网络保护(OWE,Opportunistic Wireless Encryption)

降级攻击:若 AP 同时支持 WPA2 和 WPA3,可以建立仅支持 WPA2 的伪造 AP,诱使客户端以 WPA2 连接,再进行 WPA2 攻击。


5. 工具速查表

类别工具主要用途
抓包分析Wireshark图形化协议分析,支持几乎所有协议
抓包分析tcpdump命令行抓包,tcpdump -i eth0 -w out.pcap
端口扫描Nmap端口扫描、服务版本探测、OS识别、NSE脚本
端口扫描Masscan超高速端口扫描(百万级/秒),masscan -p 0-65535 --rate=10000 target
Web 测试Burp SuiteHTTP(S) 抓包、改包、重放、扫描
Web 测试OWASP ZAP开源 Web 漏扫
SQL注入sqlmap自动化 SQL 注入检测与利用
SMB/ADImpacketpsexec/smbclient/secretsdump/GetUserSPNs 等
SMB/ADCrackMapExec内网批量扫描与利用
SMB/ADBloodHoundAD 攻击路径图形化分析
SMB/ADMimikatzWindows 凭证提取(哈希/明文/票据)
SMB/ADRubeusKerberos 票据操作
哈希爆破HashcatGPU 加速哈希破解
哈希爆破John the Ripper通用哈希破解
密码喷射Hydra多协议暴力破解(SSH/FTP/HTTP/SMB等)
DNSdigDNS 查询调试
DNSDNSreconDNS 信息收集和枚举
DNSSubfinder / Amass子域名枚举
无线Aircrack-ngWEP/WPA2 破解
无线hcxdumptoolWPA2 PMKID 攻击
SNMPsnmpwalk / onesixtyoneSNMP 枚举和 community string 猜解
中间人ResponderLLMNR/NBT-NS 投毒,捕获 NTLM 哈希
中间人Bettercap多协议中间人攻击框架
综合框架Metasploit漏洞利用框架

6. 面试高频题目

Q: 描述 TCP 三次握手,以及为什么是三次而不是两次?

A: 两次握手只能确认服务器收到了客户端的 SYN,但无法确认客户端能收到服务器的响应,客户端的接收能力未被确认。三次握手中,第三步 ACK 使得服务器确认客户端可以正常接收,双方的发送和接收能力都被验证。此外,三次握手防止了历史连接请求的误触发(网络延迟的旧 SYN 到达时,服务器可以收到客户端的 RST 而放弃)。

Q: SYN Scan 为什么比 Connect Scan 更隐蔽?

A: SYN Scan 发送 SYN 后,收到 SYN+ACK 即回 RST,不完成三次握手,应用层日志(如 Apache 访问日志)不会记录此连接;而 Connect Scan 完成完整三次握手,会被目标服务记录。但现代 IDS/防火墙可以检测到大量 RST 或半开连接。

Q: Pass-the-Hash 和 Pass-the-Ticket 有什么区别?

A: PTH 利用 NTLM 认证机制,使用哈希直接认证,绕过了知道明文密码的需求,适用于支持 NTLM 的服务(SMB、WMI、RDP-Restricted Admin 模式)。PTT 则是 Kerberos 环境下的手法,将有效的 TGT 或 Service Ticket 注入当前会话,以持票人身份访问服务,不涉及 NTLM 哈希。

Q: Kerberoasting 和 AS-REP Roasting 的区别?

A: Kerberoasting 目标是有 SPN 的服务账户,需要有效的域账户,请求 Service Ticket(用服务账户密码哈希加密)再离线爆破;AS-REP Roasting 目标是禁用了预认证的用户账户,不需要任何域账户,返回的 AS_REP 包含用该用户密码哈希加密的数据可被离线爆破。

Q: 如何判断一个 HTTPS 站点是否安全?

需要检查:TLS 版本(>= 1.2,推荐 1.3)、密码套件(避免 RC4/DES/MD5/SHA1/RSA密钥交换)、证书有效期和 CA 链、HSTS 头(防降级)、Certificate Transparency 日志、SAN 字段覆盖所有使用的域名。

Q: DNS 隧道如何检测和防御?

检测手段:监控异常高频的 DNS 查询、异常长的子域名(Base32/Base64 编码)、非标准查询类型(NULL/TXT/CNAME)、单个域名的查询量异常。防御:DNS 防火墙、限制解析域白名单、部署 DNS 流量分析(如 Zeek/Bro)。


本文面向渗透测试职位备考,所有内容仅用于合法授权的安全测试和学习目的。

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐