跳到主要内容

13. 安全考虑 (Security Considerations)

据推测,使用APOP命令为POP3会话提供来源标识和重放保护。因此,同时实现PASS和APOP命令的POP3服务器不应允许给定用户使用两种访问方法;也就是说,对于给定的"USER name",只允许PASS或APOP命令,但不能同时使用两者。

此外,请注意,随着共享密钥长度的增加,推导它的难度也会增加。因此,共享密钥应该是长字符串(比APOP命令示例中显示的8字符示例长得多)。

重要的是要认识到APOP命令不为POP3会话提供数据完整性或机密性保护。它仅为初始认证交换提供来源认证和重放保护。

对USER命令回答-ERR的服务器正在向潜在攻击者提供关于哪些名称有效的线索。

使用PASS命令会在网络上以明文形式发送密码。

使用RETR和TOP命令会在网络上以明文形式发送邮件。

除此之外,本备忘录中不讨论安全考虑。


关键安全问题 (Key Security Issues):

  1. APOP与PASS对比:

    • APOP提供认证而不以明文发送密码
    • 服务器应仅允许每个用户使用一种认证方法
  2. 密码安全 (Password Security):

    • PASS命令以明文发送密码
    • APOP需要长共享密钥以确保安全
  3. 数据保护 (Data Protection):

    • APOP仅保护初始认证
    • 通过RETR/TOP发送的邮件内容未加密
    • 考虑使用TLS/SSL进行会话加密
  4. 信息泄露 (Information Disclosure):

    • 错误消息可能揭示有效用户名
    • 服务器应谨慎处理错误响应

建议 (Recommendations):

  • 尽可能使用APOP而非USER/PASS
  • 实施TLS/SSL以保护整个会话
  • 对APOP使用长随机共享密钥
  • 考虑实施认证延迟以防止暴力攻击