研究人员发明“完美”数据外泄方法

中国IDC圈6月6日报道,来自以色列SafeBreach公司的研究人员对隐蔽数据外泄方法进行了广泛的分析,并且发明了他们心目中“完美” 的方法。

SafeBreach的研究人员从2015年就开始寻找高度安全的组织中窃取少量机密信息的完美方法。恶意攻击者经常会从公司窃取GB级的文件,但是少量的关键信息同样可以非常有价值,例如,加密密钥、密码、甚至是一些可以暴露公司的一些战略决策的只言片语。

专家分析发明的数据渗透方法针对的情景是外部攻击者已经在某个目标组织内植入了恶意软件,或者内部人员希望在不被发现的情况下泄露机密信息。

完美方法的要求和条件

上周在阿姆斯特丹举行的HITB大会上,SafeBreach公司CTO、联合创始人ItzikKotler和公司安全研究副总裁AmitKlein向大家 展示 了完美的数据外泄方法和其中的因素。

专家详细解释了他们的“十诫”,就是要完成完美的数据外泄需要满足的要求和条件。

第一条,也是最重要的规则是,技术必须要可测量的、并且是安全的。 专家称,数据渗透应当遵守柯克霍夫原则:即使密码系统的任何细节已为人悉知,只要密匙(key,又称密钥或密钥)未泄漏,它也应是安全的。这样的密码系统就足够安全,因为相同的算法可以反复使用不同的密钥。

其他的要求包括仅使用普通的流量类型(如 HTTP, DNS 或者 TLS),还有不要利用任何可能被认为能够传输信息的方式(如邮件、论坛发帖、加密文字、文件分享服务),以免引起怀疑。

攻击者在进行数据泄露的时候应当假设企业有相当完善的网络监控系统,包括异常检测、各协议的数据包分析和基于信誉的机制。如果这些分析系统被用于检测向可疑IP和主机传输的流量的话,发送者和接受被盗数据就不应该有直接的通信。攻击者要假设TLS通信会在网关被解密并且审查。

Kotler 和 Klein所描述的攻击情景中,接收方没有限制,它的行为活动不受监控。

另外一个条件是,发送者和接收方的时间得要几乎完全同步。

几乎完美的数据外泄

过去几年,研究人员描述了几种可以被用来泄露几比特(bits)数据而不会引起注意的方法。这些方法只对小规模数据有效,比如密码或者加密密钥,因为他们要想传输一个字符就要用到8比特。

比如,IPv4 header中的ToS(type of service)可以被用来泄露1比特。但是Windows工作站上的ToS值会被设置为0,改成1会有警报。另外,公司企业可以通过防火墙把ToS改成0轻易阻止这种攻击。

更加高效的方法就是使用web计数器。举个例子,Bit.ly这种短网址服务会统计一个URL被访问过几次。攻击者可以利用这个来传递0或者1比特。攻击者在特定时间访问特定网址,接收者检查URL计数器,通过在特定时间网址被访问过(1)或者没有被访问过(0)来接收数据。

这个方法不会引起注意,但是却能轻易被干扰:对方可以拦截Bit.ly的请求,然后在连接后面加上个“+”(这样计数器就不会计数),或者直接把用户重定向到完整网址,这样的话计数器就不会技术,数据就无法泄露。

YouTube 和 StackOverflow也有计数器可以用来技术,但是专家注意到YouTube可能会被某些企业屏蔽。

完美的数据泄漏

SafeBreach找到了他们认为的完美方法。他们把它称作HTTP服务器端缓存。

攻击者首先得要找个流行的网站,网站内有很多网页被缓存。电子商务网站应该可以,但是最好是跟目标企业相关的电商网站以免引起怀疑。

很多网站会对html网页做缓存,从而提高网站体验,而网页的缓存时间一般可以从HTTP响应头获得。Kotler和Klein所描述的攻击情景中,机密信息的发送方和接收方确定一个网页和一个特定时间,这个网页的访问量不能特别大,防止正常的访客造成干扰。如果发送方没有在这个特定时间访问这个特定网页,则代表发送”0”,反之,则发送1。

接收者可以通过检查网页是否在最近被缓存来判断发送者有没有访问网页。如果在特定时间的10秒钟后访问了网页,就可以知道网页是最近被缓存(记为1)还是没被缓存(记为0).

很多网站都可以被用来执行这种攻击。研究人员提供了宜家、EasyJet、Zap.co.il(以色列电商网站)的例子。