Zimbra 和邮件轰炸防护

邮件轰炸是最古老的网络攻击类型之一。 从本质上讲,它类似于常规的 DoS 攻击,只不过不是向服务器发送一波来自不同 IP 地址的请求,而是向服务器发送一波电子邮件,这些电子邮件大量到达其中一个电子邮件地址,从而导致负载上显着增加。 此类攻击会导致邮箱无法使用,有时甚至会导致整个服务器出现故障。 这种类型的网络攻击由来已久,给系统管理员带来了许多积极和消极的后果。 积极因素包括对邮件轰炸的深入了解以及可以使用简单的方法来保护自己免受此类攻击。 负面因素包括用于执行此类攻击的大量公开可用的软件解决方案以及攻击者可靠地保护自己免受检测的能力。

Zimbra 和邮件轰炸防护

这种网络攻击的一个重要特点是几乎不可能利用它来盈利。 好吧,攻击者向其中一个邮箱发送了一波电子邮件,好吧,他不允许这个人正常使用电子邮件,好吧,攻击者侵入了某人的公司电子邮件,并开始在整个 GAL 中大量发送数千封信件,这是为什么服务器崩溃或开始变慢以至于无法使用它,接下来该怎么办? 将此类网络犯罪转化为真正的金钱几乎是不可能的,因此简单的邮件轰炸目前相当罕见,系统管理员在设计基础设施时可能根本不记得需要防范此类网络攻击。

然而,虽然从商业角度来看,电子邮件轰炸本身是一种相当毫无意义的行为,但它通常是其他更复杂、多阶段网络攻击的一部分。 例如,当黑客攻击邮件并使用它劫持某些公共服务的帐户时,攻击者经常用毫无意义的信件“轰炸”受害者的邮箱,从而使确认信在他们的信息流中丢失并且不被注意。 邮件轰炸还可以作为对企业经济施压的手段。 因此,对企业接收客户请求的公共邮箱的主动轰炸可能会使与客户的工作变得严重复杂化,从而导致设备停机、订单无法履行以及声誉损失和利润损失。

这就是为什么系统管理员不应该忘记电子邮件轰炸的可能性,并始终采取必要的措施来防范这种威胁。 考虑到这可以在构建邮件基础设施的阶段就完成,而且只需要系统管理员很少的时间和精力,所以根本没有客观原因不为您的基础设施提供邮件轰炸保护。 让我们看看 Zimbra Collaboration Suite 开源版如何实施针对这种网络攻击的防护。

Zimbra 基于 Postfix,后者是当今最可靠、功能最强大的开源邮件传输代理之一。 而其开放性的主要优势之一是支持多种第三方解决方案来扩展功能。 特别是,Postfix 完全支持 cbpolicyd,这是一种用于确保邮件服务器网络安全的高级实用程序。 除了反垃圾邮件保护和创建白名单、黑名单和灰名单之外,cbpolicyd 还允许 Zimbra 管理员配置 SPF 签名验证,以及设置接收和发送电子邮件或数据的限制。 它们既可以提供针对垃圾邮件和网络钓鱼电子邮件的可靠保护,也可以保护服务器免受电子邮件轰炸。

系统管理员需要做的第一件事是激活 cbpolicyd 模块,该模块预安装在基础设施 MTA 服务器上的 Zimbra Collaboration Suite OSE 中。 这是使用命令 zmprov ms `zmhostname` +zimbraServiceEnabled cbpolicyd 完成的。 此后,您需要激活 Web 界面才能轻松管理 cbpolicyd。 为此,您需要允许 Web 端口号 7780 上的连接,使用以下命令创建符号链接 ln -s /opt/zimbra/common/share/webui /opt/zimbra/data/httpd/htdocs/webui,然后使用 nano 命令编辑设置文件 /opt/zimbra/data/httpd/htdocs/webui/includes/config.php,您需要在其中写入以下行:

$DB_DSN="sqlite:/opt/zimbra/data/cbpolicyd/db/cbpolicyd.sqlitedb";
$DB_USER="root";
$DB_TABLE_PREFIX="";

之后,剩下的就是使用 zmcontrol restart 和 zmapachectl restart 命令重新启动 Zimbra 和 Zimbra Apache 服务。 之后,您将可以访问网络界面 example.com:7780/webui/index.php。 主要的细微差别是,该 Web 界面的入口尚未受到任何方式的保护,为了防止未经授权的人员进入该 Web 界面,您只需在每次进入该 Web 界面后关闭端口 7780 上的连接即可。

您可以通过使用发送电子邮件配额来保护自己免受来自内部网络的大量电子邮件的影响,该配额可以通过 cbpolicyd 进行设置。 此类配额允许您设置一个邮箱在一个单位时间内可以发送的最大信件数量的限制。 例如,如果您的业务经理平均每小时发送 60-80 封电子邮件,那么您可以将配额设置为每小时 100 封电子邮件,并考虑到较小的利润。 为了达到这一配额,经理必须每 36 秒发送一封电子邮件。 一方面,这足以充分发挥作用,另一方面,有了这样的配额,获得了您的一位经理的邮件访问权限的攻击者将不会对企业发起邮件轰炸或大规模垃圾邮件攻击。

为了设置此类配额,您需要在 Web 界面中创建新的电子邮件发送限制策略,并指定它既适用于在域内发送的信件,也适用于发送到外部地址的信件。 这是按如下方式完成的:

Zimbra 和邮件轰炸防护

此后,您可以更详细地指定与发送信件相关的限制,特别是设置更新限制的时间间隔,以及超出限制的用户将收到的消息。 之后,您可以设置发送信件的限制。 它既可以设置为发出的信件数,也可以设置为传输信息的字节数。 同时,对于超出规定限额寄出的信件,要区别对待。 因此,例如,您可以简单地立即删除它们,也可以保存它们,以便在更新消息发送限制后立即发送它们。 在确定员工发送电子邮件的限制的最佳值时,可以使用第二个选项。

除了发送信件的限制之外,cbpolicyd 还允许您设置接收信件的限制。 乍一看,这样的限制是防止邮件轰炸的一个很好的解决方案,但实际上,设置这样的限制,即使是很大的限制,也充满了这样的事实:在某些情况下,一封重要的信件可能无法到达您手中。 这就是为什么强烈建议不要对传入邮件启用任何限制。 但是,如果您仍然决定冒险,则需要特别注意设置传入消息限制。 例如,您可以限制来自受信任对方的传入电子邮件数量,这样,如果他们的邮件服务器受到威胁,就不会对您的企业发起垃圾邮件攻击。

为了防止邮件轰炸期间传入邮件的大量涌入,系统管理员应该做一些比简单地限制传入邮件更聪明的事情。 该解决方案可能是使用灰名单。 他们的操作原理是,当第一次尝试传递来自不可靠发件人的消息时,与服务器的连接突然中断,这就是信件传递失败的原因。 但是,如果在某个时间段内,不受信任的服务器尝试再次发送同一封信,则该服务器不会关闭连接,并且会成功发送。

所有这些行为的要点在于,自动群发电子邮件的程序通常不会检查已发送邮件的发送是否成功,也不会尝试再次发送,而一个人肯定会确定他的信件是否发送到地址与否。

您还可以在 cbpolicyd Web 界面中启用灰名单。 为了使一切正常工作,您需要创建一个策略,其中包含发送给我们服务器上的用户的所有传入信件,然后根据此策略创建灰名单规则,您可以在其中配置 cbpolicyd 等待的时间间隔来自未知发件人的重复回复。 通常是4-5分钟。 同时,可以配置灰名单,以便考虑来自不同发件人的所有成功和不成功的信件传递尝试,并根据其数量,决定自动将发件人添加到白名单或黑名单中。

我们提请您注意,灰名单的使用应以最大的责任感进行。 如果这项技术的使用与白名单和黑名单的持续维护齐头并进,以消除丢失对企业真正重要的电子邮件的可能性,那就太好了。

此外,添加 SPF、DMARC 和 DKIM 检查有助于防止电子邮件轰炸。 通常,通过邮件轰炸过程到达的信件不会通过此类检查。 讨论了如何做到这一点 在我们之前的一篇文章中.

因此,保护​​自己免受电子邮件轰炸等威胁非常简单,甚至在为企业构建 Zimbra 基础设施的阶段就可以做到这一点。 然而,重要的是要不断确保使用此类保护的风险永远不会超过您获得的好处。

来源: habr.com

添加评论