最新研究显示,46%的恶意软件使用加密协议来逃避检测、与攻击者控制的服务器通信,以及渗漏数据。
攻击者大量使用传输层安全(TLS)加密协议隐藏恶意软件通信,给企业安全团队的应对带来了新挑战。
2021年第一季度,网络安全公司Sophos对恶意软件样本的分析发现,通过互联网与远程系统通信的恶意软件中,近半数(46%)使用了TLS协议。相比2020年23%的恶意软件工具使用TLS,这代表着100%的增长率。
增长迅猛的主要原因在于,网络罪犯越来越爱使用谷歌云服务、Pastebin、Discord和GitHub等合法TLS保护的云和Web服务,采用这些合法TLS服务托管恶意软件、存储被盗数据,以及进行控制与通信操作。另一个原因是,攻击者更多地采用Tor和其他基于TLS的网络代理来加密与恶意软件之间的通信。
Sophos高级威胁研究员Sean Gallagher称:“分析研究的主要收获是,筛查恶意软件时没有‘安全’域或‘安全’服务这种东西,传统防火墙防御基于信誉扫描,没有深度包检测,根本无法保护系统。”
Sophos的报告再次凸显出互联网加密迅速铺开的双刃剑本质。过去几年里,隐私倡导者、安全专家、浏览器制造商等群体大力宣传要广泛采用加密协议来保护互联网通信,防止互联网通信遭到间谍窃取和监控。
在他们的努力下,使用TLS的HTTPS协议几乎完全替代了老版HTTP协议。HTTPS最具影响力的拥护者谷歌表示,其美国境内资产上承载的流量中92%使用了TLS。这一比例在其他国家甚至更高。比如说,在比利时和印度,通往谷歌站点的流量中98%是加密的;在日本和巴西,这一比例是96%;而在德国,通往谷歌的流量里94%是加密的。
尽管HTTPS和TLS在电子邮件系统、虚拟专用网和其他领域中的整体采用率上升促进了隐私和安全,但也给攻击者利用同样的加密技术隐藏其恶意软件和恶意通信制造了机会,让他们更容易躲过常规检测机制。
Farsight Security总裁、首席执行官兼联合创始人,互联网先锋Paul Vixie表示:“我们构建出来的东西,没什么是坏人用不了的。”TLS背后的推动力大多来自保护互联网用户的善意努力,想要让专制国家的互联网用户免遭政府及其情报机构拦截和窥探他们的在线通信。但这同样的技术也让攻击者受益匪浅。打造只有益于持不同政见者的技术是不可能的。
▶ 恶意用例多种多样
Sophos的分析显示,攻击者将TLS用于渗漏数据、进行命令与控制(C2)通信,以及在传播恶意软件时规避检测系统。此类活动中的绝大部分日常恶意TLS流量来自恶意软件投放器、加载器和在已感染系统上下载其他恶意软件的工具。
许多实例中,恶意软件投放器和加载器使用Pastebin、Discord和GitHub等合法TLS支持的网站进一步伪装其恶意流量。Sophos指出了其中几个案例,例如LockBit勒索软件的一款基于PowerShell的投放器就通过TLS从Google Docs电子表格检索恶意脚本,信息窃取软件AgentTesla则从Pastebin抓取其他代码。
Sophos还观测到勒索软件攻击中TLS使用的增长,尤其是在手动部署恶意软件的攻击实例中。其中很大一部分增长源自Metasploit和Cobalt Strike等攻击性安全工具包的使用激增,此类工具包被大量用于执行脚本、收集系统信息、抽取登录凭证和执行其他恶意活动。
Gallagher表示:“我们看到TLS主要用于恶意软件攻击的前期阶段,为专注手动攻击的工具所用。大多数远程访问木马(RAT)和僵尸恶意软件采用其他方法混淆或加密通信,比如硬编码AES加密或更简单的定制编码。”
与此同时,在数据渗漏攻击中,攻击者使用恶意软件和其他方法将被盗数据封装进基于TLS的HTTPS POST请求,或者通过私有TLS连接将被盗数据导出到Telegram、Discord或其他云服务API。
目前,谷歌云服务和印度国有电信公司BSNL是最大的两个恶意软件“回连”目的地,分别占Sophos观测到的全部恶意软件TLS请求的9%和8%。总的说来,恶意软件相关TLS通信中目前有一半直接通往位于美国和印度的服务器。
企业网络上的一些恶意TLS流量不使用标准IP端口:443、80和8080。所以,恶意TLS使用的整个范围可能会比在标准端口号上观测到的要多。
▶ “随机噪音”
Farsight创始人Vixie表示,下一代HTTP/3采用的QUIC互联网传输协议和DNS over HTTPS(DoH)等新兴标准,将会给企业安全团队带来更复杂的局面。现有防火墙技术和其他检测机制无法检测经由这些机制隐藏的恶意软件。Vixie称:“没人能弄清到底发生了什么。他们能看到的全都是纯粹的随机噪音不断涌来。根本无法分清随机噪音中哪些是恶意的哪些是良性的。”
这种趋势可能会让企业被迫退回以往那种只放行已知合法流量的检测模式:不在网络边缘放置防火墙,而是在网络边界设置代理,检查所有进出网络的流量。来自网络内部的所有数据包都需要披露目的地址,然后应用各种策略来确定是继续发送,还是就此阻止。
实施此类检测模式会带很大不便。所以,企业可能必须考虑组织自身网络拓扑,让不太敏感的数据在控制更少的网络上流转,而敏感数据放在代理之后加以保护。