信息安全 - 通信与网络安全
一、网络模型
常用的网络参考模型包括OSI模型与TCP/IP模型,它们定义了适用于不同供应商网络产品互连的协议集,而协议指的是系统如果进行网络通信的标准规则集。
下面是OSI七层模型的定义,以及和TCP/IP模型间的映射关系。
图1-网络参考模型数据封装
应用生成的数据会逐层进行封装,增加报头信息,支持传输与接收方的消息解析。
应用层,表示层和会话层: 数据流 - Data Streams
传输层:数据段-data Segments (TCP) 和 数据报-datagrams (UDP)
网络层:数据包 - data Packets
链路层:数据帧 - data Frames
二、常见协议介绍
DNS协议
作用:DNS是运行在应用层一个协议,用于将域名解析为具体的IP地址
安全风险:1)域名劫持-domain hijacking: 攻击DNS服务器,修改域名对应的IP到假冒服务器的IP
2)域名嫁接-domain pharming: 将有效URL恶意重定向到虚假网站。攻击方式有两种,一是修改用户主机上的host文件;另一种是通过DNS投毒,修改DNS服务器上的缓存记录
安全控制措施:1)启用DNSSEC,在DNS服务器上加入PKI以验证电子签名
2)DNS拆分:拆分内外部的DNS服务到不同的服务器上
DHCP协议
作用:DHCP是运行在应用层一个协议,用于为主机分配动态IP地址
工作步骤:
1-Discover(终端寻找DHCP服务器)
2-Offer(服务器提供可用IP和参数)
3-Request(终端确认接受指派设置)
4-ACK(服务器确认向终端指派IP和租约)
安全风险:伪造身份攻击:恶意系统伪装成合法网络客户端,申请IP加入网络
安全控制措施:在交换机上启用DHCP Snooping,只为选定的系统基于其MAC分配IP
TCP协议
作用:TCP是传输层的一个协议,是一种面向连接的全双工协议
端口:TCP和UDP都有65536个端口,前1024个被称为服务端口,已进行了标准化分配
1024-45191 被称为已注册的软件端口,分配给IANA上已注册的网络软件
45192-65535被称为动态或临时端口
需记住的常用端口: FTP-20/21; SSH-22;Telnet-23; SMTP-25; DNS 53; HTTP-80
POP3-110; NTP-123; Windows File Sharing - 135/137/138/139/445
HTTPS-443; LPR/LPD-515; SQL Server - 1433/1434; Oracle-1521
H.323-1720; PPTP-1723; RDP-3389;
建立连接的三次握手
1. 客户端发送SYN(同步)标记的数据包到服务器
2. 服务器发送SYN/ACK(同步和确认)标记的数据包响应客户端
3. 客户端以ACK(确认)标记的数据包响应服务器
报头标记位
除了SYN和ACK外,还有如下几个重要的标记位
FIN:完成,用于请求关闭TCP对话
RST:重置,用于立即断开TCP会话
PSH:推送,表示需要立即将数据推送给应用
URG:紧急,表示紧急数据
ICMP协议
作用:ICMP是网络层的一个协议,用于提供状态消息,经常用于测试网络上的连通性和故障检测。 Ping&traceroute使用的就是ICMP协议
安全风险:可被攻击者用于重定向流量,或用于绘制网络体系结构
安全控制措施:
1)使用防火墙规则来应对,只允许必要的ICMP数据包进入网络
2)启用IDS/IPS监测
NAT协议
作用:NAT是网络层的一个协议,用于隐藏网络中的内部IP地址,节约公有IP,并提供内部网络安全性
私有地址范围: RFC1918 规定的有 10.0.0.0-10.255.255.255; 172.16.0.0-172.31.255.255, 192.168.0.0 - 192.168.255.255
ARP协议
作用:ARP是数据链路层的一个协议,用于提供IP和MAC之间的映射关系
安全风险: ARP表中毒,修改系统的ARP表,让自己接受到属于其他计算机的数据包
安全控制措施:启用IDS监测网络中频繁传送的伪造ARP应答
三、网络组件
路由器
作用:路由器工作在网络层,用于连接相同的网络,并将网络拆分为不同的网段。
路由协议:用于识别数据来源和目的系统之间的传输路径
1)距离向量协议,基于距离(网络跳数)和方向决定路线; 代表是RIP协议,仅用在小型网络中
2)链路状态路由:通过计算信息包的大小、链路速度、延迟、网络负载等多个变量决定最佳路由。 OSPF协议是使用链路状态。
交换机
作用:多端口桥接设备,能放大电信号,并为不同计算机或交换机提供连接。
交换机工作在数据链路层,基于MAC地址进行流量转发。现在也有三层和四层交换机,通过数据标记提供路由,被称为MPLS(多协议标签交换)
VLAN:将设备基于业务需要划分为不同的逻辑分组,为不同分组应用不同的安全策略。不同VLAN中的设备即使物理相邻,也需要路由消息。
安全风险:VLAN Hopping VLAN跳跃攻击,攻击者冒充交换机,通知其他交换机它是一个中继,所有VLAN消息都会发送给攻击者的系统。
VXLAN:通过在两个网络设备间建立一条逻辑隧道,让服务器象是接在一个虚拟的二层交换机上。它的好处是可以让虚拟机在迁移是突破原来二层网络的限制,即使是迁往另外的IP网,通过逻辑隧道,仍然可以继续连接。
防火墙
作用:限制另一个网络对特定网络的访问
包过滤防火墙: 第一代防火墙,基于包头中的源/目的地址,端口和协议做包过滤
状态监测防火墙: 维护状态表,跟踪每个通信会话
代理防火墙:断开通信通道,由防火墙分别和两方建立连接。分电路级和应用级代理防火墙
动态包过滤防火墙: 内部系统动态选择连接端口,防火墙创建ACL允许外部响应从该接口放回,连接结束后,该规则自动关闭
内核防火墙: 第五代防火墙,代理防火墙的一种,检查和处理都在内核上进行,速度更快
NGFW:采用了基于特征的IPS引擎,能连接外部数据源,获取最新的攻击特征或统一规则
防火墙规则分类
1)沉默规则:不响应不重要的数据包,减少日志规模
2)隐形规则:不允许未经授权的系统访问防火墙软件
3)清理规则:放弃并记录任何不符合签名规则的流量
4)否定规则:用来替代any-to-any
TCP Wrapper: 作为一个应用可以利用用户ID和系统ID做简单的流量过滤,可以当作一个防火墙来实现基于端口的访问控制
NAC-网络访问控制
通过控制设备接入网络来防止对网络资源的未授权访问。NAC有接入前控制和接入后控制两种方式,接入前控制要求设备连接前要满足所有安全需求;接入后是基于用户活动来允许或拒绝访问,使用预定义的授权矩阵。 NAC的三种实现方式如下:
1. 802.1x协议
基于端口的网络接入控制协议,是一种C/S结构的认证系统,客户端连接到设备端后,可主动或由设备端发起认证,连接后台的RADIUS服务器完成身份认证。 客户端通过EAP协议完成认证后,设备端将客户端连接的端口状态设为 授权状态
2. MAC认证
基于端口和MAC地址对用户网络访问权限进行控制的认证方法,不需要按照任何客户端软件。
3. Portal认证
未认证设备连接网络后,强制访问Portal,用户需在Portal完成认证才能继续访问其他网络资源
CDN-内容分发网络
作用: 通过在不同区域的多台服务器,为距离最近的用户提供优化后的内容。提升用户访问速度,并且提升对DDoS攻击的承受能力
SDN-软件定义网络
作用:通过分布式软件来提供高度灵活性和效率的网络方案,实现了网络设备的集中配置和控制。
UTM-统一威胁管理
作用: 将多数安全功能集于一身的设备
四、网络安全技术
网络加密
作用:提供数据在网络传输时的机密性和完整性
1)链路加密: 包头和报文都加密,数据包在每一跳都重新机密并加密。发生在链路层和物理层
2)端到端加密:对报文进行加密,传输设备可读明文包头进行传递,报文达到对方应用后解密。发生在应用层
3)TLS加密:发生在传输层,对HTTP传输进行加密
身份验证
图2-远程连接身份验证无线安全技术
1. 无线网络攻击
1)战争驾驶 - War Driving
使用无线扫描器寻找周边未授权访问的无线网络信号,收集WIFI的SSID/频率/通道/加密协议等信息
2)非法无线访问点 - Rogue Access Points
一种是内部员工未经许可私自开通的无线接入点,能直接接入公司有线网络
另一种是外部攻击者伪造的接入点,通过编造SSID来诱骗新无线客户端连接
预防手段: 使用WIDS;让管理员定期对wifi信号进行检测
3)邪恶双胞胎 - Evil Twin
攻击者搭建一个伪造的AP,但完全克隆合法AP的配置信息,诱骗选择了自动连接的客户端错误连接到该伪造的AP
4)重放攻击 - Replay
利用捕获的通信数据尝试来重新建立通信会话,比如重播客户端的连接请求,欺骗基站。
控制措施:使用WIDS;使用一次性认证机制。
2. 无线安全技术
图3-无线安全技术补充:WPA3协议中使用“对等实体同时验证(Simultaneous Authentication of Equals,简称SAE)”取代了“预共享密钥(Pre-Shared Key,简称PSK)”,提供更可靠的、基于密码的验证。
VPN
作用:VPN通过建立网络通信隧道,能在不安全的网络中进行点对点的身份验证和数据传输
隧道技术:通过将协议报文封装在另一个协议中报文中,对协议数据内容进行保护
协议:
1) PPTP & L2F: 已被L2TP取代
2) L2TP:缺乏内置加密框架,通常使用IPSec。 支持RADIUS和TACACS+做身份验证
3)IPSec:最常用的VPN协议
AH身份验证头: 提供身份验证、完整性及不可否认性保护
ESP封装安全载荷:提供加密。
IPSec
IPSec有两种模式
1. 传输模式: 即点对点模式,主机A和主机B之间直接使用IPSec进行传输,所以两台主机都需要支持IPSec。 这种模式下,会在原有IP报头之后增加一个IPSec的报头。如果只使用AH,则IPSec报头中包含身份验证和完整性信息,如果使用ESP则对数据报进行完整加密
2. 隧道模式:是网关到网关的传输或是主机到网关的传输,对方网关接收到数据后,解开IPSec报文,做NAT转换替换源IP,再转发到主机B。这也就是常见的VPN实现方式。 在隧道模式中,数据发出前会在原有的IP报头之前生成新的IP报头+IPSec报头,并对原始IP报头进行加密。如果使用ESP还可对数据报内容进行加密。
总结:传输模式是点对点,只是额外增加了身份验证和报文加密。 隧道模式因为封装了原有的IP报头,除了身份验证和报文加密外,还能隐藏主机的私有IP。
ISAKMP-因特网安全联盟和密钥管理协议: 是IPSec协议体系中的一部分,用于提供框架来让通信双方建立、协商安全连接。它定义了密钥生成交换和认证数据交换的方式。它能让IPSec为单一主机同时启用多个VPN
语音安全
传统语音服务: PBX等容易受拦截,窃听等攻击
VoIP:一种将语音封装在IP包中的技术
安全风险: 1)伪造来电号码进行语音钓鱼或垃圾来电攻击
2)流量未加密情况下,可以窃听并解密通话数据
安全措施:使用SRTP(安全实时传输协议),它通过AES对消息进行加密提供机密性保护,同时使用HMAC提供消息认证和完整性保护
参考资料:
CISSP Official Study Guide - 第九版英文版 及 第八版中文版