0×01 前言
在最近的恶意软件的调查中,我们发现了一些有趣的混淆JavaScript代码。此代码伪装成现在流行的插件AddThis social
sharing的一部分,在URL命名约定和图像文件中使用它。恶意软件最终将网站访问者重定向到node.additionsnp[.]top,这个网站存在着可能对访问者造成威胁的技术骗局。这种恶意软件巧妙的隐藏了自己,网络管理员很难能识别它。
0×02 混淆的恶意图像文件
恶意代码嵌入在WordPress核心文件的末尾
- wp-includes/js/jquery/ui/datepicker.min.js
攻击者使用onblur函数加载恶意内容,窗口失去焦点三秒后,它将使用replace函数来解密模糊的payload URL。 这是通过在字符串中随机位置添加0到5的数字来编码的,如下所示:
- 22c1n4d41.3s27-44a2d11d1t0hi4s3.0t1o2p001
在从字符串中删除0-5之间的所有数字后,我们看到它从以下位置的URL获取payload:
- //cnd.s7-addthis[.]top
恶意软件还会在字符串前添加http和附加#ad.png,从而生成PNG图像文件的URL。
0×03 一个令人信服的假图像
该恶意软件很狡猾,如果你直接去访问PNG文件,会返回一个404页面。这很可能是攻击者基于访问者浏览器的 user-agent字符串进行了限制访问。我们可以使用curl工具去伪造一下,欺骗它正常的进行工作。
我能够访问假的PNG文件。它甚至包含正确的头信息和魔术字节,以将文件格式标识为PNG图像:
该文件还包含一些二进制代码,它通过浏览器渲染一个实际的图像(它看起来像一个真正的AddThis图标)。 这个额外的步骤使得它更难被网站所有者识别为恶意软件:
隐藏在图像文件中的恶意代码在恶意软件业务中并不是什么新东西 – 我们已经看到了这些年来不同的技术。在PNG文件的END部分之后添加的恶意代码不会破坏图像。
图像文件内容,带有恶意有效载荷在末尾,由我们上面提到的脚本解析和执行:
- eval(y.responseText.split('###')[1])
隐藏函数用于将浏览器重定向到URL:
- hxxp://node.additionsnp[.]top/?aff=8007001
0×04 重定向到技术诈骗
此页面检查访问者的IP地址和浏览器,使用下面的脚本将不符合的访问者返回到上一页面:
- window.onload=history.back()
对于搜索引擎的user-agents(例如Googlebot),此页面返回404 Not Found错误。
但是,如果访问者在启用JavaScript的Windows上使用浏览器,并且使用美国或加拿大IP,则此页面将显示带有典型技术诈骗警告的弹出窗口。这些骗子试图说服受害者,他们的计算机感染了恶意软件,并紧急发布一些免费的“帮助台”号码来解决这个问题。
如果受害者呼叫这些号码,骗子将连接到受害者的计算机,然后自愿清除错误日志,并删除不存在的恶意软件 – 换取几百美元。
访问受害者的计算机也可以使骗子安装一些额外的间谍软件。 有时,骗局页面甚至可能会请求您的Windows用户名和密码(as reported in this MalwareBytes thread),这可能有助于感染受害者的计算机。
0×05 Source and Additional Domains
此恶意软件广告使用位于伯利兹的IP地址的服务器,特别是在俄罗斯和乌克兰组织注册的80.87.205.233和185.93.185.243。
我们发现有更多的网域与此恶意软件广告系列相关联:
- wine.industrialzz.top
- one.industrialzz.top
- web.machinerysc.top
- sub.contentedy.top
- check-work-18799.top
- asp.refreshmentnu.top
- get.resemblanceao.bid
- sip.discoveredzp.bid
0×06 总结
有这么多域用于托管诈骗内容,这似乎是这些唯利可图黑帽子的附属公司。这个恶意软件被注入到WordPress核心文件,与其他代码混合,并欺骗熟悉的合法服务,以隐藏其轨迹,使其很难被发现。
简单搜索你的网站文件和数据库去发现恶意域不会有任何作用,因为这可以很容易混淆。
为了快速检测您的网站文件的未经授权的更改,您可以设置一个监控服务,将您的文件与已知的良好状态进行比较。我建议使用WordPress的sucuri-scanner插件,准备好对安全事件采取行动,可以让您在访问者受到这些欺骗行为伤害之前采取行动。
作者:zusheng
来源:51CTO