假设我不使用SSL,而是在HTTP标头中发送令牌。令牌包含用户ID并已加密。

我可以想象,中间人攻击者可以捕获令牌并使用它。如果我使用SSL,它应该足够安全吗?但是如果我不使用SSL ...

是否可以向令牌添加一些内容,例如用户的IP,以便可以检查令牌中的请求IP和加密的IP是否相同?

中间人攻击者可以伪造受害者的IP地址吗?生成令牌时可以使用任何其他与用户相关的信息吗?

谢谢!

最佳答案

中间人攻击者(MITM)可以伪造受害者的IP地址吗?


由于您将可能的攻击描述为“中间人”,因此,攻击者可以伪造受害者的IP地址。


  生成令牌时可以使用任何其他与用户相关的信息吗?


当然,请让用户生成一个不会被明文发送的随机数。最好确保服务器也执行相同的操作,以使中间人攻击者不能只是重播旧请求。用户如何确定自己与真实服务器而不是攻击者进行通信?使用证书更好地证明服务器的身份。

设计针对中间人攻击安全的协议时会遇到很多此类问题。如果解决所有这些问题,您可能会想出与SSL非常相似的东西。对于许多开发人员来说,建立自己的安全传输协议是不值得的。

10-04 12:16