对认证机制最常见的攻击的是会话劫持(session hijacking)或中间人攻击(person-in-the-middle attack)。其思想是攻击者设法扮演一个合法用户。为此,攻击者将窃听两个合法用户、服务器之间的电子会话。然后,攻击者假装成其中一个用户,试图欺骗另一方。这种攻击可以是主动的,也可以是被动的。被动攻击只是察看两个合法用户之间的会话,不会有主动危害。主动攻击则不仅会察看数据流量,而且还会实施某种行动,比如偷窃资源、修改内容等等。 对认证机制最常见的攻击形式是重放攻击。攻击者捕获从一个用户传送给服务器或另一个用户的信息。然后攻击者试图重放相同的数据包。换句话说,攻击者试图实施合法用户之前执行的动作。攻击者只需在合法用户退出登录后的某个时候,重放含有已加密口令的数据包,以响应认证请求。换句话说,通过重放合法用户的已加密口令,攻击者可以像合法用户那样试图登录到服务器。因此,无须知道原始口令,攻击者就可以危及认证系统的安全。 为了防止这类攻击,通常是往消息添加时间数或递增的序列号。这可以确保重放的较旧消息能理解被识别为重复消息,并把它丢弃掉。这就可以使重放攻击失败。