网络协议安全

ARP

防御

IP

IP协议在传输过程中没有加密

任意节点均可以构造IP分组

攻击者可以利用IP协议的拆包合包,将IP包切分为非常小的碎片,然后发送给被攻击目标

防御

过滤掉进来的非法IP地址的分组

过滤掉发出去的非法IP地址的分组

追踪IP分组的路径

TCP

这是一种利用TCP协议缺陷,发送大量伪造的TCP连接请求,使被攻击方资源耗尽(CPU满负荷或内存不足)的攻击方式

批注 2020-06-04 094929

批注 2020-06-04 095019

批注 2020-06-04 095111

批注 2020-06-04 095215

批注 2020-06-04 095306

UDP

批注 2020-06-04 095801

批注 2020-06-04 095820

批注 2020-06-04 095836

安全协议技术

安全协议是在消息交换和处理过程中使用了若干密码算法的协议

安全协议缺陷

攻击者模型

攻击者可以以各种方式来获取到协议主体之间的通信信息,Dolev-Yao 攻击者模型假设攻击者具有的能力:

  1. 截获并延迟消息的发送
  2. 截获并重新发送消息到任意接收者
  3. 截获并修改消息,并可转发给任意接收者
  4. 可以产生新的消息(包括新鲜的消息)
  5. 可以对消息进行分离
  6. 可以对多个消息进行组合
  7. 知道密钥后可解密消息和重新加密消息
  8. 可以查看和掌握协议相关的公用信息

由于存在攻击者,因此设计一个安全的协议是非常困难的

常见缺陷

中间人攻击

攻击者位于协议通信双方中间而发动的攻击

重放攻击

指攻击者利用其消息再生能力生成诚实用户所期望的消息格式,并重新发送,从而达到破坏协议安全性的目的

对策

sequenceDiagram  participant Alice as Alice(挑战者)  participant Bob as Bob(应答者)  Alice->>Bob: 这是包含新鲜随机数(Nonce)的挑战  Bob->>Alice: 这是对该新鲜随机数(Nonce)进行变换后的应答
sequenceDiagram  Alice ->> Bob: 这是包含时间戳的消息  Bob ->> Alice: 这是对时间戳进行变换后的消息

交错攻击

平行会话攻击

反射攻击

当一个诚实的主体给某个意定的通信方发送消息时,攻击者截获该消息,并将该消息返回给消息的发送者

类型错误攻击

攻击者欺骗某个主体,使得他把一次性随机数、时戳或者身份等信息嵌入到某个密钥中去,从而导致协议安全性被破坏

姓名遗漏攻击

如果与消息相关的主体的名字不能从消息中推断出来,则攻击者利用此缺陷所发动的攻击称之为“归因与姓名遗漏攻击”

安全协议设计原则