此身份验证协议的严重安全漏洞是什么?

信息安全 协议
2021-08-17 07:33:48

作为练习,我被要求解决这个安全问题,但我遇到了一些困难。

一些符号:

  • C1 表示计算机 1
  • S1 表示 Server1,
  • TA 表示可信认证系统,
  • X -> Y | Z 表示 X 向 Y 发送消息 Z,
  • K_X,Y(m) 表示 m 用 X 和 Y 共享的对称密钥加密。

假设你有 C1 想要通过 TA 被 S1 识别,协议工作如下:

  • C1 -> S1 | C1
  • S1 -> C1 | 随机数1
  • C1 -> S1 | K_C1,TA(nonce1)
  • S1 -> 助教 | K_S1,TA(C1, K_C1,TA(nonce1))
  • TA -> S1 | K_S1,TA(nonce1)

为什么这不安全?也许是因为 C1 将其身份作为明文发送给 S1,而 Eve 可以尝试使用 C1 使用重放攻击来伪造她的身份?或者还有什么?

1个回答

这很容易受到 MITM 的攻击。Eve 所要做的就是坐在中间,将流量从 C1 转发到 S1,然后从 S1 转发到 C1。整个握手过程都可能发生,而 Eve 仍然可以与 S1 通信。