本章需掌握知识点:
- TCP/IP协议结构及安全问题
- 了解TCP/IP协议的体系及每一层的作用
- 了解网络接口层的作用及面临的网络安全问题
- 了解IP协议的工作机制及面临的安全问题
- 了解传输协议TCP和UDP的工作机制及面临的安全问题
- 了解应用层协议面临的安全问题
- TCP/IP模型安全解决方案
- 了解基于TCP/IP协议簇的安全架构
- 了解IPV6对网络安全的价值
一、TCP/IP模型认知
OSI模型与TCP/IP协议的对应 | TCP/IP 4层模型 | OSI模型 | 主要协议 | 作用 | | —- | —- | —- | —- | | 应用层 | 应用层 | HTTP、HTTPS、SMTP、FTP、DNS等 | 为应用程序提供网络服务 | | | 表示层 | | 数据格式化,加密、解密 | | | 会话层 | | 建立、维护、管理会话连接 | | 传输层 | 传输层 | TCP、UDP | 建立、维护、管理端到端连接 | | 网络互联层 | 网络层 | IP、ICMP、IGMP | IP寻址和路由选择 | | 网络接口层 | 数据链路层 | ARP、RARP | 控制网络层与物理层之间的通信 | | | 物理层 | | 比特流传输(光信号、电信号) |
TCP/IP协议簇结构
二、TCP/IP模型每层工作协议,与存在的安全问题
- 网络接口层
- 主要工作协议
- ARP
- ARP协议特点:无状态,无需请求可以应答(导致可以通过黑客可以通过持续不断的利用单播给要被欺骗的设备,导致被欺骗的设备将数据转发给黑客)
- ARP实现:ARP缓存(其实就是ARP缓存表,在NA有学过,重启就消失)
- 如何防御ARP欺骗?
- 使用静态ARP缓存
- 使用三层交换设备
- IP与MAC地址绑定
- ARP防御工具
- RARP
- ARP
- 存在的安全问题
- 损坏:自然灾害、动物/人为破坏、老化、误操作
- 干扰:大功率电器/电源线路/电磁辐射
- 电磁泄漏:传输线路电磁泄露
- 欺骗:ARP欺骗
- 嗅探:常见二层协议是明文通信的,所以容易被嗅探
- 拒绝服务:mac flooding,arp flooding等
- ARP协议工作过程与欺骗过程
- 主要工作协议
ARP请求是在局域网内泛洪广播的,导致容易被中间转发机器进行欺骗。
黑客主机伪装客户端需要去往的IP地址或MAC地址
- 网络互联层
- 网络互联层核心协议-IP协议
- IP协议(internet protocol)是TCP/IP协议族中最为核心的协议
- IP协议的特点
- 不可靠通信(无需保障通信的可靠性,尽最大努力进行通信)
- 无连接通信(没有任何预先联系就发送消息“无连接的”且希望接收方能顺序接收所有内容)
- 提供分层编址体系(IP地址)
- 网络互连层存在的安全问题
- 拒绝服务:分片攻击(teardrop)/死亡之ping
- 欺骗:IP源地址欺骗
- 原理:两台主机之间经过认证产生信任关系后,在连接过程中就不会要求严格的认证
- IP欺骗是一系列步骤构成的攻击
- 窃听:嗅探
- 伪造:IP数据包伪造
- 网络互联层核心协议-IP协议
- 传输层协议-TCP(Transmission Control Procotol传输控制协议)
- 作用:
- 提供面向连接的、可靠的字节流服务
(面向连接的服务,信息发送方需要与接收方联系并通过联系来维持一个对话) - 提供可靠性服务
- 数据包分块
- 发送接收均需确认
- 超时重发
- 数据校验
- 数据包排序
- 控制流量
- 报文结构
- TCP/UDP端口号存在的意义
- TCP/UDP通过16bit端口号来识别应用程序
- 知名端口号由Internet号分配机构来管理(Internet assigned numbers authority,IANA)
- 现状
- 1-255端口号分配给知名的网络服务
- 256-1023分配给unix操作系统特定的服务
- 1024-5000 临时分配的端口号
- 5000以上端口号保留给应用服务
- 常用端口
ftp 21,ssh 22,telnet 23,smtp 25,domain 53,tftp 69,http 60,pop3 110,snmp 161,ms sql server 1433,mysql 3306,Oracle 1521 - TCP建立连接过程-三次握手
总结(打电话举例):
小王:在吗(SYN)?
- TCP/UDP通过16bit端口号来识别应用程序
- 提供面向连接的、可靠的字节流服务
- 作用:
老王:在的(ACK),你能听到吗(SYN)?
小王:可以听到(ACK)
- 传输层协议-UDP(user datagram protocol用户数据报协议)
- 作用:提供面向事务的简单不可靠信息传送服务
- 特点:
- 无连接、不可靠
- 协议简单。占用资源少,效率高等
- 传输层需要关注的安全问题:
- 拒绝服务:syn flood、udp flood、smurf
- 欺骗:TCP会话劫持
- 窃听:嗅探
- 伪造:数据包伪造
- 典型攻击示例:
- SYN Flood(大量消耗连接数攻击,三次握手只完成前两次,最后一次不发送SYN包给服务端,让服务端大量消耗连接会话窗口)
- SYN Flood(大量消耗连接数攻击,三次握手只完成前两次,最后一次不发送SYN包给服务端,让服务端大量消耗连接会话窗口)
- 应用层协议
- 应用层协议
- 作用:定义运行在不同端系统上的应用程序进程,如何相互传递报文。
- 典型的应用层协议
- 域名解析:DNS
- 电子邮件:SMTP/POP3
- 文件传输:FTP
- 网页浏览:HTTP,HTTP
…………
- 存在的安全问题
- 拒绝服务:超长URL链接
- 欺骗:跨站脚本、钓鱼式攻击、cookie欺骗
- 窃听:数据泄露
- 伪造:应用数据篡改
- 暴力破解:应用认证口令暴力破解等
- 典型攻击:DNS欺骗
- 应用层协议
- 基于TCP/IP协议簇的安全架构
- 网络接口层:通过建立专用通信链路,在主机或路由器之间提供安全保证;
对应安全通信协议如下:
PPTP(在PPP协议上开发的全新点对点隧道协议),
L2TP(在链路层为客户端与服务器端之间建立经过认证的虚拟私有网络),
PPP,L2F等。 - 互联网络层:重点是解决IP协议的安全问题。
对应安全通信协议:IPSec(Internet Protocol Security)- IPSec提供安全性功能:
- 访问控制
- 无连接的完整性
- 数据源认证
- 机密性保护
- 有限的数据流机密性保护
- 抗重放攻击等
- IPSec(基于AH协议):提供无连接完整性、数据源认证,抗重放
- IPSec(基于ESP协议):加密需要保护的载荷数据,为这些数据提供机密性、完整性保护
FQA:ESP和AH可以独立使用,也可以结合使用
- IPSec提供安全性功能:
- 网络接口层:通过建立专用通信链路,在主机或路由器之间提供安全保证;
- 下一代互联网协议-IPV6安全特性
- IPV6报文也更简单
- ipv4报头具有20和八位二进制数和12个基本报头字段,然后是选项字段和数据部分(通常是传输层数据段)。
- ipv6报头具有40个八位二进制数、三个ipv4基本报头字段和五个附加报头字段。
- IPV6报文也更简单