DMARC -- 反钓鱼邮件利器 or 昙花一现?
发表日期:2018-01-02 文章编辑: 浏览次数: 2532
【写在前面】
————————————————————————
目前来说,[DMARC]协议是一个新鲜事物(对DMARC的介绍请见我的另一篇博文 http://blog.163.com/pandalove@126/blog/static/9800324520123147328334/ ),有越来越多的Email服务商支持这份协议,利用它来拦截钓鱼邮件和诈骗邮件。 而DMARC联盟(http://dmarc.org),银行/在线支付商,Email服务商,IT媒体,普通用户等各方无不拍手称好,但也已经有资深IT专业人士犀利地指出其局限性。
闲暇之时,梳理了一下各方的声音,在本文小结时也表达一下一些个人拙见。
【观点1】
————————————————————————
第一类观点(主流观点): DMARC协议是打击钓鱼邮件的实用利器。
这类观点主要来自: DMARC官方+主流媒体等。
他们认为,DMARC协议抓住了钓鱼邮件的要害(信头From字段),并结合主流的DNS/SPF/DKIM等基础技术做为辅助工具。一方面,对DMARC协议的支持技术难度不大,另一方面,DMARC带来的开销不大但识别效果明显,是一款低开销+高效应+诸多优势的电子邮件安全工具。
下面是持此观点的一些网页:
【观点2】
————————————————————————
第二类观点: DMARC协议对钓鱼邮件并非无所不能。
这类观点主要来自: IT专业人士等。
这类观点并非主流观点,只是我在DMARC讨论邮件列表中看到一位法国IT同行(Sébastien Goutal,来自vade-retro.com)的非正式评论,但也算代表了一类观点。
Sébastien认为,DMARC对于“域名伪造”的钓鱼邮件(exact-domain phishing)有一定杀伤力,但是对所有类型的钓鱼邮件来说,DMARC作用还是有限的。Sébastien手头有统计数据显示,现在exact-domain phishing的数量逐日减少,一旦phisher们知道DMARC的存在,狡猾的他们将会弃用exact-domain这类钓鱼手段(这对phisher们来说影响不大),而从容地改用/新造其他诈骗技术手段。
Sébastien的邮件还提出一些打击钓鱼诈骗的建议,譬如多方协作的on-line database,鼓励支付商使用双因素认证(Two-factor Authentication)技术等,但有点超出DMARC的讨论范畴。
大家可在DMARC讨论邮件列表的历史记录中找到Sébastien的这封邮件。
【观点3】
————————————————————————
第三类观点: DMARC的吸引力不够。
这类观点主要来自: 小型ISP,小型邮件系统等。
相对上述两类观点,持第三类观点的人数就更少了,但还是会有。
如果你加入了DMARC讨论邮件列表,兴许你会看到类似的观点:
John Levine:...I'm sure DMARC will be just dandy for big providers and big brands, who tend to know what they're doing. But I wouldn't spend a lot of effort trying to implement policy from random domains you don't know.
他们的说法也无可厚非。
对一些大中型公司/邮箱系统站点来说,升级其邮件系统的MTA,使之支持DMARC检查,难度/代价可能不大。但对于一些偏小型或技术支持有限的公司/站点来说,或许就不一样了,尽管他们心底也看好DMARC。
【个人拙见】
————————————————————————
借着对DMRAC有些许了解,我也斗胆说说自己对DMARC的看法,仅代表个人观点。
首先,DMARC是优秀的。官方聪明地借用SPF/DKIM这两项被广泛支持的协议,并抓住了钓鱼邮件经常伪造的信头From:字段,以此提出了自己的检查逻辑。
其次,DMARC是有效的。在实际应用中,可以看到部署DMARC的机器上有数量不菲的钓鱼邮件/诈骗邮件/垃圾邮件被DMARC算法识别出来,这些邮件谎称发自Paypal,Facebook,LinkedIn,Amazon,emarsys等知名厂商,要求收件人提供个人资料,银行账户密码等信息,邮件内容和措辞口吻都和官方邮件一模一样,迷惑性极高,普通网友难以辨其真伪而往往上当受骗。而正是DMARC帮助 网易/Gmail/Hotmail(这3家都是DMARC官方委员会的企业)等支持[DMARC]协议的Email服务提供商将它们识别出来,真真切切地保护了自己的邮箱用户。
下面是一张DMARC拦截钓鱼邮件的记录截图:
从DMARC官网上的多份DMARC Draft草案,从DMARC官方组织不同的交流会议,从全球范围内越来越多人加入/支持DMARC等等迹象,就可以看出这一点。
当然,DMARC也不是无所不能的。从技术层面说,目前的DMARC只能识别出针对“信头From:字段的域名”的伪造,还无法识别其他的伪造手段,譬如:
- 伪造信头Sender字段
- 伪造信头From字段的DisplayName部分
- 通过Cousin Domain手段来伪造信头From字段的域名(如 Xxx@Paypa1.Com,Xxx@Faceb00k.Com等)
- 通过“追加后缀手段”来伪造信头From字段的域名(如 Xxx@Paypal.Com.Xhgd.Net,Xxx@Facebook.Com.Sdiahyqgqbd.Com等)
- Etc
这样一来,phisher们就仍有办法绕过DMARC,继续发送钓鱼邮件。。。
【小结】
————————————————————————
应该说,打击钓鱼邮件/诈骗邮件依旧是任重道远。或许真如 Sébastien先生所言,DMARC终有一天会失去功效(不过我个人觉得,这一天还远着)。
但无可否认的客观事实是,诞生至今未到半年的DMARC协议,已经在全球各地发光发热,保护着知名厂商的域名不被非法利用,减少Email用户们免受钓鱼邮件/诈骗邮件之苦。
假如你有需要发送交易性邮件(譬如 注册信息,密码找回,账单通知,交易记录 等邮件)的域名,而且你的域名正在被abuser用于钓鱼 或者 希望避免被用于钓鱼,或者你只是想了解一下是不是有人在钓鱼你的域名,你都可以在DNS里发布一条DMARC记录(注意根据你的域名的实际情况,灵活变动p/sp/pct标签来发布合适的DMARC记录),借助DMARC来达到你的目的。
但假如你的域名规模很小或没有被钓鱼的风险(譬如 小型个人网站(通常坏人“不屑于”去钓鱼这类域名),提供免费注册帐号的网站(如163.com,坏人们宁可批量注册/购买帐号,也不愿大费周章去钓鱼这类域名) 等域名)的话,那么DMARC记录可能跟你关系不大,大可不必为赶时髦而去发布DMARC记录,免得弄巧成拙。
我相信随着DMARC协议的不断成熟和完善,随着越来越多的人发布DMARC记录来保护自己的域名,将会有越来越多的企业及其用户受惠于此。
和许许多多同行者一样,我们也衷心期待着在这个垃圾邮件/钓鱼邮件/诈骗邮件肆虐猖獗的时代,能有更多IT从业者,更多社会机构(法律/行政/社会组织/etc)齐心协力,提出可行的方案打击这些坏人,还互联网一片纯净天空 。