起始#
我在我的邮箱收到了一封奇怪的邮件,邮件里说我的 ENS candinya.eth
将在 24 小时内到期。邮件威胁我说这将是我最后的续费机会,并留下了一个巨大的按钮提示我去点击来 “续费”。
但我觉得很奇怪 —— 我注册这个 ENS 已经不止一年了,而且我早就在我的日历上设置了续费提醒,怎么可能会突然到期呢?
分析#
当我看到发件人的地址时,我确信这是一封钓鱼邮件。发件人甚至懒得伪造一个类似 ens.domains
的域名,直接使用了 [email protected]
这个邮箱地址。
我检查了邮件的原始文本,确认了该邮件是从 amenominakanushi.okuizumo.ne.jp (okuizumo.ne.jp [211.12.232.201])
服务器发出的,并经过了 DKIM/SPF 签名验证。如果签名验证未通过,我的邮箱系统会自动拦截该邮件,但既然签名是有效的,那么很可能是该邮箱被攻击者滥用了。
在我继续关注下面的续费按钮之前,让我们先来看看底部的 Unsubscribe from this email
链接,猜猜它指向哪里?
https://google.com/unsubscribe
说实话,我觉得挺好笑的。
但攻击者显然不希望我们 “退订” 这封邮件,它希望我们点击那个巨大的续费按钮,从而引导我们进入它精心布置的诈骗陷阱。那我们就顺着它的意思,一起去看看它到底在搞什么鬼。
这个按钮本身没有什么特别的,它只是一个带有样式的简单的 a 标签。但它指向的链接很有趣 —— 一个以 bing.com 开头的重定向链接。使用常见域名进行重定向是一种非常常见的攻击手段。我们之前就遇到过使用 YouTube 登出跳转到攻击网站的事件,所以只需要一点小技巧,我们就能找到这个链接背后的网站。
也就是标出来的 archivodigital[dot]org/venezuela-centro-de-computacion-afoco-2003/
。
得到域名后,首先要做的是进行一番安全审查。使用 whois 查询,我们可以看到这个域名是在 2020 年 12 月 14 日注册的,注册商是 NameSilo,NS 解析服务商是 CloudFlare(又是经典的滥用 CF 来挡刀的行为)。
但是使用 CF 并不意味着绝对安全,我们经常会遇到使用 CF 的 nginx 服务器,但没有阻断 443 回退的情况,导致第一个使用了 SSL 加密的站点的证书主机名泄露。所以我们继续搜索这个根域名,发现了三个服务器:
哇,这些服务器居然是在俄罗斯。难道这是传说中的俄罗斯黑客?但我觉得傻到用自己的服务器的黑客应该不会存在吧,估计是他们故意栽赃。
简单查看一下原始数据,很明显,这些都是一些小偷小摸的家伙。一个明显的特征是它们的默认页面是一个重定向到 ENS 错误页面的 302 重定向,但这个域名显然不可能是 ENS 的工作域名。所以只有一种可能:这些服务器确实是攻击者的服务器,并且为了防止无关人员进入(例如嗅探或爬虫),特意设置了一个看似天衣无缝的门槛。
但我们可是有邀请函的(笑)。
打开一个安全的浏览器(最好使用 Tor,但不知道为什么今天我的 Tor 连接不上,只好使用隐私模式下的 FireFox),输入链接,然后回车!
然后…… 我被重定向到了上面的 ENS 主站,打开失败 🤡
我试了几个浏览器,结果都是一样的。甚至直接点击邮件中原始引导的更新按钮也没有效果,都跳回了 ENS 的原始页面,就好像这个邮件实际上并不是攻击,而只是 ENS 的提示邮件一样。
我不知道为什么,但我感到非常震惊。
复盘#
虽然我没有挖掘到更多的信息,但这也是一次难得的安全演练机会:如果下次攻击者没有逃跑怎么办?如果攻击者伪装发件人身份,或者恰好发送邮件的时间正好是续费时间点,又该怎么办?在涉及资金安全的问题上,再谨慎也不为过。
至于我的邮箱,因为这是我的公开邮箱,我猜攻击者是从我在 ENS 上标注的 GitHub 账号中获取了我的邮箱信息。在 ENS 官方设置的续费提醒邮箱中,我使用了另一个前缀,一方面可以方便区分来源并将其分类整理到邮箱文件夹中,另一方面也是一种安全防范的小技巧。
当然,最好的情况是希望不要收到诈骗邮件。虽然这种邮件确实比那种在脸上贴二维码的愚蠢钓鱼邮件有趣多了。
(完)