结构相似,运行相同!26%的恶意JavaScript软件利用混淆技术逃过安全检测

中科天齐软件源代码安全检测中心

共 1071字,需浏览 3分钟

 ·

2021-10-21 10:51

网络安全人员在一项研究中,通过分析了1万多个用JavaScript编写的恶意软件样本,发现大约26%的恶意软件为了逃避安全检测和分析被混淆。

混淆是指将易于理解的源代码转换为难以理解和令人困惑的代码,但仍然按预期运行。

威胁行为者通常使用混淆技术来增加分析恶意脚本和绕过安全软件的难度。

混淆可以通过多种方式实现,如将未使用的代码注入脚本、将代码分割和连接(将其分割为不连接的块),或者使用十六进制模式以及复杂的重叠函数和变量命名。

混淆现象在增加

Akamai研究人员分析了10,000个JavaScript样本,包括恶意软件植入程序、网络钓鱼页面、诈骗工具、Magecart片段、加密矿工等。

其中至少有26%使用某种形式的混淆来逃避检测,这表明采用这种基本但有效的技术的人有所增加。

这些模糊示例中的大多数似乎具有相似的代码,因为它们是由相同的打包程序打包的,因此即使函数不同,它们的代码结构也看起来相似。

Xd3aH6J8GU.png

正常运行的网站也利用此技术

但并非所有混淆都是恶意的,网络上20,000个排名靠前的网站(据 Alexa)中约有 0.5% 也使用混淆技术。

这些情况可归因于以下几点:

网站正试图向竞争对手隐藏其某些客户端代码功能。

他们使用的 JavaScript 片段被第三方提供商混淆了。

像电子邮件地址这样的敏感信息需要隐藏在公众视野中。

因此,基于模糊的事实来检测恶意代码本身是不够的,还需要进一步与恶意功能进行关联。

软件代码中的恶意代码为软件安全带来巨大风险,在开发中关注代码安全可以有效提高软件安全性,大大降低遭到网络攻击的风险。随着恶意代码混淆技术的不断使用和发展,在开发期间有必要及时发现代码缺陷及安全漏洞。

安全可信的静态代码检测工具可以帮助开发人员减少30%-70%的安全漏洞,在提高编码规范性的同时,及时发现并修复安全缺陷及漏洞,有助于提高软件自身抵御网络攻击的能力。5G时代,仅靠传统的防火墙、渗透测试等方式难以应对不断进化的恶意软件及攻击手段,现如今,加强软件自身安全性已成为提高网络安全的又一有力方式。

在早期发现软件安全问题不但节省修改时间和成本,也能为企业避免更多经济和声誉损失。请记住,预防是比治疗更实用的解决方案。


参读链接:

https://www.bleepingcomputer.com/news/security/about-26-percent-of-all-malicious-javascript-threats-are-obfuscated/

浏览 25
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报