HackerNews 02月20日
网络钓鱼攻击利用隐形 Unicode 技巧隐藏 JavaScript
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

一种利用隐形Unicode字符的JavaScript混淆方法正被用于针对美国PAC附属机构的网络钓鱼攻击。该攻击手段复杂,包括利用个性化信息、多种规避检测手段等,且难以检测。

🦘利用隐形Unicode字符表示二进制值,使JS负载'隐形'

🚀使用多种手段规避检测,如个性化信息、调试器断点等

🎯采取额外隐藏步骤,如base64编码脚本和反调试检查

💻编码过程易实现,可注入合法脚本而不引起怀疑

HackerNews 编译,转载请注明出处:

一种新的 JavaScript 混淆方法利用隐形 Unicode 字符来表示二进制值,这种方法正在针对美国政治行动委员会(PAC)附属机构的网络钓鱼攻击中被积极利用。

Juniper Threat Labs 发现了这次攻击,报告称该攻击发生在 2025 年 1 月初,显示出高度复杂性,包括使用以下手段:

JavaScript 开发者 Martin Kleppe 于 2024 年 10 月首次披露了这种混淆技术,其在实际攻击中的快速采用突显了新研究如何迅速被武器化。

使 JS 负载“隐形”

这种新的混淆技术利用了隐形 Unicode 字符,特别是 Hangul 半角(U+FFA0)和 Hangul 全角(U+3164)字符。

JavaScript 负载中的每个 ASCII 字符都被转换为 8 位二进制表示,其中的二进制值(1 和 0)被替换为隐形的 Hangul 字符。

混淆后的代码存储为 JavaScript 对象的一个属性,由于 Hangul 填充字符显示为空白,脚本中的负载看起来是空的,如下图所示。

空白处隐藏恶意代码

一个简短的引导脚本使用 JavaScript Proxy 的 get() trap 来检索隐藏的负载。当访问隐藏属性时,Proxy 将隐形的 Hangul 填充字符转换回二进制,并重建原始的 JavaScript 代码。

Juniper 的分析师报告称,攻击者除了上述手段外,还采取了额外的隐藏步骤,例如使用 base64 编码脚本和使用反调试检查来规避分析。

“这些攻击高度个性化,包括非公开信息,初始 JavaScript 会尝试在被分析时调用调试器断点,检测到延迟后,然后通过重定向到良性网站来中止攻击,”Juniper 解释道。

这些攻击难以检测,因为空白减少了安全扫描器将其标记为恶意的可能性。

由于负载只是对象中的一个属性,它可以被注入到合法脚本中而不引起怀疑;此外,整个编码过程易于实现,不需要高级知识。

Juniper 表示,此次活动中使用的两个域名此前与 Tycoon 2FA 网络钓鱼工具包有关。

如果是这样,我们可能会在未来看到这种隐形混淆方法被更广泛的攻击者采用。

 


消息来源:Bleeping Computer

本文由 HackerNews.cc 翻译整理,封面来源于网络;  

转载请注明“转自 HackerNews.cc”并附上原文

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

JavaScript混淆 网络钓鱼攻击 规避检测 隐形Unicode字符
相关文章