Sendmail mail.local 漏洞发布时间:2000-04-23 更新时间:2000-04-23 严重程度:中 威胁程度:远程拒绝服务 错误类型:设计错误 利用方式:服务器模式 受影响系统 Misc详细描述 在SENDMAIL中的mail.local程序是作为本地邮件的递送代 理。mail.local使用LMTP(本地邮件传输协议)从标准输 入来获得信息并且将分析把信息放到用户邮件信箱,当在 LMTP模式下,mail.local使用信息结尾的".\n"来检查用户 的输入,SENDMAIL是根据上面的方法来处理当传递给 mail.local时候那些需要阻塞。现在存在这样的可能,如果 一段2047字节的以".\n"结尾的字符串来伪造信息的结尾, 任何在伪造信息结尾指示标志".\n"后的任意文本 mail.local将作为LMTP命令在处理,意味着伪造的信息可 以不受sendmail的过滤或记录发往任意一个邮箱。 另外一个问题是由于LMTP命令被执行,将从 mail.local产生相应的并且是没有被sendmail所期望的 回应,(它不是从I/O缓冲从获得),如果这些回应被产生 的话(若错误的响应),mail.local和sendmail将被死锁 并且I/O的缓冲将被填满。这将是local mail不能递发。 运行在Solaris 机器上的Sendmail 8.10.0和8.10.1, 可以修改信息头的Content-Length域来伪造结尾信息的 指示符来破坏用户邮箱 测试代码 暂无 解决方案 deadlock/LMTP问题在8.10.0和8.10.1里解决。 但在Solaris上的8.10.0;8.10.1还存在问题。 相关信息 |