目录
一、OSI七层模型详解
OSI(开放系统互连)模型将网络通信划分为七个层次,每一层负责不同的功能,分层设计使网络协议和攻击面更清晰。
层级 | 功能 | 协议/技术示例 |
---|---|---|
1. 物理层 | 传输原始比特流(电压、光信号等) | 网线、光纤、HUB |
2. 数据链路层 | 数据帧的封装、MAC地址寻址、错误检测(CRC) | Ethernet、PPP、VLAN、ARP |
3. 网络层 | IP地址路由、数据包转发、拥塞控制 | IP、ICMP、RIP、OSPF |
4. 传输层 | 端到端连接管理(TCP/UDP)、流量控制、可靠性传输 | TCP、UDP、TLS(部分实现) |
5. 会话层 | 建立/维护/终止会话(Session ID管理) | NetBIOS、RPC、SSH |
6. 表示层 | 数据格式转换(加密、压缩、编码) | SSL/TLS、JPEG、ASCII、MIME |
7. 应用层 | 用户接口与应用程序服务(HTTP、文件传输等) | HTTP、FTP、SMTP、DNS |
二、TCP协议核心机制
1. 三次握手(建立连接)
-
流程:
-
SYN:客户端发送SYN(SEQ=X)到服务器。
-
SYN-ACK:服务器回应SYN(SEQ=Y)+ ACK(X+1)。
-
ACK:客户端发送ACK(Y+1)确认。
-
-
目的:协商初始序列号(ISN),确保双方收发能力正常。
-
安全漏洞:SYN Flood攻击(利用半开连接耗尽资源)。
2. 四次挥手(终止连接)
-
流程:
-
FIN:主动关闭方发送FIN(SEQ=A)。
-
ACK:被动方回应ACK(A+1)。
-
FIN:被动方发送FIN(SEQ=B)。
-
ACK:主动方回应ACK(B+1)。
-
-
问题:TIME_WAIT状态可能导致端口耗尽(DoS攻击)。
三、网络安全关联性分析(按OSI层级)
1. 物理层
-
攻击类型:
-
窃听(Sniffing):通过集线器或未加密无线网络截取数据。
-
物理破坏:切断光纤、电磁干扰(TEMPEST攻击)。
-
-
防御:光纤加密、电磁屏蔽、物理访问控制。
2. 数据链路层
-
攻击类型:
-
ARP欺骗(ARP Spoofing):伪造ARP响应,劫持流量。
-
MAC Flooding:向交换机灌入虚假MAC地址,触发泛洪。
-
-
防御:动态ARP检测(DAI)、端口安全、802.1X认证。
3. 网络层
-
攻击类型:
-
IP Spoofing:伪造源IP绕过ACL或发起DDoS。
-
ICMP攻击:Ping洪水、Smurf攻击(放大反射攻击)。
-
路由协议攻击:伪造OSPF/BGP路由更新。
-
-
防御:入口过滤(BCP38)、IPSec、路由协议认证。
4. 传输层
-
攻击类型:
-
SYN Flood:发送大量SYN包耗尽服务器资源。
-
TCP序列号预测:猜测ISN劫持会话(如早期TCP实现)。
-
UDP Flood:利用无连接特性发起DDoS。
-
-
防御:SYN Cookie、连接限制、流量清洗。
5. 会话层
-
攻击类型:
-
会话劫持(Session Hijacking):窃取Session ID接管会话。
-
中间人攻击(MitM):如SSL Stripping降级HTTPS。
-
-
防御:强会话令牌、HSTS、双向认证。
6. 表示层
-
攻击类型:
-
加密漏洞:弱算法(如DES)、心脏出血(Heartbleed)。
-
编码绕过:Unicode注入、Base64混淆攻击。
-
-
防御:使用AES-256、定期更新TLS库、输入规范化。
7. 应用层
-
攻击类型:
-
SQL注入:通过未过滤输入执行恶意SQL。
-
XSS(跨站脚本):注入JS窃取Cookie。
-
缓冲区溢出:利用未校验输入覆盖内存。
-
-
防御:WAF、参数化查询、CSP策略。
四、典型攻击与漏洞案例
-
SYN Flood攻击(传输层)
-
原理:攻击者发送大量SYN包但不完成握手,耗尽服务器半开连接队列。
-
防御:启用SYN Cookie、部署防火墙限速。
-
-
ARP欺骗(数据链路层)
-
原理:伪造ARP响应将流量重定向到攻击者主机。
-
防御:静态ARP绑定、启用DAI(动态ARP检测)。
-
-
心脏出血漏洞(表示层)
-
原理:OpenSSL未验证心跳包长度,导致内存数据泄露。
-
影响:可窃取私钥、会话Cookie等敏感信息。
-
修复:升级OpenSSL、禁用Heartbeat扩展。
-
-
SQL注入(应用层)
-
原理:通过输入字段注入恶意SQL语句,篡改数据库。
-
防御:使用ORM框架、参数化查询、输入过滤。
-
五、分层防御策略
-
物理层:使用屏蔽线缆、部署入侵检测系统(IDS)。
-
数据链路层:启用端口安全、VLAN隔离。
-
网络层:配置ACL、部署IPSec VPN。
-
传输层:启用SYN Cookie、使用状态防火墙。
-
会话层:强制HTTPS、会话超时设置。
-
表示层:使用TLS 1.3、定期更新加密库。
-
应用层:部署WAF、代码审计、输入验证。
六、总结
-
OSI模型是分析网络攻击面的核心框架,TCP机制(三次握手/四次挥手)是多数传输层攻击的切入点。
-
安全需分层实施:例如,即使应用层有HTTPS,若网络层存在IP欺骗仍可被绕过。
-
漏洞利用链:高级攻击(如APT)常组合多层漏洞(如ARP欺骗+SSL剥离+XSS)。
通过理解OSI模型与TCP协议细节,可精准定位安全防护点,实现纵深防御(Defense in Depth)。