信息网络安全 | 笔记一
第1章 引言
一般来说,信息安全有一下4个基本目标:
- 保密性
- 完整性
- 可用性
- 合法使用
1.1 网络安全需求
- 敏感信息对安全的需求:
- 根据多级安全模型,信息密级由低到高划分为秘密级、机密级、绝密级
- 敏感非机密信息也应进行加密保护
- 网络应用对安全的需求:
- Internet发展速度迅猛,存在着巨大的发展空间和潜力
- 网络安全是互联网发展中需要解决的一个重要问题
- 多级安全模型:秘密级、机密级、绝密级
1.2 安全威胁与防护措施
- 基本概念
- 安全威胁:是指某个人、物、事件或概念对某一资源的保密性、完整性、可用性或者合法使用所造成的危险。攻击时某个安全威胁的具体实施。
- 防护措施:是指保护资源免受威胁的一些物理的控制、机制、策略和过程。脆弱性是指在实施防护措施中或缺少防护措施时系统所具有的弱点。
- 风险:是指对某个已知的、可能引发某种成功攻击的脆弱性的代价的度量。
- 安全威胁可以分为故意和偶然两类,故意的威胁又可以分为被动攻击和主动攻击。
- 被动攻击:只对信息进行监听,而不对其进行修改。
- 主动攻击:对信息进行故意的修改。
- 基本威胁:(与4个安全目标相对应)
- 信息泄露
- 完整性破坏
- 拒绝服务
- 非法使用
- 主要可实现威胁:安全威胁中,主要的可实现威胁一旦成功实施,就会直接导致其他任何威胁的实施。主要分为渗入威胁和植入威胁
- 渗入威胁
- 假冒
- 旁路控制
- 授权侵犯
- 植入威胁
- 特洛伊木马
- 陷门
- 渗入威胁
- 潜在威胁:在某个特定环境中,对任何一种基本威胁或主要的可实现的威胁进行分析,就能发现某些特定的潜在威胁,而任何一种潜在的威胁都可能导致一些更基本的威胁发生。
- 窃听
- 流量分析
- 操作人员的不慎所导致的信息泄露
- 媒体废弃物所导致的信息泄露
- 最主要的几种的安全威胁:
- 授权侵犯
- 假冒攻击
- 旁路控制
- 特洛伊木马或陷门
- 媒体废弃物
- 安全防护措施
- 物理安全
- 人员安全
- 管理安全
- 媒体安全
- 辐射安全
- 生命周期控制
1.3 网络安全策略
- 安全策略:是指在某个安全域内,施加给所有与安全相关活动的一套规则。 安全域:通常是指属于某个组织机构的一系列处理进程和通信资源。
- 安全策略有几个不同等级:
- 安全策略目标:对索要保护的资源要达到的安全进行的描述
- 机构安全策略:规范机构进行管理,以便达到安全策略目标
- 系统安全策略:描述特定的信息系统工程,以支持机构的安全策略
- 授权:授权是安全策略的一个基本组成部分,它指主体(用户、终端、程序等)对客体(数据、程序等)的支配权利,它规定了谁可以对什么做些什么。
- 访问控制策略:属于系统级安全策略,它迫使计算机系统和网络自动地执行授权。被划分为:
- 强制性访问控制策略(MAC,Mandatory Access Control):每当主体尝试访问对象时,都会由操作系统内核强制实施授权规则,目标是限制主体对对象或目标执行某种操作的能力。
- 自主性访问控制策略(MDC,Discretionary Access Contol):指用户有权对自身所创建的访问对象(文件、数据表等)进行访问,并可将对这些对象的访问权授予其它用户,或从授予权限的用户收回其访问权限。
- 基于角色的访问控制(RBAC,Role-based Access Control)
- 基于任务的访问控制(TBAC)
- 基于对象的访问控制(OBAC)
1.4 安全攻击的分类
攻击分为两类:
- 被动攻击
- 信息泄露
- 流量分析
- 主动攻击
- 伪装攻击
- 重放攻击
- 消息篡改
- 拒绝服务
1.5 网络攻击的常见形式
网络攻击的常见形式:
- 口令窃取
- 口令猜测攻击的三种基本方式:
- 利用已知或假定的口令尝试登录
- 根据窃取的口令文件进行猜测
- 窃听某次合法终端之间的会话,并记录所使用的口令
- 抵御口令猜测攻击方式
- 阻止选择低级口令
- 对口令文件严格保护
- 彻底解决口令机制的弊端:使用基于令牌的机制:一次性口令方案
- 口令猜测攻击的三种基本方式:
- 欺骗攻击
- 是一种冒充身份通过认证骗取信任的攻击方式。攻击者针对认证机制缺陷,将自己伪装成可信任方,与受害者进行交流,最终攫取信息或是展开进一步攻击。
- 常进行欺骗:IP、ARP、电子邮件、DNS、Web
- 缺陷和后门攻击
- 网络蠕虫:方式之一是向守护程序发送新的代码,蠕虫向“读”缓冲区内注入大量的数据。
- 缓冲器溢出(堆栈粉碎)攻击
- 软件缺陷
- 认证失效
- 协议缺陷
- 信息泄露
- 指数攻击:病毒和蠕虫,能利用程序快速复制并传播攻击。
- 蠕虫:程序自行传播
- 病毒:依附域其他程序传播
- 拒绝服务攻击(DoS) 分布式拒绝服务攻击(DDoS)
1.6 开放式系统互联安全体系结构
- X.800对安全服务的定义:为了保证系统或数据传输有足够的安全性,开放系统通信协议所提供的服务。
- 认证
- 访问控制
- 数据保密性
- 数据完整性
- 不可否认性
- X.800定义的安全机制:
- 特定安全机制:可以在特定的协议层实现的安全服务
- 加密
- 数字加密
- 访问控制
- 数据完整性
- 认证交换
- 流量填充
- 路由控制
- 公正
- 普遍安全机制:不属于任何协议层实现的安全服务
- 可信功能度
- 安全标志
- 事件检测
- 安全审计跟踪
- 安全恢复
- 特定安全机制:可以在特定的协议层实现的安全服务
1.7 网络安全模型
网络安全模型:保密通信模型
网络安全模型——访问控制模型
第2章 计算机网络基础
2.1 计算机网络的定义
简单定义:
计算机网络是一些相互连接的、自治的计算机系统的集合。
通用定义:
将处于不同位置并具有独立功能的多个计算机系统通过通信线路和网络设备连接起来,以实现网络资源共享,此系统称为计算机网络。
2.2 计算机网络体系结构
协议:
这些为进行网络中的数据交换而建立的规则、标准或约定就是网络协议。
这些规则明确规定了所交换的数据的格式以及有关的同步(含有时序)。
一个协议定义了在两个(含)以上的通信实体之间交换的报文格式和次序,以及在报文传输和(或)接收时所采取的动作。
网络通信是指在网络中的不同实体之间进行的通信。
网络分层的必要性:
网络实体之间的通信十分复杂,通过“分层” ,可以将庞大、复杂的问题转换为若干较小、简单和单一的
局部问题
ARPAnet最早提出分层思想。
网络协议的组成:
- 语法:数据与协议控制信息
- 语义:要进行的操作,如完成何种动作做出何种应答等
- 同步
网络协议的特点:
- 参与方必须大于等于二
- 依次执行
- 要具体完成一项任务
网络体系结构:
计算机网络的各层定义及其协议集合,称为网络体系结构,是对网络实体所应完成功能的精确定义。
实现方式不属于网络体系结构。
OSI参考模型/五层参考模型/TCP/IP参考模型
1
2
3
4
5
6
7
8
9
10应用层 | |
表示层 | 应用层 | 应用层
会话层 | |
----------------------------------------
传输层 | 传输层 | 传输层
网络层 | 网络层 | 网际层
数据链路层 | 数据链路层 |
物理层 | 物理层 | 网络接口层
OSI七层模型 | 五层模型 | TCP/IP四层模型OSI参考模型中共分为7层
低三层面向通信,可用软硬件实现
高三层面向信息处理,由软件实现
传输层联系上下层
TCP/IP体系的网络接口层可以包括多种通信网
IP协议支持多种网络技术互联以形成一个逻辑网络,提供了主机到主机的通道。
TCP和UDP提供了应用到应用到传输通道。
数据单位:
- 应用层:用户数据、用户消息
- 传输层:数据段、报文
- 网络层:分组、包
- 链路层:帧
- 物理层:位
2.3 分组交换技术
分组交换技术(Packet switching technology)也称包交换技术,是将用户传送的较长的数据划分成较短的一定长度的分组,通过传输分组的方式传输信息的一种技术。
每个分组的前面有一个分组头,用以指明该分组发往何地址,然后由交换机根据每个分组的地址标志,将它们转发至目的地,这一过程称为分组交换。
2.4 Internet的基本知识
- Internet的构成:
- 边缘部分:由连接在Internet上的主机(用户终端、服务器)构成,用户直接使用边缘部分进行通信和资源共享。
- 核心部分:由大量的网络和连接这些网络的路由器组成。
- 服务类别:
- 面向连接的服务:通信双方在传输数据之间先建立连接。如TCP协议
- 无连接的服务:不需要先建立连接,是“尽力传递”的服务。如UDP协议、IP协议
- Internet上的主机至少拥有一个IP地址,任何两台主机的IP地址不能相同。
- IP地址的划分经历了三个阶段:分类的IP地址、子网的划分、无分类编址
(一)分类的IP地址
- IP地址:32位,4字节,由网络标识和主机标识两部分组成
- IP地址分5类:
- A类:0开头,网络标识占8位
- B类:10开头,网络标识占16位
- C类:110开头,网络标识占24位
- D类:1110开头,为组播地址
- E类:11110开头,保留以后使用
- 特殊地址/保留地址:
- 网络地址:主机号全为0,用于表示指向某个网络的地址
- 直接广播地址:主机好全为1,网络号不为0时,表示一个物理网络上的所有主机,只能作为目的地址使用,所发送的数据包将到达一个特定网络上的所有计算机
- 有限广播地址:32位全为1时,表示在该主机所在的物理网络的一次广播
- 本地地址:32位全为0
- 所以计算某网络可用的最大主机数时需要减2(全0和全1)
(二)子网的划分
- 子网掩码(SUBNET MASKS)的作用是用来区分网络上的主机是否在同一网络取段内
- 从主机号中借用一部分,两级的IP地址转变为三级的IP地址结构
- 将子网掩码和IP地址进行逐位相“与”,所得的结果就是网络地址
(三)无分类编址(CIDR)
- CIDR表示方法:IP地址/net-id的位数
IP地址和MAC地址:
- 一个路由器至少有两个IP地址和两个MAC地址,但是路由器的IP地址不会出现在IP数据报中。
- 在网络交换机上建立MAC地址和IP地址映射表,由ARP协议实现48b的MAC地址与32b IPv4地址之间的自动转换。
- 链路层看到的只是MAC帧,IP数据报被封装在MAC帧中,在不同的网络上传输时,MAC帧的首部会发生变换。
IPv6:
- IPv6:128位,分为8组,每组4个十六进制表示
- 将多个具有0值的连续片段替换成双冒号,但是双冒号在IPv6中只能出现一次,如:
FA06::1/64
- 优点:
- 地址空间大
- 支持IPsec协议,更安全
- 优化了网络性能,在寻址和路由上更快,提高了传输效率
- 自动配置机制,可以自动获取IPv6地址
端口:
- 端口是传输层的概念
- 端口 是用来标志进程的“端口”,就是协议端口号。
- 端口号的主要作用是表示一台计算机中的特定进程所提供的服务。
- 小于1024的端口为特权端口/熟知端口。
第3章 Internet协议的安全性
3.1 Internet协议概述
在TCP/IP参考模型中:
- 应用层:HTTP、SMTP、FTP
- 传输层:TCP、UDP
- 网际层:IP、ARP
- 网络接口层
3.2 网际层协议
3.2.1 IP协议
IP(Internet Protocol,IP)协议:网际互连协议,它主要负责实现数据包的传输和路由的选择。
IP地址:32位
IPv4协议:数据报由首部和数据净荷两部分组成,首部固定分为20字节的固定部分和可选字段。
数据报的前四位为版本号,IPv4表示为4(0b0100),IPv6示为6(0b0110)
关于IPv6:
- IPv6与IPv4一样,它通过IPSec协议来保证IP层的安全。IPSec是IPv6的一个组成部分,而对IPv4来说是可选的。但是本质上,IPv6并不能比IPv4更安全。(IPsec是为IP网络提供安全性的协议和服务的集合,它是VPN中常用的一种技术。 由于IP报文本身没有集成任何安全特性,IP数据包在公用网络如Internet中传输可能会面临被伪造、窃取或篡改的风险。通信双方通过IPsec建立一条IPsec隧道,IP数据包通过IPsec隧道进行加密传输,有效保证了数据在不安全的网络环境如Internet中传输的安全性。)
- IPv6尚未得到全球广泛应用,人们开发了许多协议以实现从IPv4到IPv6的过渡。
- 若让IPv6数据通过防火墙,防火墙就必须支持IPv6。若防火墙不支持IPv6,就要开通IPv6隧道。
IP协议的特点:
- 无连接:IP协议为无连接的数据报服务,各数据报独立传输,传输路劲和到达顺序均不同
- 不可靠:不含有错误检测,或错误恢复的编码。如果需要可靠性保证,需要在上层使用TCP协议
- 点对点:是点对点协议,虽然IP数据报携带源IP和目的IP地址,但进行数据传输时的对等实体一定相邻设备(同一网络中)的对等实体
- 采用尽力传输的思想,效率高,实现简单
- 无状态:不同步传输数据的状态信息,无法处理乱序和重复的IP数据包;IP协议提供标识字段唯一标识IP数据包,以处理IP分片和重组,不指示接收顺序
IP协议的主要功能:
- 分配IP地址:为每个连接到互联网上的设备分配唯一的IP地址
- 路由选择:IP协议根据路由表选择最佳的路径将数据包传输到目的地
- 分组传输:数据被分成若干个数据包进行传输,每个数据包都有自己的目的地址和源地址
- 分片和重组:IP协议可以将大的数据包进行分片,传输到接收方后再进行重组
IP协议的安全问题及防护措施:
受被动攻击,容易被监听、窃取
防护:加密
没有错误检测,不能保证数据部分的正确性
防护:对数据进行完整性检测
攻击者可以伪造源地址,即IP欺骗攻击
防护:添加源地址鉴别机制
IP数据报在传输过程中要经历被分段和重组的过程,攻击者可以在包过滤器中注入大量病态的小数据报,来破坏包过滤器的正常工作。
防护:许多防火墙能够重组分段的IP数据报,以检查其内容
特殊的目的地址,如定向广播地址等
防护:配置路由器禁止发送广播数据报
3.2.2 ARP协议
地址解析协议(Address Resolution Protocol,ARP)是根据IP地址获取物理地址的一个协议。
MAC地址:48位
ICMP协议的安全问题及防护措施:
ARP欺骗攻击:
C主机向A主机欺骗自身为B,向B主机欺骗自身为A,则AB之间的通信将会全部会转发给C,可以完全控制AB之间的流量,发动被动攻击(流量监测、获取涉密信息)或主动攻击(伪造数据)。
防护措施:在交换机上配置IEEE 802.1x协议,攻击者连接交换机时需进行身份认证;建立静态ARP表。
3.2.3 ICMP协议
控制报文协议(Internet Control Message Protocol,ICMP)是一个重要的错误处理和信息处理协议,不仅用于传输差错报文,还传输控制报文,用于通知主机到达目的地的最佳路由,报告路由故障。
是Ping和Tracert的重要组成部分。
ICMP协议的安全问题及防护措施:
- ICMP重定向攻击:攻击者对ICMP报文进行重定向,使得目标机器遭受劫持和拒绝服务等攻击。
- ICMP路由器发现攻击:在进行路由发现时,ICMP并不对应答方进行认证,使得它可能遭受严 重的中间人攻击。攻击者假冒正常的路由器,使用伪造信息应答ICMP询问,接收方无法知道响应是伪造的。
- 防火墙穿透攻击:通过防火墙穿越攻击技术(Firewalking),攻击者能够穿越某个防火墙的访问控制列表和规则集,进而确定该防火墙过滤的内容和具体的过滤方式。
3.2.4 IGMP协议
组管理协议(Internet Group Management Protocol,IGMP)是TCP/IP 协议族中负责IP 组播成员管理的协议。
功能:
主机通过IGMP通知路由器希望接收或离开某个特定组播组的信息。
路由器通过IGMP周期性地查询局域网内的组播组成员是否处于活动状态,实现所连网段组成员关系的收集与维护。
举例:
- IGMP查询周期为60s,使用D类地址
- 地址范围:224.0.0.0-239.255.255.255
- 群组主机地址:224.0.0.1(代表子网上的所有计算机)
- 群组路由器地址:224.0.0.2(代表子网上所有路由器)
IGMP协议的安全问题及防护措施:
- 利用查询报文:较低IP的路由器发送伪造的查询报文,合法的查询方则不会再查询,会转变为相应查询请求。
- 利用离开报文进行DoS攻击:攻击者伪装某合法用户发送伪造的IGMP离开报文,组播路由器会认为该用户已经离开则不再向他发送询问请求,导致拒绝服务攻击。
- 利用报告报文
- 防护措施:采用公钥密码技术实现组播组成员的身份认证
3.2.5 OSPF协议
开放最短路径优先协议(Open Shortest Path First,OSPF)是一个内部网关协议,用于在单一自治系统内实施路由决策
是分布式的链路状态路由协议,每个路由器保存全网链路信息,并计算出OSPF路由表
OSPF协议中规定了认证域,但是作用有限:
- 节点仍使用简单口令
- 某个合法用户遭破坏后他的消息不再可信
- 攻击者重复旧的会话内容
3.2.6 BGP协议
边界网关协议(Border Gateway Protocol,BGP)将单一管理的网络转化为由多个自治系统分散互连的网络
安全问题:
BGP缺乏一个安全可信的路由认证机制,无法对所传播的路由信息的安全性进行验证。
3.3 传输层协议
3.3.1 TCP协议
传输控制协议(Transmission Control Protocol,TCP)是一种面向连接的、可靠的传输层通信协议。
三次握手过程:
- 客户端 --> 服务器:SYN=1,序列号=X
- 客户端 <-- 服务器:SYN=1,ACK=1,序列号=Y,确认号=X+1
- 客户端 --> 服务器:ACK=1,序列号=X+1,确认号=Y+1
TCP协议的安全问题及防护措施:
SYN FLOOD攻击:针对TCP连接建立阶段的三次握手过程
攻击者不断发送简历TCP连接请求的SYN数据报,使得服务器忙碌,无法接受正常请求,是拒绝服务攻击。
防护措施:在服务器前端部署网络安全设备(防火墙)进行数据包过滤
TCP会话劫持攻击:TCP协议不对数据包加密和认证
TCP协议确认数据包的真实性主要依据是判断数据包中独有的32位序列号是否正确。如果攻击者能够预测目标主机的起始序号,就可以欺骗该目标主机。
防护措施:在TCP连接建立时采用一个随机数作为初始序列号。
针对TCP的拥塞控制机制的特性,在TCP连接建立后的数据阶段攻击
攻击者可以利用拥塞机制,周期性地制造网络关键节点的拥塞,最终达到降低正常传输能力目的。
防护措施:实时监测网络异常流量
3.3.2 UDP协议
用户数据报协议(User Datagram Protocol, UDP)是一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务
安全问题:最常见的UDP攻击为DoS攻击,而UDP Flood攻击又是DoS攻击中最普遍的流量型攻击。攻击源发送大量的UDP小包到攻击目标,使得目的主机忙碌。
防护措施:
- 若攻击包是大包,则根据攻击包大小设定包碎片重组大小。在极端情况下,可考虑丢弃所有UDP碎片。
- 若攻击端口为业务端口,根据该业务UDP最大包长度,设置UDP的最大包长度,可以过滤异常流量。
- 若攻击端口为非业务端口,通常通过设置UDP连接规则,要求其首先建立TCP连接,然后再进行下面的业务,以阻止非法连接。
3.4 应用层协议
3.4.1 RIP协议(端口:UDP 520)
动态路由选择协议(Routing Information Protocol, RIP)是一种动态内部路由/网关协议,用于自治系统内的路由信息的传递。
安全问题:
- 攻击者伪造RIP路由信息,并向邻居路由发送,若干轮更新后网络可能会瘫痪
- 利用网络嗅探工具获得远程网络的RIP路由表,通过欺骗工具伪造RIP报文,再利用重定向工具截取、修改和重写向外发送的报文,控制网络的报文信息。
防护措施:
- 将路由器的某些接口配置为被动接口,停止广播路由更新报文,但是可以接受收到的更新报文。
- 配置路由器的访问控制列表,只允许某些IP地址的路由更新进入列表。
3.4.2 HTTP协议(端口:TCP 80)
超文本传输协议(Hyper Text Transfer Protocol, HTTP)是一个客户端和服务器端请求和应答的标准,是互联网上应用最广泛的一种网络协议。
安全问题:
- HTTP协议采用明文传输,不进行数据加密。使用网络嗅探工具可以容易的获得明文数据
- HTTP为无状态连接,只对报文头部的数据长度进行校验。消息容易被篡改,易受中间人攻击。
防护措施:
- 在HTTP和TCP之间添加安全套接层,主要为SSL(443端口)及TLS实现。
- HTTPS添加安全套接层,实现了双向身份认证、加密、防止重放等安全功能。
3.4.3 TELNET协议(端口:TCP 23)
远程登录协议(Teletype Network,TELNET)
安全问题:
- 使用简单的账户名称和口令登录,容易被记录和泄露。
- 受到主动攻击,如劫持Telnet会话并在认证后插入额外指令。
防护措施:
- 对Telnet会话进行加密。目前出现了几种Telnet的加密解决方案,它们分别为SSH、Stel、SSLtelnet等协议。其中,SSH已经成为远程登录的标准协议。
3.4.4 SSH协议(端口:TCP 22)
安全壳协议(Secure Shell,SSH)是一种在不安全的网络上建立安全的远程登录或其他安全网络服务的协议
特点:
- 支持身份认证和数据加密,并采用“挑战/相应”机制代替名称和口令认证
- 可以代替Telnet作为安全的远程登陆方式
安全问题:
无服务器认证:在不安全网络环境中没有可信机制对服务器的真实性进行认证。
防护措施:检验主机密钥来认证服务器的正确性
不检测协议版本:版本协商时如果采用了有安全漏洞的版本,则可能会被攻击。
防护措施:对采用有安全问题软件的通信方,服务器可以中断TCP连接
主机密钥存储不安全:SSH协议服务器的主机密钥存储在一个主机密钥文件中,若该文件被窃取或篡改,则会对协议的认证机制造成严重威胁
防护措施:增强主机密钥文件的管理
3.4.5 DNS协议(端口:UDP 53)
域名系统(Domain Name System)是一个分布式数据库系统,实现域名与IP地址之间的映射。1个为主根服务器,在美国,12个为辅根服务器,其中,9个放置在美国,欧洲2个,位于英国和瑞典,亚洲1个,位于日本.
安全问题:
- DNS欺骗攻击: 攻击者假冒域名服务器
- DNS缓存中毒攻击:攻击者给DNS服务器注入非法网络域名地址
- DNS重定向攻击:攻击者将DNS名称查询重定向到恶意DNS服务器上
防护措施:
- 不要采用基于名称的认证
- 不要把秘密的信息放在主机名中
- 采用DNSsec新标准
3.4.6 SMTP协议(端口:TCP 25)
简单邮件传输协议(Simple Mail Transfer Protocol, SMTP)是用于发送邮件的协议
安全问题:
- 可成为拒绝服务攻击(DoS)的发源地,导致邮件服务器无法使用
- 邮件名为黑客提供一些有用信息
- “开放中继”允许任何人之间的邮件传递
防护措施:
- 使用SMTP认证,并与加密SMTP会话结合使用,从而避免“开放中继“。
- 用IMAP4协议取代。
3.4.7 MIME协议
多用途网间邮件扩充协议(Multipurpose Internet E mail Extention,MIME)是广泛应用的一种电子邮件技术规范。
安全问题:
- 当MIME应用于电子邮件系统时,自动运行MIME编码消息隐藏着巨大的风险,这些消息中被编码的结构信息能够指示客户端软件要采取何种行动;
- 对MIME存在一种分段攻击;
- MIME的其它安全风险:邮递可执行程序或邮件含有危险的PostScript文件,是传播蠕虫和病毒的主要途径。
防护措施:
- 禁用MIME客户端的自动运行功能
- 拒收不完整邮件
- 禁止下载带有可执行程序的MIME消息
3.4.8 POP3协议(端口:TCP 110)
邮局协议(Post Office Protocol,POP)是一个邮件接收协议,它的第3个版本称为POP3。
安全问题:
- POP3协议非常简单,甚至可采用PerI脚本程序非常容易地实现,所以非常不安全。
- POP3口令以明文传输,使用sniffer等网络监听软件很容易捕获用户口令。
- 采用APOP对用户名和口令进行"挑战/响应”机制进行身份认证,但对邮件内容没有加密保护。
- 口令以明文形式存储在服务器上,一旦服务器受到攻击,口令也被黑客窃取。
防护措施:
- 在防火墙上对邮件服务器的访问进行限制。
- 对POP3服务器的用户数据库进行安全加固。
- 采用IMAP4协议替代POP3协议,SSL/TLS对传输的数据进行加密。
3.4.9 IMAP4协议(端口:TCP 143, 993)
消息访问协议(Internet Message Access Protocol,IMAP)是一个邮件获取协议,第4个版本是IMAP4。
IMAP4与POP3一样,是收邮件协议。
安全问题:
- IMAP4采用"挑战/响应"机制实现用户认证,但这一机制用到保存在服务器端的共享秘密信息,一旦服务器被攻破,用户的秘密信息被黑客窃取。
防护措施:
- 使用杂凑函数将共享秘密进行杂凑运算,消除共享秘密的等值性。
3.4.10 PGP协议
PGP(Pretty Good Privacy)协议是常用的安全电子邮件标准。PGP包括5种服务:认证、保密、压缩、邮件兼容和分段。
安全问题:
公钥篡改
多用户系统上的PGP,使得暴露密钥和口令的可能性增大,篡改公钥将导致合法通信者无法解密文件,或导致攻击者可以伪造签名。
防护措施:采用数字证书技术确保公钥的可信性。
时戳不可信
问题描述:攻击者可以通过修改系统时间,对时间戳进行伪造,从而攻击者可实施重放攻击。
防护措施:建立第三方时间公证体系,由公证方在邮件上签上标准时间。采用国际标准时戳协议RFC3161。
信任模型缺陷
问题描述:为得到未核实身份的通信对方的有效公钥,PGP中引入了第三方,这带来了对第三方的信任问题。此外,PGP没有采用有效的PKI证书管理体系。
防护措施:对用户的信任度进行规范设置;建立有效的PGP证书管理体系。
3.4.11 FTP协议(端口:TCP 20/21)
文件传输协议(File Transfer Protocol,FTP)是Internet文件传送的基础,是TCP/IP协议族的重要协议之一。
FTP功能:
- 控制连接(21端口):在整个会话期间一直保持打开,客户发送的传送请求通过控制连接发送给服务器端的控制进程。
- 数据连接(20端口):用于传输文件。
安全问题:
- FTP反弹攻击:就是攻击者利用FTP协议的PORT命令,将数据发送到第三方,攻击者可利用FTP服务器对其他机器进行端口扫描和发送数据。
- 伪装攻击:攻击者可以将Java程序伪装成FTP客户机发动攻击。
- 口令探测:客户机与服务器之间的消息是以明文的形式传输的,运行FTP协议时,访问FTP服务器的口令很容易被探测或猜测到。
- 获取ROOT权限:ftpd后台守护程序开始时以root用户权限运行,若攻击者取得了root权限,就可以为所欲为。
防护措施:
- 主动模式下,FTP服务器限制PORT命令的IP地址为客户端IP且端口大于1024。
- 在被动模式下,可使用PASV命令。
- 禁止运行含有Java的脚本程序。
- 使用SFTP协议对用户名和口令进行加密传输。
3.4.12 TFTP协议(端口:UDP 69)
简单文件传输协议(Trivial File Transfer Protocol,TFTP)是用来在客户机与服务器之间进行简单文件传输的协议。
安全问题:
TFTP用于提供简单、开销较小的文件传输服务,采用UDP协议,提供不可靠的数据流传输服务,不提供授权与认证机制,使用超时重传方式来保证数据的到达。只提供文件传输而不验证文件是否成功传送,在可靠性与安全性上没有保证。
防护措施:
除非真的需要此协议,否则不应该在任何及其上运行该协议;若要使用应确保对其正确配置,严禁上传配置文件。
3.4.13 NFS协议(端口:UDP 2049)
网络文件系统(Network File System,NFS)是一个基于TCP/IP网络的文件共享协议。
功能:
- NFS允许一个系统在网络上与他人共享目录和文件。
- 通过NFS协议,用户可以像访问本地文件一样访问远端系统 上的文件,在远端系统的共享文件进行创建、修改和删除操作。
- NFS协议采用基于远程过程调用的分布式文件系统结构。
安全问题:
- NFS协议缺乏用户验证机制,需加强客户端访问控制。
- 2049号端口处于无特权范围,使防火墙禁止其它进程访问2049。
- 客户机可对服务器实施DoS攻击(客户机可伪造返回数据包,创建setuid程序来发动DoS攻击),应设置禁止加载不可信资源选项。
- 服务器可对客户机植入恶意程序,对外来文件进行病毒木马查杀。