freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

自建可信钓鱼邮件服务器
2022-07-28 16:38:56
所属地 北京

01 邮件服务器简介

首先我们需要大致了解电子邮件的传递过程。如图,发件人创建的电子邮件会送到邮件服务器,然后通过smtp投递到收件人邮件服务器,最后收件人通过pop/imap 接受邮件,可以简单理解邮件服务器就是负责电子邮件收发管理的设备。

smtp/pop/imap协议:

  • smtp:

一种提供可靠且有效的电子邮件传输的协议

  • pop/imap:

电子邮件接受协议,区别是imap消息可以在多个设备上进行同步

1658997254_62e24a06c9cc2638cb214.png!small?1658997256527

02 邮件服务器对比

生活中最常见的是公共邮件服务提供商,如:qq、163等,使用这种方式发送的邮件可以享受高可信度的邮件待遇,但是使用者只有单个邮件地址的收发权限,并且邮件头、邮件内容、发信频率都受到严格限制。

除此之外,还可以使用第三方提供商,如:sendgrid、mailjet等,使用者只需要注册一个域名,然后证明此域名的归属,就可以使用该域名后缀的所有邮箱发邮件,但是由于邮件服务器由提供商提供,为了避免滥用导致ip进黑名单,使用者往往需要手机号、公司信息等核实,而且对邮件内容也会有审核机制。

对比之下,自建的邮件服务器由于可以伪装成和目标邮箱地址近似的后缀;可以使用域名下的所有邮件地址收发邮件;邮件内容和发件频率自主可控,所以备受邮件钓鱼攻击者的青睐。

03 复现钓鱼邮件服务器搭建

准备工作

1. 购买发件域名

2. 购买vps

新的 Ubuntu 18.04 VP*S 、禁用ipv6、内存大于1G

3. 设置hostname 为发件域名

如 box.example.com

4. 设置 域名的dns记录

把smtp、imap、发件域名解析到vp*s的ip

5. 设置 域名nameserver、vp*s反向dns

ns1.box.example.com
ns2.box.example.com
vps的反向dns解析到发件域名

6. 用postfix+dovecot搭建太繁琐了,这里使用mailinabox搭建,本质是一套邮件服务工具的组合安装包(如:postfix、dovecot等),提供一键部署,提供web界面管理等,基本满足私有邮件服务器的所有需求,官方教程见https://mailinabox.email/,类似的工具还有maddy、iredmail等。

#下载安装mailinabox
sudo curl -s https://mailinabox.email/setup.sh | sudo bash

安装过程

1. 确认邮件服务器的 hostname

1658997294_62e24a2e7478461cf558a.png!small?1658997295974

2. 确定时区、邮箱地址等后需要等待下载相关依赖

1658997315_62e24a4315a5f3f50b837.png!small?1658997316642

3. 安装完依赖后,设置邮箱地址密码

1658997338_62e24a5a806e3a94268cc.png!small?1658997339925

4. 安装完后会显示一个可访问的辅助搭建web地址

1658997358_62e24a6e69096836a049a.png!small?1658997359984

使用mailinabox web界面辅助搭建

主要功能介绍

system :检查、设置邮件服务器的证书、记录

mail&users :创建、管理邮件服务器的用户邮件地址

contacts/calendar :保存联系人、日历

web :设置域名web页面

点击检测system-status checks并按提示解决对应的问题

包含三个部分的状态检测

1. system 服务器的状态检测

2. network 检测服务器的网络情况

3. 发件域名检测 检测影响邮件服务器可信度的记录设置情况

检查的重点是:

第二部分25端口是否被禁用、ip是否为黑名单,如需要连接目标邮件服务器的25端口可以找vps提供商解封,ip为黑名单则需要申请换ip。

还有第三部分的Nameserver粘合记录设置、反向dns设置、tls/ssl证书设置。

1658997377_62e24a813d4cf74823fd5.png!small?1658997379411

进一步提高可信度

检查通过后,参考system-external dns页面,设置外部dns记录。

此处和主机域名相关的记录必须设置,否则会造成导致spf/dkim/dmarc检测不通过。

设置邮件地址

可以设置发件域名下的任意地址作为用户名,设置密码后,使用邮件客户端测试能否添加成功,服务器配置可以在Mail&Users - instructions里面查看。

1658997395_62e24a930ae21dc0df82e.png!small?16589973964231658997408_62e24aa043f64debe9582.png!small?1658997409489

使用mail-tester测试邮件信誉度

发送一封邮件到mail-tester的测试邮件地址。

主要检测以下几个点:

1. SpamAssassin检测

2. 邮件服务器可信度检测

3. 邮件正文检测

4. 发件IP黑名单检测

5. 无效链接检测

1658997420_62e24aaca7c882983e0e6.png!small?1658997422002

检测与防御

现有的恶意邮件检测依据主要包括:

1. 来源ip是否正常

2. 邮件可信度

  • 邮件服务器域名相关主机记录检测

  • 是否通过spf/dkim/dmarc检测

(1)spf:

检查HELO、MAIL FROM的域名的spf ip记录,是否和发件服务器ip匹配

(2)dkim:

请求dkim域名下的公钥,通过该公钥验证dkim签名

(3)dmarc:基于spf和dkim、不符合时怎么做,对应spf和dkim

检查是否spf和dmarc是否通过

检查from字段一致性,包括和spf域名一致性、和dkim域名一致性

3. 邮件内容是否正常

  • 垃圾邮件检测算法

  • 恶意链接等

我们看到原本耗时耗力,需要多种工具利用、dns记录设置才能搭建的可信邮件服务器,现在能通过自动化搭建工具快速搭建了,这无疑极大减小了攻击成本,对于日趋严峻的针对企业电子邮件用户的钓鱼攻击,建议防御方建立更完善的基于恶意邮件内容检测机制,和恶意邮件应急响应机制。

04 总结

在实战攻防中,无论是伪造发件人后缀、还是提高邮件送达率,稳定可靠的邮件服务器都是邮件钓鱼攻击中不可或缺的一环,由于自动化工具的使用,自建可信的钓鱼邮件服务器已经被越来越多的攻击者青睐。本文详细介绍了钓鱼邮件服务器的搭建流程,以及对应的检测防御建议。

# 网络安全技术
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录