黑客越来越多地使用WebAssembly编码的加密矿工来逃避检测
多达207个网站感染了恶意代码,这些恶意代码旨在通过在浏览器上利用WebAssembly(Wasm)启动加密货币矿工。
这发现了一个主题文件的漏洞,用于从远程服务器注入恶意JavaScript代码hxxps://wm.bmwebm[.]组织/自动。每当访问网站页面时都会加载它。
Sucuri恶意软件研究人员Cesar Anjos说:“一旦解码,auto.js的内容立即显示cryptominer的功能,当访问者登陆受损网站时,cryptominer就会开始挖掘”。
更重要的是,除臭的汽车。js代码利用WebAssembly直接在浏览器上运行低级二进制代码。
所有主要浏览器都支持WebAssembly,它是一种二进制指令格式,与JavaScript相比性能有所提高,允许将用C、C++和Rust等语言编写的应用程序编译成可直接在浏览器上运行的低级汇编语言。
“当用于web浏览器时,Wasm在自己的沙盒执行环境中运行,”Anjos说。“由于它已经编译成汇编格式,浏览器可以以JavaScript自身无法比拟的速度读取和执行其操作”。
参与者控制的域名wm.bmwebm[.]org据说已于2021注册,这意味着基础设施在1.5年多的时间里继续保持活跃,没有引起任何关注。
除此之外,该域还能够自动生成JavaScript文件,这些文件伪装成看似无害的文件或合法服务,如谷歌广告(如adservicegoogle.js、wordpresscore.js和facebook sdk.js),以隐藏其恶意行为。
这并不是WebAssembly在网页上运行高性能应用程序的能力第一次引起潜在的安全隐患。
撇开Wasm的二进制格式使传统防病毒引擎的检测和分析更具挑战性这一事实不谈,该技术可能为更复杂的基于浏览器的攻击打开大门,例如电子浏览,这种攻击可以在雷达下长时间飞行。
更为复杂的是,Wasm模块缺乏完整性检查,实际上无法确定应用程序是否被篡改。
为了帮助说明WebAssembly的安全弱点,斯图加特大学和慕尼黑联邦国防军大学的一组学者在2020年进行了一项研究,发现了可用于写入任意内存、覆盖敏感数据和劫持控制流的安全问题。
