本节摘要:网络安全的基本威胁只有四类——窃听、篡改、伪造、拒绝服务;攻击手法千变,攻击位置可数。本节按"链路层—网络层—传输层—应用层"绘制威胁地图,拆解中间人攻击在开放 Wi-Fi 上的完整作案过程,并澄清 MAC 过滤、HTTPS 等常见机制各自挡得住谁、挡不住谁。
换上防御者的眼睛。第 3 章讲过集线器网络里"人人听得见所有帧"——那不只是性能问题,更是安全问题。画威胁地图前先立一个基本盘:在共享与开放的介质上,任何听得见你流量的位置,都潜在具备读、改、冒、瘫四种能力。防御设计就是逐层剥夺这些能力。
四类基本威胁(CIA 三性的反面加可用性): 窃听(保密性被破):读取本无权看的内容 篡改(完整性被破):修改传输中的数据 伪造(真实性被破):冒充他人身份收发 拒绝服务(可用性被破):让服务无法响应合法用户 按攻击者所在协议层划分作案位置: 链路层 ── 同网段 attacker 窃听:开放 Wi-Fi 上抓空气中的帧(早期 WEP 时代全裸) 伪造:ARP 欺骗——广播"我是网关",同网段流量的 下一跳 MAC 被骗到攻击者网卡(回顾 4.2:ARP 只问不验,谁答信谁) 网络层 ── 路径上的 attacker 或僵尸网络 篡改:劫持路径改写内容(早期 BGP 劫持事件) 拒绝:SYN 洪泛(5.2 案例)、ICMP 洪泛、 反射放大——用伪造源地址让第三方替自己攻击 传输层 ── 端口扫描与会话劫持 探测:SYN 扫描绘出你开了哪些门(nmap -sS) 劫持:明文会话中预测序号抢答(现代近乎绝迹, 但会话令牌窃取是它在应用层的转世) 应用层 ── 直接走到业务门口 伪造:钓鱼页面、DNS 投毒把域名指到假站 滥用:撞库、爬虫、接口盗刷——一切"合法协议、恶意目的"
背景还原:你在开放 Wi-Fi 上访问一个未加密的站点(或攻击者诱使你忽略证书告警)。攻击者与你同网段,笔记本一张网卡即可开工。
攻击者操作脚本(仅为理解原理,勿试): 第 1 步 ARP 欺骗:向网段广播伪造 ARP 应答 "192.168.1.1(网关)的 MAC 是 aa:bb:cc:dd:ee:ff(攻击机)" 受害者与网关的 ARP 缓存被污染: 受害者 → 网关的帧全发往攻击机;网关 → 受害者的帧亦然 攻击机开启转发,两端通信"正常"继续——察觉不到延迟 第 2 步 旁路操控(此时四类威胁全部解锁): 窃听:明文 HTTP 的账号密码直接可读 篡改:注入脚本,页面加载被塞进钓鱼浮层 伪造:降级攻击——把 HTTPS 链接改写成 HTTP 跳转 定向:只对特定域名动手,其余放行,避免暴露 第 3 步 为什么受害者毫无察觉: ARP 层没有认证(设计于 1982 年,可信网络假设) 页面依旧打开,只是"多了个登录框"—— 安全感知为零的协议层被攻击,用户层毫无信号 防御对照(每一步都有解): ARP 欺骗 → 交换机动态 ARP 检测(DAI)/ 静态绑定 明文窃听 → 全站 HTTPS(下一节的 TLS) 降级改写 → HSTS:浏览器记住"此站必须加密",拒绝降级 假登录框 → 密码管理器只自动填写真实域名—— 它拒绝在陌生域名上吐密码,是普通用户最实用的钓鱼探测器

MAC 过滤不是防御。把陌生 MAC 挡在 Wi-Fi 外?MAC 地址明文 broadcast 在每个帧里,攻击者抓一个在线设备的 MAC 改自己网卡(3.1 节说过虚拟化时代 MAC 随手改),一分钟绕过。它防君子不防贼。
HTTPS 挡内容不挡元数据。加密后中间设备看不到你传了什么,但 IP 头不可加密(否则没法路由)——访问了哪个 IP、什么时候、流量多大全部可见。流量分析不需要解密。
强密码救不了钓鱼。钓鱼页面是"你亲手把密码输给假站点",再强的密码也是当场交出。对付伪造靠的是身份验证(证书、域名核对),不是密码熵。
# 一个自查小实验:看你的流量元数据暴露多少 $ traceroute -n your-bank-example.com # 路径上每台设备都知道你在访问谁 $ tcpdump -i eth0 -c 20 "dst port 443" # 只看头部,加密流量照样可统计 tcpdump: listening on eth0 14:02:11 IP your-host.52738 > 203.0.113.44.443: Flags [S] 14:02:11 IP your-host.52739 > 203.0.113.44.443: Flags [S] ... 解读:任何人在这条路径上抓包,都能得出 "你在 14:02 与该 IP 建立了两条加密连接"。 内容保密,行为公开——这就是明文 IP 头的宿命, 也是审查与追踪系统的物理基础。
⚠️ 常见坑:以为"内网等于可信"。历史上绝大多数攻击发生在边界之内——一台被钓鱼攻陷的笔记本进了内网,就是城墙里的内鬼。现代零信任架构干脆取消"内网可信"这个假设。
"反正我有 HTTPS,公共 Wi-Fi 随便连"? 方向对了一半。TLS 确实挡住了内容窃听与篡改,但坏 Wi-Fi 仍能:看到你访问了哪些域名(SNI 明文,7.2 节)、把你引到钓鱼 captive portal(伪造登录页骗邮箱密码)、对你发起去匿名化的流量指纹分析。公共网络的正确姿势是加 VPN 或开手机热点,把不可信的第一跳整体罩进加密隧道。
家用路由器被攻破的概率很小吧? 恰恰相反,它是家庭网络最暴露、更新最不及时的设备——弱管理密码、固件零更新、默认开放远程管理,任何一个都是现成入口。它一旦沦陷,其后的所有"内网设备"(摄像头、电视、笔记本)都在同一信任域里裸奔(零信任要解决的正是这种假设)。
敌人认清了,下一节拆解那把最重要的锁——TLS 加密握手与证书信任链。