如何避免这个Apple Siri https破解场景?

在阅读有关“ 破解Siri ”的post后,我了解到从iPhone到Siri Https服务器的HTTPS流量通过创建:“破解”(解密):

  • 自定义DNS服务器
  • 假的HTTPS服务器(冒充’guzzoni.apple.com’)
  • 自定义SSL证书颁发机构

通过修改客户端(iPhone)DNS和SSL证书颁发机构设置,他们能够伪造完整的“环境”并解密流量。

但Apple(或其他任何人)怎么能避免这种“破解”/破解?

鉴于您信任已安装的证书颁发机构,HTTPS旨在确保安全。 由于任何人都可以在几乎任何设备上故意安装流氓/替代证书颁发机构,因此任何开发人员都不相信HTTPS可以保护数据免受其来自的计算机的影响。

经过一些阅读,似乎避免这种类型的黑客(我明白是着名的中间人攻击)的唯一方法是进行正确的身份validation。 这里解释得很好:

公钥算法可以保证消息的保密性,但它们不一定保证安全通信,因为它们不validation通信方的身份。 要建立安全通信,重要的是validation用于加密消息的公钥实际上是否属于目标接收者。 否则,第三方可能会窃听通信并拦截公钥请求,用自己的公钥替换合法密钥(中间人攻击)。

为了避免这种攻击,有必要validation公钥的所有者,这是一个称为身份validation的过程。 身份validation可以通过证书颁发机构(CA)来完成,证书颁发机构是两个通信方都信任的第三方。

CA颁发包含实体名称,公钥和某些其他安全凭证的公钥证书。 此类凭证通常包括CA名称,CA签名和证书生效日期(从日期,到日期)。

所以我猜想避免这种黑客攻击的唯一方法就是让客户端(这里是iPhone)使用预先确定的CA.

我将从两个事实开始分析情况:

  1. 从您的iPhone的角度来看,您的iPhone是值得信赖的。
  2. 从iPhone的角度来看,服务器是不可信的。

作为HTTPS上的第一步,我会挑战服务器来certificate它的身份。 挑战就像“签署我的UUID,这个时间戳和这个随机数” 。 使用已发布密钥的公钥加密 ,您可以validation您是否正在与您知道并信任的服务器通信。

这很容易受到中间 观察者的攻击 ,但挑战非常复杂,以至于重播攻击无法发挥作用。 当你知道如何应对挑战时,你再也不会看到这种挑战了。

我认为如果它不能被重放攻击,观察Siri的协议是没有问题的,而且我们现在无论如何都已经看到了它,但是中间的人可以通过使用受信任的证书颁发机构来阻止。 如果guzzoni.apple.com不是它应该是什么,气味测试失败。 一些Netflix客户向VeriSign查询他们正在与真正的Netflix交谈。

这是从iPhone的角度进行的分析,它隐含地信任自己。 显然,您的手机是不受信任的一方,Apple是值得信赖的一方。 一旦iOS被越狱,所有赌注都将被取消。 有两种绝对的解决方案,它们都不是技术方面的。

  1. Backport Siri推出iPhone 3GS,iPhone 4,iPad和iPad 2.然后,没人会需要假Siri。
  2. 不要担心越狱,只要让他们玩得开心。 似乎到目前为止工作。

(作为旁注,iOS固件validation过程中存在长期的重播攻击漏洞。validation服务器会根据基于硬件的令牌和固件版本为您提供签名,Cydia可以在以后重播在iOS 5中已经纠正了几年,这让我相信Apple有意识地选择了#2。)

你这里有三个问题。 一个是SSL / TLS和公共CA层次结构的问题。 第二是DNS不安全的问题。 第三是Apple Security。 我们可以通过技术控制修复三个中的两个。

几乎所有SSL / TLS,DNS,公共CA的问题都可以使用公钥(或证书)固定来修复。 固定是应用程序中的“白名单”预期公钥或证书。 公钥固定相当于SSH中的StrictHostKeyChecking 。 它将解决问题(1)和问题(2)。 你可以看一下如何在Cocoa / Cocoa中固定公钥的例子,这可以在Graham Lee的“可靠的SSL固定”中找到它[Touch] 。

基础设施(运营商,手机OEM,拦截代理,不值得信赖的CA,破碎的CA,不值得信赖的浏览器,DNS,PKI撤销等)还有一些问题,大多数都在OWASP Mobile的邮件列表中讨论: 移动,SSL / TLS,和证书或公钥固定 。 好消息是钉扎将关闭其他人创造的大多数洞。

你无法解决问题(3)。 当ZonD80做同样的In-App购买时,Apple派律师执行取消而不是在StoreKit中设置技术控制以确保它不会再次发生。 在这里,技术控制是固定的。 它的另一个Apple Security失败了。 (有关详细信息,请参阅Hacker Bypasses Apple的iOS In-App Purchase )。

您可能感兴趣的两篇阅读材料(这些问题多年来一直众所周知): PKI破裂 , 互联网破碎 。