主题: PostfixAdmin 存在安全隐患,请所有管理员尽快修正。

Hi, all.

简述:

    PostfixAdmin 的登录页面存在安全隐患。

问题描述:

    PostfixAdmin 的登录页面(login.php)在登录失败时,会明确显示是用户名
    不存在,或用户名正确但密码错误。

    用户名错误时的提示信息(languages/cn.lang):
        - '登录失败, 请确认你是使用你的邮件地址登录!'

    用户名正确,但密码错误时的提示信息(languages/cn.lang):
        - '密码错误!'

    这样的错误提示信息,虽然对使用者友好,但却极易让破坏者据此猜测邮件
    系统的用户账号(包括管理员和普通用户)。

受影响的 iRedMail 版本:

    * 所有版本

修正方法:

    这里以 PostfixAdmin-2.2.1.1 版本为例。

    * 备份!备份!备份!

      将已有的 PostfixAdmin 目录整个备份。例如复制到 /root/ 目录下做一个
      备份:

        # cp -rfp /var/www/postfixadmin-2.2.1.1/ /root/postfixadmin-2.2.1.1.2008.10.28

    * 从文件下载区下载补丁(假设补丁下载到 /root 目录下):

        - 补丁文件名:
          postfixadmin-login-security-issue.patch

        - 下载区地址:
          http://groups.google.com/group/iredmailsupport/files/

    * 进入 PostfixAdmin 的根目录,在 Shell 命令行下打补丁:

        # cd /var/www/postfixadmin-2.2.1.1/
        # patch -p0 < /root/postfixadmin-login-security-issue.patch

      命令的输出为以下内容则表示补丁已经成功打上:

        patching file login.php
        patching file users/login.php
        patching file languages/en.lang
        patching file languages/cn.lang

备注:

    补丁中不包含繁体中文的翻译,所以繁体中文的用户除了打补丁以外,还需要
    手工编辑 PostfixAdmin 目录下的 'languages/tw.lang' 文件,在文件的中间
    加入以下翻译条目即可(将英文句子翻译为繁体中文即可):

    $PALANG['pLogin_incorrect'] = '<span class="error_msg">Username or password in not correct!</span>';

给大家带来不便,敬请谅解。

更多讨论请参考 PostfixAdmin-devel@ 邮件列表:
https://sourceforge.net/mailarchive/forum.php?thread_name=49057E07.3060806%40gmail.com&forum_name=postfixadmin-devel

-- 
Best regards.

- Open Source Mail Server Solution for RHEL/CentOS 5.x:
  http://code.google.com/p/iredmail/

回复: PostfixAdmin 存在安全隐患,请所有管理员尽快修正。

注:文档链接/补丁文件只有加入 iredmailsupport@ 的管理员才能访问。

访问以下页面了解如何加入 iredmailsupport@ 技术支持邮件列表:
http://www.iredmail.org/wiki/index.php/ … ss_Stories