HW期间,为防范钓鱼,即日起FreeBuf将取消投稿文章的一切外部链接。给您带来的不便,敬请谅解~
恶意脚本攻击就在我们身边
近期,Cloudflare发布了一项新功能,旨在保护网站免受Magecart和其他基于JavaScript的恶意攻击。
通过在目标网站中引入恶意JavaScript脚本并将网站用户重定向至恶意网站,这是一种很常见的网络攻击手段。目标用户在被重定向至恶意网站后,攻击者将能够显示钓鱼表单、利用漏洞实施攻击或窃取用户提交的支付信息等等。
为了在网站中引入恶意脚本,攻击者往往会将恶意内联JavaScript添加到网页中,在其控制下添加外部恶意JavaScript依赖文件,或者在供应链攻击中破坏现有的第三方脚本。
当JavaScript作为依赖项从外部位置加载时,在许多情况下,它们一般都不会有人去注意,特别是当站点的用户体验没有外部变化时,就更不会有人去关注它们了。
比如说,Magecart攻击是通过引入恶意JavaScript来进行的,它可以窃取用户在网站上提交的信用卡信息。由于这些数据被悄悄地传输到远程位置,而用户的购买行为不会被打断,用户不会注意到任何奇怪的东西,因此也不会向网站报告异常发生。
这样一来,Magecart攻击活动(https://www.bleepingcomputer.com/tag/magecart/page/4/)就可以悄悄地从目标用户那里窃取到信用卡信息,而几个月甚至几年之后,攻击早就已经发生了(https://www.bleepingcomputer.com/news/security/oxo-breach-involved-magecart-attack-that-targeted-customer-data/),一切都已经来不及了。
Page Shield-保护网站免受恶意脚本攻击
就在前几天,Cloudflare宣布了一个新的安全特性,即Page Shield,这个新功能可以检测由恶意JavaScript依赖引起的针对终端用户浏览器的攻击。
Cloudflare表示:“我们的使命是帮助建立一个更好的互联网,其中也涉及到终端用户的浏览器。在过去的几年里,我们发现针对终端用户浏览器的攻击活动日趋频繁。有了Page Shield,我们将帮助应用程序检测并缓解这些难以捉摸的攻击,以确保用户敏感信息的安全。”
随着Page Shield的发布,Cloudflare开始使用一个“脚本监视器”工具,每当受保护站点上的访问者在浏览器中执行JavaScript依赖文件时,该工具都会向Cloudflare报告。
在这些报告的帮助下,Cloudflare将构建站点上使用的已知脚本的历史记录。当检测到一个新的脚本时,便会提醒网站的管理员,以便他们可以进一步调查。
通过使用脚本监视器,Web管理员可以发现访问者在其网站上加载的可疑JavaScript文件,并快速调查这些文件是否具备恶意行为。
但值得一提的是,它并不能保护访问者不受在供应链攻击中修改的现有JavaScript依赖项的影响。
比如说,一个网站曾经加载过一个来自于https://www.example.com/js/harmless.js的JavaScript文件,而攻击者又曾经修改过example.com上的文件,那么脚本监视器将无法检测到这种修改行为,因此恶意代码将被允许在供应链攻击中执行。
为此Cloudflare也表示,他们计划在将来添加更多的功能,以实现在脚本内容发生更改或包含恶意签名时发出警报。
后话
总的来说,对于Cloudflare用户来说,这是一个令人兴奋的工具,可以帮助检测您的站点是否被黑客入侵以加载恶意JavaScript文件。
但是,此功能仅适用于商业和企业订阅,而那些处于Pro或Free服务级别的用户将无法从该服务中获益。
如果您对测试新的页面屏蔽功能感兴趣,可以注册加入Cloudflare的Beta测试(https://www.cloudflare.com/waf/page-shield/)。