Sendgrid的巨大安全漏洞

Sendgrid巨大安全漏洞

本周我们发生了一起严重的安全事故,足以让我们震惊。虽然客户的账户没有遭到损害,但这是真正的千钧一发。

和很多公司一样,都想确保邮件能够成功到达你的收件箱,我们使用第三方邮件服务,Sendgrid,来确保发送能力。

几周前,我们收到了一份与Sendgrid技术支持聊天的记录,很明显有人试图通过社会工程攻击【注1】访问我们的账户。虽然Sendgrid没有在这个企图上跌倒,我们还是警告他们这次入侵,并要求他们保证将来社会工程攻击的企图也不会奏效。他们做了回复,并安慰了我们:

根据政策,我们从来不会更改一个账户的凭据或某个用户的邮箱地址,尤其是通过聊天或email工单。 我们会提供链接或说明帮助用户去操作,但是那些页面仅在正确的凭据下才能被访问到。

然而,事实表明这项政策本周被无视了,有人设法通过电话说服Sendgrid并更改了账户上的email地址。我们从他们那里收到了一封邮件,但为时已晚。攻击者已经登录到Sendgrid接管了。

他注册了一个域名,chunkhost.info,“你能帮我把我们的邮箱地址从support@chunkhost.com修改为support@chunkhost.info吗?”听起来足够可信,Sendgrid没有验证其他资料就完全同意了。

为什么有人想接管我们的Sendgrid账户?

Sendgrid有一个功能,允许你密送每一条外出消息到一个隔离的email地址。一旦他们激活了这个功能,他们将在其追踪的两个账户上发起密码重设的请求,这两个账户都和比特币相关。

密码重设邮件被真实地发送到了我们的客户,但也密送给了攻击者。有了密码重设链接,他们能够修改密码,进而访问我们客户的账户资料。

幸运的是,受影响的客户都使用了我们的两步验证功能。这意味着你不仅仅需要密码,还有你手机生成的一个token才能登录。

我们客户的账户得到了保护,攻击者被阻止了。但是这太悬了。

在大约20分钟里,我们注意到发生了什么,并阻止了他们的访问。我们关闭了密码重设功能,重置了所有会话,并切换到一个本地邮件中继【注2】。一旦我们确信控制了事态,我们才和Sendgrid进行沟通。昨天,他们这样告诉我们:

很明显,文件中的邮件地址被我们的系统修改……成了support@chunkhost.info,这完全证实了你的怀疑,攻击者说服了我们其中一名员工修改了文件中的邮件地址。在邮件地址被修改之后,他们能够容易地请求一个新密码,并获得账户访问权。这应当从来都不会发生的,我们会严肃对待类似情况。我对你们所作的一切表示歉意,我将保证向我们员工重申,我们有那样的政策,其存在都是有原因的。
...

Clojure的web安全比你想象的还要差

ClojureWest大会结束了,Aaron Bedra发表了题为 Clojure.web/with-security的演说。如果你用Clojure开发web应用程序,你必须看这个视频。现在就看。

这篇博客综合了Aaron的讲话笔记和一些我自己的想法。

有多差?

“Clojure web应用程序是我曾经见过的、在安全方面做得最差的。” “……像PHP级别……没有框架级别,安全。” ---Aaron Bedra

Aaron宣称,根据可供选择的类库来倒腾你自己的(web)栈,这种Clojure思想方法导致了系统级的安全问题。我们有碎片,但是没有把它们组合成一个强健的、可靠的框架。相反,开发者挑选不同的类库,不是所有的类库都提供了完整的覆盖或健全的安全默认项。

密码管理

password/crypt相关操作的前三名类库(crypto-password, friend...

RoomScan:仅仅通过在屋子里转转就能得到一张楼层平面图

找不到你的卷尺了,或者懒得在CAD里草拟房间了?不要担心,RoomScan就在这里!只需拿着你的iPhone绕着一个地方的每面墙走走,你就能很快得到一张楼层平面图。

“人们应当宽恕RoomScan Pro,不要认为它是某种巫术,”在148apps的采访中说到。app魔术师Locometric使用iPhone(推测是陀螺仪之类的功能)内置硬件来记录位置、长度和墙的方向。尽管你可能不想只用这个app来建造房子,最终的平面图可以精确到半英尺——在你画草图时它是真正需要的。为了提高精确度,“Pro”版本为用户提供了手动输入他们自己的测量、增加门或窗户之类的选项。

roomscan app

如果你的手机上还有再安装一个工具的地方,你现在能够扔掉卷尺,前往app商店了。不要忘记在4月1号回来,那时候我们会在A+获得者的新款app分类中公布今年的获奖者。

roomscan app 图1