Hacker News 中文摘要

RSS订阅

库尔特被干掉了 -- Kurt Got Got

文章摘要

Fly.io公司的Twitter账号被钓鱼攻击入侵,原因是CEO库尔特·麦基遭遇了精心设计的钓鱼骗局。攻击之所以成功,一方面因为骗局设计巧妙,另一方面公司对Twitter安全不够重视。公司表示此次事件仅影响Twitter账号,未造成实质风险,并以幽默口吻承认管理层因年龄代沟不熟悉年轻员工的网络文化。

文章总结

标题:Kurt中招记

我们的推特账号被盗了。事发瞬间我们就察觉了,也完全清楚被盗原因。除了推特账号(和一位Fly.io员工的自尊心)外,没有任何东西受到威胁。说真的,这太离谱了。

事情是这样的:我们勇敢的CEO Kurt Mackey遭遇了钓鱼攻击。

如果这是次严重攻击,我们不会这么轻描淡写。但就这次事件而言,任何其他态度都显得虚伪。

攻击者如何得手

原因有二:一是钓鱼攻击手段高明,二是推特不在我们"认真对待事项"的范围内。

这次钓鱼攻击之所以成功,是因为它击中了我们管理团队的心理弱点:我们这群老古董完全不懂如今年轻人的梗。

几个月来,我们雇了位实习生/承包商在推特上发布各种"炫酷"开发者梗图(应该是这么叫的)。问题在于,我们根本看不懂这些梗——字面意思都懂,就是get不到笑点。

但反对这些内容时,我们要面对两大阻力: 1. 这些梗图比我们自己发的推文更受欢迎 2. 我们的Z世代员工一致认定我们太"尬",没资格评判

Kurt收到的钓鱼邮件堪称精准打击——就像一把手术刀,直指中年大叔最深的不安全感。攻击者精心设计这封邮件来触发Kurt的自动反应:"这特么是什么鬼?我们为什么要发这个?"

我们很快就发现账号被盗(ATO是"被黑"的潮人说法),因为多人同时收到邮件通知@flydotio账号的邮箱被改成了achilles19969@gmail.com。我们立即审计了1Password中的所有登录信息,并切断了最近获取过凭证的所有访问权限。

万幸的是,没人被长时间锁定。我打电话告知Kurt他被锁定的原因,五秒钟后他就意识到发生了什么。(警告:别点那个链接)

为何会成功

关键在于:这种事情怎么可能发生?

与普遍认知相反,防钓鱼不能靠训练人们不点击链接。当然要提醒他们别点!但在持续压力下,人人都会中招。有研究为证。真正的解决方案是使用防钓鱼认证技术,这就是U2F、FIDO2Passkeys的核心理念。

Fly.io的基础设施正是这样保护的:所有系统都通过身份提供商(我们用的是Google)进行防护,并要求使用防钓鱼的多因素认证。想通过钓鱼获取日志、操作Stripe退款或查看基础设施指标?门都没有。

但推特就...几年前推特经历了一些变故,我们很多人转投Mastodon后来Bluesky的怀抱。2023-2024年间,我们甚至觉得推特可能不会长久。

结果推特成了我们的"遗留共享账号",凭证存在1Password中,还与Z世代承包商共享†(†在此向被误认为黑客 proximate cause 的承包商致歉)。这就是为什么Kurt会从1Password获取凭证,登录members-x.com来回应alerts-x.com的邮件。

其实本可避免:虽然"x.com"确实容易被钓鱼,但1Password浏览器插件本应发现"members-x.com"并非"x.com"的合法子域名。

为何耗时这么久

攻击者立即撤销了所有令牌并设置了新2FA。虽然我们很快重置了密码,但需要X.com介入才能锁定他们,这花了约15小时(这不算慢,行业标准就这样)。

事件期间我们保持低调(仅声明"我们知情且掌握详情,这只是推特问题"),因为整体来看这次攻击相当温和:只是个拙劣的加密货币骗局,攻击者可能零收益,却给我们带来15+小时的品牌损害和安全团队的戒备。用户未受影响,账号也没被用来劫持客户。攻击者一度删光我们的推文历史——这简直是在帮我们大扫除。所以我们静待次日早晨账号恢复。

经验教训

"我最大的收获是:Kurt居然真的会看邮件。"

显然Kurt将失去代码提交权限。每位CEO终将迎来这一刻,现在轮到他了。

另外,我们终于能为下次SOC2审计提供"事件响应"的案例样本了。

也许我们会多发推特,也许加倍投入Z世代梗图。谁知道呢?现在的社交媒体太诡异了。但有一点确定:现在我们的推特登录已改用Passkeys。

(再次警告:千万别点那个页面上的任何东西)

如果有人想参与Fly.io的"空投"来"认领"我们的"代币",那个网站还在。你可以连接钱包!然后赔光所有钱。不过如果我们真搞ICO,你同样会赔光。

能想出"拥有属于你的一片天空!"这种口号,对攻击者已经是足够的惩罚了。

任何没有防钓鱼MFA或SSO身份验证的系统,终将被钓鱼。尽管嘲笑我们的倒霉遭遇吧,但请引以为戒。

上一篇:Litestream v0.5.0发布

评论总结

总结评论内容:

  1. 对CEO坦诚态度的认可
  • "I'm always glad to see when companies make a heartfelt mae culpa"(jryio)
  • "Great writeup, but also gotta say that's some excellent phishing"(herval)
  1. 关于钓鱼攻击的普遍性
  • "anyone can get phished...just rely on you being busy"(stavros)
  • "security audit company...said it worked every single time"(bradgessler)
  1. 安全措施建议
  • "Use passkeys for everything"(stavros)
  • "properly working password managers are important"(tgsovlerkhgsel)
  1. 对公司安全实践的批评
  • "Every system is only as secure as its weakest link"(paxys)
  • "Fly has consistently surprised me at how late they have been to doing standard stuff"(rtpg)
  1. 对钓鱼邮件质量的讨论
  • "this doesn't strike me as a very convincing phishing attempt"(deepfriedrice)
  • "pretty incredible the level of UI engineering"(grinich)
  1. 对公司沟通风格的批评
  • "I'm tired of the 'oh lol we're just doing shit' vibes"(rtpg)
  • "Yet Another 'oh lol we made a whoopsie' tone"(rtpg)
  1. 对事件严重性的不同看法
  • "the consequences here were pretty limited"(roughly)
  • "if it could happen to Kurt, it could happen to anyone"(roughly)