网络安全研究人员披露一种新型网络攻击,这种攻击利用传输层安全(TLS)服务器中的错误配置将HTTPS流量从受害者的Web浏览器重定向到位于另一个IP地址的不同TLS服务端点,从而窃取敏感信息,而静态代码检测有助防范新型TLS 攻击。
研究人员将这种攻击成为“ALPACA”(Analyzing and mitigating Cracks in tls Authentication)即“应用层协议混淆-分析和减轻tls身份验证中的裂缝”的缩写。
攻击者可以将流量从要给子域重定向到另一个子域,从而产生有效的TLS会话,这打破了TLS的身份验证,可能会出现跨站脚本攻击,其中一个协议服务的行为可能会在应用层危及另一个协议。
TLS是一种加密协议,用于在两个通信应用程序之间提供保密性和数据完整性。支持多种应用层协议,如HTTPS、SMTP、IMAP、POP3 和 FTP以保护网络通信安全,该协议由两层组成: TLS 记录协议(TLS Record)和 TLS 握手协议(TLS Handshake)。
TLS记录协议提供的连接安全性有2个基本特性:
1、私有,对称加密用以数据加密(DES等)。对称加密所产生的密钥对每个连接都是唯一的,且此密钥基于另一个协议(如握手协议)协商。
2、可靠,信息传输包括使用密钥的MAC进行信息完整性检查。安全哈希功能(SHA、MD5 等)用于MAC计算。记录协议在没有MAC的情况下也能操作,但一般只能用于这种模式,即有另一个协议正在使用记录协议传输协商安全参数。
网络安全研究人员称,ALPACA攻击之所以可以实现,因为TLS没有将TCP连接绑定到预期的应用层协议上。因此,TLS未能保护TCP连接的完整性,可能被滥用为将预期的TLS服务端点和协议的TLS通信重定向到另一个替代的TLS服务端点和协议。
由于客户端使用特定协议打开与目标服务器(如HTTPS)的安全通道,而替代服务器使用不同的应用层协议(FTP)并在单独的TCP端点上运行,因此发生混淆从而导致所谓的跨站脚本攻击。
目前,发现至少3中假设的跨站脚本攻击场景,攻击者可以利用这些场景来绕过TLS保护,并攻击FTP和电子邮件服务器,但攻击的前提是攻击者能够在TCP/IP层拦截和转移受害者的流量。
简单来说,攻击采取中间人(MitM)方案的形式,其中攻击者诱使受害者打开他们控制的网站以发出带有特制FTP负载的跨域HTTPS请求,然后将此请求重定向到使用与网站兼容的证书的FTP服务器,最终形成有效TLS会话。
因此,TLS服务中的错误配置可以被利用来将身份验证cookie或其他私有数据泄露到FTP服务器(上传攻击),在存储的跨站脚本攻击中从FTP服务器检索恶意JavaScript负载,甚至在受害者网站的上下文中执行反射跨站脚本攻击。
预计所有证书与其他TLS服务兼容的TLS服务器都将受到影响。在实验设置中,研究人员发现至少有140万台web服务器容易受到跨协议攻击,其中114197台服务器被认为容易受到攻击,它们使用可利用的SMTP、IMAP、POP3或FTP以及可信和兼容的证书。
除了以上攻击类型,常见跨站脚本攻击一般是系统漏洞产生的。攻击者在Web页面插入恶意代码,当用户浏览网页时,嵌在Web里面的代码会被执行从而实现跳转造成信息泄露或其他恶意行为。这些漏洞可能会允许攻击者窃取cookie、记录键盘敲击、捕捉屏幕截图、发现和收集网络信息,以及远程访问和控制受害者的设备,造成的影响无法估计。
跨站脚本攻击是OWASP Top10中第二普遍问题,存在于三分之二的应用程序中。但其实跨站脚本攻击很容易被预防,只要在开发阶段通过静态代码检测技术就可以发现,问题在于开发人员此时是否意识到代码安全检测的重要性。
静态代码安全检测技术和漏洞扫描、防火墙、入侵检测系统互相配合,能够有效提高网络的安全性。通过静态代码检测可以在开发阶段对所有代码缺陷实时查找并修复,如果说防火墙和网络监视系统是被动的防御手段,那么静态代码检测就是一种主动的防范措施,能有效查找系统漏洞避免黑客攻击行为,做到防患于未然。
参读链接:
https://www.woocoom.com/b021.html?id=be48a0df843340c1880ff4fa3134c951
https://thehackernews.com/2021/06/new-tls-attack-lets-attackers-launch.html