攻击者将恶意软件分解成小块并绕过您的安全网关

近二十年来,安全 Web 网关 (SWG) 一直用于监控网络流量、拦截恶意文件和网站以及保护企业免受 Web 威胁。

如今,许多企业都相信他们的 SWG 能够捕获所有已知恶意软件,正如其 SLA (服务质量保证)中所承诺的那样。

然而,只需将恶意软件分解成更小的碎片,即可成功绕过 SWG 并将恶意负载传送到端点。

自从SquareX的研究人员公开演示了这些浏览器安全攻击后,客户和供应商都惊讶地发现这些攻击如此轻松地躲过了他们的 SWG。

文件分块:将恶意软件分解成微小且不可检测的碎片的艺术

文件分块攻击利用了 SWG 和云代理单独分析网络流量和文件(每次一个请求)这一事实。

在这些攻击中,恶意行为者将恶意软件文件拆分成几个较小的片段或块,并将它们单独传送到客户端浏览器。

由于每个片段本身太小或看似无害,SWG 无法识别整体恶意意图,从而允许这些块通过而不被发现。

一旦所有区块都传送到受害者的浏览器,攻击者的 JavaScript 代码就会在客户端将这些片段重新组装成完整的可执行恶意软件。

这可能是勒索软件、间谍软件或任何其他形式的恶意软件,当它完全形成并下载到客户端设备上时,SWG 已经失效了。

SWG 擅长在已知恶意文件以完整形式出现时检测和阻止它们。

它们通过扫描网络流量以查找已知恶意软件签名或使用 AI/ML 来检测可疑模式来运行。

然而,典型的 SWG 或云代理会单独检查每个网络请求或数据流,这些解决方案的无状态性质意味着它们不会保留先前请求的记忆。

SWG 无法判断所有请求是否来自同一个浏览器选项卡或窗口,这意味着它无法识别一系列看似无害的块会在同一选项卡上组合成危险的东西。

这些限制使得攻击者能够通过文件分块成功地将众所周知的恶意软件传送给企业员工。

不同的分块技术

攻击者开发了各种分块技术来进一步逃避检测。以下是一些常用的方法:

直接拆分攻击

恶意文件被拆分成多个小部分,并分别发送到浏览器。由于这些部分太小,不足以触发安全警报,因此 SWG 允许每个块通过。一旦所有部分都到达客户端,JavaScript 就会重新组装恶意软件并执行它。

反向拆分攻击

在这种变体中,每个块不仅被拆分,而且还被反转。这意味着即使某些安全解决方案试图检测各个部分中的模式,反转的内容看起来也是良性的。一旦所有反转的部分都交付,它们就会被反转回其原始形式并在执行恶意软件之前重新组装。

随机大小攻击

在此,文件被分解成随机大小的块,使检测更加困难。由于块的大小各不相同,并且不遵循可预测的模式,因此几乎不可能对这些块进行指纹识别。同样,一旦所有部分都交付,恶意软件就会在客户端重新组装。

混合匹配攻击

此方法结合了反向拆分和随机大小技术,创建了一组高度混淆的文件块,使检测更加困难。一旦传送到客户端,JavaScript 就会通过反转和匹配随机大小的片段来重新组装恶意软件。

此外,攻击者还在野外利用 30 多个 SWG 绕过方法进入企业网络。

为了保护自己免受这些攻击,企业必须采用新的浏览器原生安全方法,这些方法可以检测浏览器中的客户端活动,并在恶意软件离开浏览器之前阻止其下载。

如果没有这一额外的保护层,企业仍然容易受到利用其云代理解决方案局限性的攻击。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/881182.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Docker 里面按照ifconfig

1. 进入Docker 容器内部 docker exec -it xxx bash2. 安装 net-tools iputils-ping apt-get update && apt-get install -y net-tools apt-get update && apt-get install -y iputils-ping 3. 执行ifconfig 执行ping

WebLogic 后台弱⼝令GetShell

漏洞描述 通过弱⼝令进⼊后台界⾯ , 上传部署war包 , getshell 影响范围 全版本(前提后台存在弱⼝令) 环境搭建 cd vulhub-master/weblogic/weak_password docker-compose up -d 漏洞复现 默认账号密码:weblogic/Oracle123 weblogic…

ChatCADChatCAD+:Towards a Universal and Reliable Interactive CAD using LLMs

ChatCAD(论文链接:[2302.07257] ChatCAD: Interactive Computer-Aided Diagnosis on Medical Image using Large Language Models (arxiv.org)) 网络流程图: 辅助阅读: 基于大型语言模型的医学图像交互式计算机辅助诊…

数据结构--双链表

目录 一、引言 二 、链表的分类 1.单向或双向 2.带头或不带头 3.循环或不循环 三、双链表的概念与基本结构 1.概念 2.基本结构 三、双链表的常见操作 1.创建节点 2.初始化 3.头插 4.尾插 5.头删 6.尾删 7.打印 8.查找 9.插入节点 10.删除节点 11.销毁链…

gin配置swagger文档

一、基本准备工作 1、安装依赖包 go get -u github.com/swaggo/swag/cmd/swag go get -u github.com/swaggo/gin-swagger go get -u github.com/swaggo/files2、在根目录上配置swagger的路由文件 //2.初始化路由router : initialize.Routers()// 配置swaggerdocs.SwaggerInfo…

京东商品属性的详细api数据解析:颜色、尺寸与材质

京东(JD.com)作为一个大型电商平台,其商品信息通过API接口提供给开发者或第三方服务使用,以便进行商品搜索、展示、分析等操作。然而,直接访问京东的详细商品属性(如颜色、尺寸、材质等)API通常…

uniapp|微信小程序 实现输入四位数 空格隔开

<template><page-meta :page-style"cssVar"></page-meta><view class"container"><u-navbartitle"优惠券兑换"placeholderbgColor"#fff":autoBack"true":titleStyle"{fontFamily: SourceHa…

Maven Helper 插件

推荐指数&#xff1a;★★★★★ 分析依赖冲突插件 Maven Helper插件就可免去命令行困扰。通过界面解决依赖冲突。 点击此按钮&#xff0c;切换到此工具栏 可进行相应操作&#xff1a; Conflicts&#xff08;查看冲突&#xff09;All Dependencies as List&#xff08;列表形…

Java 在 GIS 领域的学习路线?

Java是一门广泛应用于企业级开发的编程语言&#xff0c;而GIS则是一种常用于地理信息处理和分析的技术。将Java与GIS结合起来&#xff0c;可以在企业级应用中实现更多的功能和业务需求&#xff0c;且在实际领域越来越广泛。 Java在GIS中重要的作用 1、跨平台性 Java具有跨平台…

鸿蒙HarmonyOS开发:一次开发,多端部署(界面级)天气应用案例

文章目录 一、布局简介二、典型布局场景三、侧边栏 SideBarContainer1、子组件2、属性3、事件 四、案例 天气应用1、UX设计2、实现分析3、主页整体实现4、具体代码 五、运行效果 一、布局简介 布局可以分为自适应布局和响应式布局&#xff0c;二者的介绍如下表所示。 名称简介…

搜索引擎onesearch3实现解释和升级到Elasticsearch v8系列(一)-概述

简介 此前的专栏介绍Onesearch1.0和2.0&#xff0c;详情参考4 参考资料&#xff0c;本文解释onesearch 3.0&#xff0c;从Elasticsearch6升级到Elasticsearch8代码实现 &#xff0c;Elasticsearch8 废弃了high rest client&#xff0c;使用新的ElasticsearchClient&#xff0c;…

uniapp 如何自定义导航栏并自适应机型

如今的移动设备有各种不同的屏幕形状&#xff0c;如刘海屏、水滴屏等。这些异形屏会影响页面的布局&#xff0c;尤其是导航栏和底部栏的显示。通过获取安全区域信息&#xff0c;可以确保页面内容不会被异形屏的特殊区域遮挡。 在设计页面顶部导航栏时&#xff0c;可以根据 saf…

模拟自然的本质:与IBM量子计算研究的问答

量子计算可能是计算领域的下一个重大突破&#xff0c;但它的一般概念仍然处于炒作和猜测的现状&#xff1f;它能破解所有已知的加密算法吗&#xff1f;它能设计出治愈所有疾病的新分子吗&#xff1f;它能很好地模拟过去和未来&#xff0c;以至于尼克奥弗曼能和他死去的儿子说话…

【Redis入门到精通二】Redis核心数据类型(String,Hash)详解

目录 Redis数据类型 1.String类型 &#xff08;1&#xff09;常见命令 &#xff08;2&#xff09;内部编码 2.Hash类型 &#xff08;1&#xff09;常见命令 &#xff08;2&#xff09;内部编码 Redis数据类型 查阅Redis官方文档可知&#xff0c;Redis提供给用户的核心数据…

dockercompose指定配置文件

dockercompose指定配置文件 文件名字必须是以下的集中形式&#xff1a; docker-compose.yaml docker-compose.yml compose.yaml compose.yml 其他名字就失败的。 一般白眉大叔都是用 compose.yaml 这个格式&#xff0c; 用习惯了。 但是我们必须知道它有几种格式都是可以…

如何利用nw.js打包vue项目

引言 最近有一个开发windows桌面应用的需求, 需要将vue项目打包成.exe文件&#xff0c;最好是变成可安装版(非绿色版)。特此记录一下如何通过nw.js将vue项目打包成.exe。可能这种方式不是最优&#xff0c;仅供大家参考&#xff01; nw.js简介&#xff08;以下描述来自nw.js官…

C#|.net core 基础 - 扩展数组添加删除性能最好的方法

今天在编码的时候遇到了一个问题&#xff0c;需要对数组变量添加新元素和删除元素&#xff0c;因为数组是固定大小的&#xff0c;因此对新增和删除并不友好&#xff0c;但有时候又会用到&#xff0c;因此想针对数组封装两个扩展方法&#xff1a;新增元素与删除元素&#xff0c;…

大数据概念与价值

文章目录 引言大数据的概念高德纳咨询公司的定义麦肯锡全球研究所的定义什么是大数据&#xff1f; 大数据的特征Volume&#xff08;体积&#xff09;Variety&#xff08;种类&#xff09;Velocity&#xff08;速度&#xff09;Value&#xff08;价值&#xff09;Veracity&#…

【Redis入门到精通三】Redis核心数据类型(List,Set)详解

目录 Redis数据类型 ​编辑 1.List类型 &#xff08;1&#xff09;常见命令 &#xff08;2&#xff09;内部编码 2.Set类型 &#xff08;1&#xff09;常见命令 &#xff08;2&#xff09;内部编码 Redis数据类型 查阅Redis官方文档可知&#xff0c;Redis提供给用户的核…

ASP.NET Core高效管理字符串集合

我们在开发 Web 项目时经常遇到需要管理各种来源的字符串集合&#xff08;例如HTTP 标头、查询字符串、设置的值等&#xff09;的情况。合理的管理这些字符串集合不仅可以减少出bug的几率&#xff0c;也能提高应用程序的性能。ASP.NET Core 为我们提供了一种特殊的只读结构体 S…