塔赫尔·艾尔加玛斯
Axway的首席安全官在安全行业拥有超过25年的经验,最初是一名密码专家。出生于埃及的Elgamal被誉为SSL(安全套接字层)的发明者,他于1995年初加入Netscape发行了该协议,该协议后来由Internet工程任务组监督。
在接受ZDNet Asia的电话采访中,埃尔加马尔(Elgamal)表示担心“所有事情都归咎于SSL”,并解释了需要采取哪些措施来增强Internet的安全性。
问:我们听说过SSL中间人攻击和拦截会话cookie的能力。对于Internet安全标准而言,攻击的复杂性是否增长过快?
Elgamal:首先,重要的是要确定解决方案的各个部分,以及由谁负责。SSL是两点之间的协议,通常是浏览器和服务器之间。系统中的弱点通常是由于浏览器而不是协议引起的。该协议说(服务器)会相互识别自己,这取决于两个站点是否接受该站点。不幸的是,浏览器信任模型……使最终用户在不实际了解他们所接受的内容的情况下接受事物,与当前的协议无关。
我认为我们需要将网站和软件开发人员发送到cookie设计学校,以便他们可以正确设计cookie。
中间人攻击实际上不是SSL的一部分;(它们)是网络设计问题,其中有人设计网络并放入代理服务器,该代理服务器使浏览器认为服务器在不同的地方,然后将不同的证书替换为双方。
实际上,这是一个信任问题,而不是中间人攻击。由于信任模型和浏览器的设计不正确,因此您可以说服浏览器这是正确的证书,并说服服务器使用其他证书,然后看起来实际上是在破坏协议。您实际上没有违反协议;您在错误的点终止了协议,因为浏览器信任模型已损坏。
我认为所有这些问题都与浏览器设计有关,而不是安全性或协议。有趣的是,所有事情都应归咎于SSL,但实际上它们甚至与SSL不相关。(问题是)浏览器应该信任或不应该信任哪个证书。
Cookie(事件)与SSL无关。Cookie是与HTTP会话相关联的东西,它实际上是Web标准。发明cookie的想法是为了确保在SSL(进入图片)之前您可以在Web上进行较长的会话。
事实也证明,安全会话还使用相同的cookie设计来维护会话。有些cookie设计合理,人们无法劫持会话。有些Cookie的设计确实很糟糕。这与SSL协议完全无关。
我认为我们需要将网站和软件开发人员发送到cookie设计学校,以便他们可以正确设计cookie。我们非常了解(哪些)cookie很好,哪些cookie不好,并且有一些方法可以设计cookie,以使人们无法实际劫持会话。
安全研究人员还指出,用户仍然登录到SSL证书已过期的站点,这带来了问题。接受过期的证书是浏览器问题。
在互联网时代的早期,我们就进行了这场斗争:当证书过期时,我们告诉用户怎么办?安全专业人员始终与公众争执,因为可用性总是胜利。当您获得过期的证书时,网站所有者或组织将始终希望允许用户执行操作,而不是禁止操作。这只是一个不幸的事实。
与协议的真正含义无关,也不取决于协议的好坏,浏览器允许最终用户说“是的,无论如何我还是要接受”。以我作为安全专业人员的观点,这样做是错误的。我认为这是浏览器制造商需要考虑的问题。当然,(Microsoft Internet Explorer拥有)80%(份额)的浏览器,然后我们有(Mozilla)Firefox和Apple(Safari)。同样,就加密或SSL协议本身而言,没有安全性问题需要处理–我认为(浏览器制造商)需要更好地将这些消息传达给最终用户。
安全专业人员始终与公众争执,因为可用性总是胜利。
但是我知道一个事实,即微软永远不会因为证书过期而关闭站点。因为它可能已过期,并且(所有者)正在努力获得扩展……您关闭该网站,他们损失了100万美元。这里有一个商业问题很难解决。
从技术的角度来看,(但是)应该是证书会警告Web服务器所有者(它将)在7天后到期(并且)去更新证书。应该有一个过程可以做得更好,但是自动化还没有发生。
那有什么解决办法呢?浏览器制造商如何留住用户并保护他们?
对于重要的网站(银行或付款),在浏览器中还需要有另一个控件(在该控件中),如果证书无效,则拒绝让用户执行某些操作。对于简单的网站,也许您可以让用户控制继续。如今,我们并没有做出这种区分-重要站点…和寻找信息的站点(您所在的位置)之间没有区别。
当用户走进银行分支机构时,他们会认为它是受信任的。当他们去网上银行分行时,他们做出相同的假设。
微软(和其他浏览器制造商都有)安全区的概念(不同类型的站点之间存在区别),但是从用户的角度来看确实很难做到。大多数最终用户都不了解安全区域的含义。不幸的是,最终用户不是非常了解安全性。当用户走进银行分支机构时,他们会认为它是受信任的。当他们去网上银行分行时,他们做出相同的假设。
生态系统需要做一些事情来帮助用户,使其不会处于受到威胁的境地。我敢肯定会有解决方案……因为互联网本身需要解决此问题。
随着浏览器技术的发展,我们还没有达到这个阶段?
因为可用性总是胜利。在这么长时间的安全环境中,我知道这将是一个问题。我在Netscape内部进行了一段时间的讨论,并且与Microsoft员工进行了讨论-我们在很长一段时间的不同时间进行了讨论。如果证书过期,该怎么办?如果证书有误怎么办?(后者是)实际上是一个更(严重)的问题。
当证书进入时,浏览器会进行某些检查-(它将)检查(是否)证书名称和URL是否匹配。这些检查还不够,因为在某些情况下,某些人可能会愚弄浏览器以为这是正确的URL。您可以在会话检查非常严格的情况下(不会发生连接的情况)设计会话,但是一般的浏览器基本上允许用户信任事物。而且,用户当然不理解这意味着什么,因此用户将始终说“是”。
当前的安全问题终于提出了我们很久以前在安全领域中所知道的事情……因为(现在)互联网经济的规模正在增长。业界需要以更好的方式处理此问题。
SSL是十多年前发明的。您认为如果在当前的安全形势下发明它会有何不同?
实际上,老实说,我认为不会有所不同。如果15年前,我们知道今天的样子,我们将更改客户端的设计,即浏览器。但是协议本身实际上是相当不错的。该协议允许客户端和服务器就在特定会话中应使用哪种算法达成协议,并且有意采用这种方式。
从现在开始的20年后,我们将发现不再认为不同的协议是安全的,我们不应该使用它们,但是我们不能设计该协议以仅使用一组特定的安全算法,因为我真的不知道20从现在开始的几年,什么是安全的,什么不是安全的。15年前,某些算法被认为是好的算法,我们在早期的Internet时代就使用了它们,然后几年后,我们发现(它们)是不安全的,不应使用。
所有安全协议都允许使用多种算法,因为我们必须长时间设计(设计)协议(使用)。(SSL)协议非常可靠……协议的更改已很小(多年来)。
在当前的安全形势下,您最不满意的是什么?
当今Internet安全的最大问题是,可以从Internet外部获取具有许多重要信息的数据库。设计安全网络的进度还不够。您今天看到的大多数安全问题(发生)是因为黑客或内部人员能够访问未经授权访问的信息。这就是当今安全环境的真实情况。
有一些尝试(可以控制),例如,Visa和万事达卡将迫使商家通过PCI DSS(支付卡行业数据安全标准)法规。这些很有用,它们迫使网站所有者进行特定的安全测试和设计,以使网站变得更好。需要进行更多的协作,以便每当站点看起来存在安全缺陷时,Internet就会尽力提供帮助。无论是来自政府,合作伙伴,行业还是协会-几乎都没有关系-我认为开展协作非常重要。从安全的角度来看,这实际上是修复诸如Internet之类的大型网络的唯一方法。