从受信任的渗透测试工具到LOLBIN(living-off-the-land binaries),攻击者正在通过滥用受信任的平台和协议来逃避安全检测。
CISO们拥有一系列不断升级的工具来帮助其发现和阻止恶意活动,例如网络监视工具、病毒扫描程序、软件组成分析(SCA)工具、数字取证和事件响应(DFIR)解决方案等等。
但是,要知道,网络安全本质上是攻防之间的持续之战,在防御者不断完善自身技能和工具的同时,攻击者也在不断提出新的挑战。
一些老式技术,例如隐写术(steganography)——一种将包含恶意有效负载的信息隐藏在其他良性文件(如图像)中的技术——正在发展,从而带来了新的可能性。例如,最近有研究人员证明,甚至Twitter也无法幸免于隐写术,该平台上的图像可能会被滥用以在其中压缩多达3MB的ZIP档案。
更糟糕的现实是,除了使用混淆、隐写术以及恶意软件打包技术之外,如今的威胁行为者还经常利用合法服务、平台、协议和工具来开展活动。这使他们能够渗透进对人类分析人员和机器而言都看似“干净”的流量或活动之中。
以下是如今网络犯罪分子用来掩盖其踪迹的5种常见策略:
滥用不会发出警报的受信任平台
这是安全专家在2020年就已经发现的一个普遍现象,且一直持续到了今年。
从渗透测试服务和工具(例如Cobalt Strike和Ngrok)到已建立的开源代码生态系统(如GitHub),再到图像和文本网站(如Imgur和Pastebin),攻击者在过去几年中已将目标锁定为广泛的受信任平台。
通常来说,Ngrok的受众大多为道德黑客,他们会利用该服务收集数据或为入站连接建立模拟隧道,作为漏洞赏金练习或渗透测试活动的一部分。但如今,越来越多的恶意行为者却在滥用Ngrok直接安装僵尸网络恶意软件,或将合法的通信服务连接到恶意服务器。在最近的示例中,SANS研究所的Xavier Mertens发现了一个用Python编写的此类恶意软件样本,其中包含base64编码的代码,以便在使用Ngrok的受感染系统上植入后门。
由于Ngrok受到广泛信任,因此远程攻击者可以通过Ngrok隧道连接到受感染的系统,而该隧道可能会绕过公司防火墙或NAT保护。
除此之外,GitHub也被滥用来将恶意软件从Octopus Scanner托管到Gitpaste-12。最近,研究人员发现,一种新的恶意软件使用带有宏的Word文档从GitHub下载PowerShell脚本。这个PowerShell脚本进一步从图像托管服务Imgur下载合法的图像文件,以解码Windows系统上的Cobalt Strike脚本。Cobalt Strike是一种流行的渗透测试框架,用于模拟先进的现实世界网络攻击,但像任何安全软件产品一样,它同样可能会遭到攻击者的滥用。
同样地,开发人员所依赖的自动化工具也无法幸免。
4月,攻击者在一次自动攻击中滥用了GitHub Actions来攻击数百个存储库,该攻击使用GitHub的服务器和资源进行加密货币挖掘。据悉,GitHub Actions 是 GitHub Universe 开发者大会上发布的一款被Github系统主管Sam Lambert称为“再次改变软件开发”的重磅功能,支持 CI/CD 并对开源项目免费,让开发者能在 GitHub 服务器上直接执行和测试代码,帮助开发者和企业实现所有软件工作流程的自动化。
这些示例无一不在证实,攻击者已经发现了利用众多防火墙和安全监视工具可能无法阻止的合法平台的巨大价值。
利用品牌价值、声誉或知名度进行上游攻击
在最近的SolarWinds漏洞之后,软件供应链安全问题可能已经引起了公众的广泛关注,但实际上,这些攻击已经上升了一段时间。
无论是误植域名(typosquatting)、品牌劫持(brandjacking)或是依赖混乱(dependency confusion,最初是作为概念验证研究被发现,后来被滥用为恶意目的),“上游”攻击都滥用了已知合作伙伴生态系统内的信任,并利用了品牌或软件组件的知名度或声誉。攻击者旨在将恶意代码向上游推送到与品牌相关联的受信任代码库,然后将其下游分发到最终目标:该品牌的合作伙伴、客户或用户等。
要知道,任何面向所有人开放的系统,同样地也会向攻击者开放。因此,许多供应链攻击都是针对开源生态系统的,而其中一些已经懈怠于进行验证,并坚持“向所有人开放”的原则。但是,商业组织也会由此受到攻击影响。
最近,软件审计平台Codecov遭黑客入侵。调查发现,攻击从1月31日就开始进行,但第一个客户发现不对劲时已经是4月1日,这表示被入侵的软件在长达数月时间里正常流通,而Codecov一直被行业内多家公司用来测试代码错误和漏洞,其客户包括了消费品集团宝洁公司、网络托管公司GoDaddy Inc、澳大利亚软件公司Atlassian Corporation PLC在内的29,000多家企业,所以潜在受害者规模可想而知。
据悉,在此次攻击中,黑客利用Codecov的Docker映像创建过程中出现的错误,非法获得了其Bash Uploader脚本的访问权限并且进行了修改。而这意味着攻击者很有可能导出存储在Codecov用户的持续集成(CI)环境中的信息,最后将信息发送到Codecov基础架构之外的第三方服务器。
防范供应链攻击需要从多个方面进行努力。软件提供商将需要加大投资以确保其开发版本的安全。基于AI和ML的devops解决方案能够自动检测和阻止可疑软件组件,可以帮助防止域名抢注、品牌劫持和依赖混乱攻击。
此外,随着越来越多的公司采用Kubernetes或Docker容器来部署其应用程序,具有内置Web应用程序防火墙,并能够及早发现简单的错误配置错误的容器安全解决方案,可以帮助防止更大的妥协。
通过难以追踪的方式向加密货币支付转移
鉴于其分散化和注重隐私的设计,暗网市场卖家和勒索软件运营商经常使用加密货币进行支付。
然而,尽管并非由政府中央银行铸造或控制,但加密货币仍然缺乏与现金相同的匿名性。因此,网络犯罪分子开始不断寻找在账户间转移资金的创新方法,而且确实被他们找到了。
最近,与2016年Bitfinex黑客事件相关的价值7.6亿美元的比特币正在通过多个较小的交易被转移到新帐户中,交易金额从1 BTC到1,200 BTC不等。
不过,加密货币并非隐藏钱迹万无一失的方法。就在2020年美国总统大选之夜,美国政府清空了一个10亿美元的比特币钱包,其中包含与最臭名昭著的暗网市场“丝绸之路”相关的资金,而该市场本身已在2013年被关闭。
诸如Monero(XMR)和Zcash(ZEC)之类的其他一些加密货币,具有比比特币更匿名的匿名交易保护功能。随着攻击者不断寻找隐藏其踪迹的更好方法,犯罪分子和调查人员之间的较量无疑将在这方面继续。
使用通用渠道和协议
像受信任的平台和品牌一样,合法应用程序所使用的加密通道、端口和协议也为攻击者提供了另一种掩盖其足迹的方法。
例如,HTTPS是当今Web上最为普遍且不可缺少的协议,因此,在公司环境中很难禁用端口443(由HTTPS / SSL使用)。
然而,DoH(DNS Over HTTPS,一种用于解决域名的协议)也使用端口443,并且已被恶意软件开发者滥用来将其命令和控制(C2)命令传输到受感染的系统。2019年,Network Security 研究人员发现了首个利用DoH协议的恶意软件,它就是基于Lua编程语言的Godlua,通过使用DoH,该恶意软件可以通过加密的HTTPS连接隐藏其DNS流量,从而允许Godlua逃避被动DNS监控。
此外,这种情况还带来了两个问题。首先,通过滥用HTTPS或DoH之类的通用协议,攻击者享有与合法用户相同的端到端加密通道的隐私优势。
其次,这给网络管理员带来了挑战。阻止任何形式的DNS本身都是一个挑战,但是现在,由于DNS请求和响应都通过HTTPS进行了加密,因此对于安全专业人员来说,从经由网络传入和传出的许多HTTPS请求中拦截、筛选和分析可疑流量就变得很麻烦。
最近,研究人员Alex Birsan证实,通过依赖性混乱(dependency confusion)技术可以成功入侵超过35家大型技术公司,包括微软、苹果、特斯拉、PayPal、Yelp等。而此举,也让其顺利获得两家公司价值3万美元的漏洞悬赏。据Birsan介绍,通过使用DNS(端口53)窃取基本信息,能够最大程度地提高成功率。而之所以选择DNS,是因为由于性能要求和合法的DNS使用,公司防火墙极有可能不阻止DNS流量。
使用签名的二进制文件运行混淆的恶意软件
使用LOLBIN的无文件恶意软件仍然是一种有效的逃避技术。
LOLBIN是指合法的、经过数字签名的可执行文件,例如Microsoft签署的Windows可执行文件,攻击者可能会滥用这些可执行文件来以更高的特权启动恶意代码,或者逃避端点安全产品(例如防病毒软件)。
上个月,Microsoft分享了一些针对该方法的防御技术指南,企业可以采用这些建议来防止攻击者滥用Microsoft的Azure LOLBIN。
尽管混淆的恶意软件、运行时压缩器((Runtime Packer)、VM逃避或在图像中隐藏恶意有效负载是高级威胁惯用的已知逃避技术,但其真正的力量来自绕过安全产品或逃避“雷达”检测。
当有效负载在某种程度上与受信任的软件组件、协议、通道、服务或平台相结合时,这些攻击场景都将成为可能。