电子邮件虽然便捷高效,但你真的了解其背后的安全风险吗?从邮件发送、传输到接收的每一个环节,都可能潜藏着漏洞,让攻击者有机可乘,轻松破解邮箱账号、窃取邮件内容。接下来,我们将逐一剖析这些薄弱环节,帮助您全面掌握电子邮件安全防护要点。
一、利用邮件服务器操作系统的漏洞
邮件服务器软件通常运行在特定操作系统之上,例如 Linux 或 Windows NT/2000。然而,这些操作系统的默认安装与配置往往存在诸多安全隐患,黑客能够轻易入侵系统,获取所有用户名和密码。
以 Windows 服务器为例。如果基于 Windows 2000 的 Exchange Mail Server 未经任何安全加固,并且开放了若干服务,入侵者便可通过终端服务器结合中文输入法漏洞,或者利用 IIS 的 Buffer Overflow 程序获取 Administrator 权限。随后使用 pwdump3 导出经过 Hash 处理的密码,再借助 L0pht 配合字典或暴力破解(Brute Force)手段,即可破解出用户密码。经验表明,若密码过于简单,几分钟内就能被攻破;即使是长度在 8 位及以下的密码,采用暴力破解方式也难以幸免,通常一天之内即可破解成功。
再看 Linux/UNIX 服务器。这类系统通常使用 Sendmail 作为邮件服务程序。一旦攻击者获得系统控制权,便可使用 John 等密码破解工具,从 /etc/passwd 或 /etc/shadow 文件中破解出用户密码。即便采用数据库保存用户信息和密码,同样面临被导出并破解的风险。
二、利用邮件服务器软件本身的漏洞
常见的邮件服务器程序,如 Sendmail、Qmail 等,在不同程度上均存在安全缺陷。以 Sendmail 为例,在旧版本中,通过 telnet 连接 25 端口,输入 wiz 命令后再输入 shell,即可获得一个 root shell;此外,debug 命令同样可获取 root 权限。Qmail 相比 Sendmail 更安全,但其附属组件 Qpoper 存在 Buffer Overflow 漏洞,攻击者可远程获取 root shell,进而完全控制邮件系统。
即便邮件服务器本身已较为安全,攻击者仍能通过其他方式获取敏感信息,例如用户名。telnet 到 25 端口后,输入 expn tom 或 vrfy tom,即可查询系统是否存在 tom 这个用户。虽然最新版本的 Sendmail 已禁用这两个命令,但攻击者可通过伪造发信人,然后使用 rcpt to 命令来判断用户是否存在。
获得用户名后,攻击者便可 telnet 到 110 端口,尝试使用简单密码进行连接,或利用字典进行暴力破解。因此,必须禁止非本域的中继转发(relay),或采用目前许多 ISP 正在使用的 SMTP 发信认证模块,这样才能有效提升邮件服务器的安全性。
除了 POP3 收信方式,目前通过 WEB 界面处理邮件也相当流行,但同样存在薄弱环节。通常系统通过 CGI 接收用户提交的 FORM 参数,包括用户名和密码。若验证通过,用户即可进入邮件管理页面。破解已知用户的密码时,有许多字典或暴力组合工具可用,例如小榕的《溯雪》,在密码设置简单的情况下,很快就能得出结果。此外,大部分 WEB 邮件系统都提供“忘记密码”功能,如果能破解接收重置密码邮件的另一个邮箱,或者猜出安全提示问题的答案,也能成功获取访问权限。
三、在邮件的传输过程中窃听
攻击者可在网络中安装 Sniffer 嗅探工具,并设定监听发往外部服务器 110 端口的数据包。通过收集到的通信信息,直接查看 user 和 pass 字段后的字符串,即可获得用户名及其对应的明文密码。
