RBI远程浏览器隔离技术

1、什么是浏览器隔离?

浏览器隔离是一项技术,它通过将加载网页的过程与显示网页的用户设备分开以此来保持浏览活动的安全。这样,潜在的恶意网页代码就不会在用户的设备上运行,可防止恶意软件和其他网络攻击对用户设备和内部网络的影响。

从安全角度来看,访问网站和使用 Web 应用程序都涉及到 Web 浏览器需要加载不受信任的远程来源(如遥远的 Web 服务器)的内容和代码,然后在用户的设备上执行这些代码,这使得浏览 Web 成为一种相当危险的活动。与之相反,浏览器隔离在远离用户的地方加载和执行代码,使用户设备和所连接的网络免受风险的影响——这类似于在工厂内使用机器人来执行某些危险任务可以使工厂工人更安全。

浏览器隔离是零信任安全模型的重要组成部分,在该模型中,默认不信任任何用户、应用程序或网站。零信任是一种信息安全方法,默认情况下不信任任何用户、Web 流量、应用程序或设备。零信任安全模型假设即使用户已安全加载网站 99 次,该网站也可能在第 100 次被入侵。浏览器隔离是在实践中实现这一假设的一种方式。

1.1、浏览器隔离的作用

浏览器隔离的作用:

删除危险的下载内容
恶意脚本不会在设备上或私人网络内执行
阻止通过浏览器进行的零日漏洞(零日漏洞是指利用以前未被发现或未打补丁的漏洞进行的攻击。虽然很少,但零日漏洞几乎不可能被阻止。)
可以在不阻止整个网站的情况下阻止恶意 Web 内容
数据防泄密。可控制企业的敏感数据只能存在于远程浏览器上,无法下载到本地。即数据不落地。(远程浏览器可配置用户下载数据存放在用户本地端或者远程浏览器端)

1.2、不同类型的浏览器隔离

浏览器隔离主要有以下三种:远程(或云托管)、内部以及客户端。

远程浏览器隔离:远程浏览器隔离技术在远离用户设备和组织内部网络的云服务器上加载网页并执行任何相关的 JavaScript 代码。
内部浏览器隔离:内部浏览器隔离所做的工作与此相同,但是在组织内部管理的服务器进行。
客户端浏览器隔离:客户端浏览器隔离仍然在用户设备上加载网页,但它使用虚拟化或沙盒来将网站代码和内容与设备的其他部分进行隔离。这会将浏览器执行移动到在用户端点或本地服务器上创建的虚拟机或沙箱(应用程序级别或操作系统级别)。这种类型的隔离不能被认为是完全安全的,因为浏览器仍然在用户的设备上执行。攻击者有可能突破隔离并访问用户的本地文件和网络。
在所有三种浏览器隔离方法中,用户的浏览会话会在浏览会话结束时都被删除,因此与该会话相关的任何恶意 cookie 都会被删除。

2、远程浏览器隔离(RBI,Romote Browser Isolation)

远程浏览器隔离技术(RBI,Remote Browser Isolation),该技术从另外一种角度提出了解决现阶段Web类业务的方案风险。通常利用虚拟化或容器化技术将用户的Web浏览活动与端点设备隔离,借此显著减少恶意链接和文件的攻击面。

2.1、远程浏览器隔离的工作原理

在这里插入图片描述
cloud server:RBI服务器,作为整个方案实现的载体。
cloud browsers:Web服务的内容在RBI服务器提供的隔离容器 cloud browsers 中根据不同的技术进行重建,然后提供给最终用 endpoint(用户终端)
客户端与 RBI 服务器的交互协议:客户端到RBI服务之间交互协议根据不同方案协议有所不同,现在大部分还是HTTP协议。
有些方案需要客户端安装特定的 client,有些无客户端方案直接使用主流的浏览器即可。

远程或云托管的浏览器隔离使不受信任的浏览器活动尽可能地远离用户设备和企业网络。它通过在云供应商控制的云服务器上进行用户的 Web 浏览活动来实现。然后,它将产生的网页传输到用户的设备上,这样用户就可以像平常一样与互联网互动,但不会在他们的设备上实际加载完整的网页。鼠标点击或表格提交之类的任何用户行为都会被传输到云服务器并在那里执行。

2.2、用户设备上的操作如何同步到远程浏览器

对于用户,RBI 是这样工作的:

用户在远程浏览器隔离服务中进行连接和身份验证。
RBI 服务创建一个虚拟实例并为用户提供对远程浏览器的访问。
用户像往常一样通过本地浏览器与网络内容交互。 (捕获用户浏览器中的事件(点击、鼠标移动、击键等))
如360远程浏览器,能捕捉到用户终端设备上的鼠标和键盘的具体事件(包括鼠标具体点击的位置等),然后再传输给远程浏览器重现。捕捉的是硬件设备的事件,不是浏览器 JS 事件。  
远程浏览器将 Web 内容(以视频流或经过处理的 HTML 代码的形式)传递到用户的本地浏览器。
当用户会话结束时,包含远程浏览器的实例将终止。

2.3、远程浏览器隔离如何将web内容发送到用户设备上

远程浏览器隔离服务器有以下几种方式可以将 Web 内容发送到用户的设备上:

2.3.1、像素推送

像素推送比较好理解,通过捕获远程浏览器“窗口”的像素图像,并将图像序列传输到客户端端点浏览器或专有客户端。将浏览器流式传输到用户,用户查看其浏览活动的视频或映像,这种技术就称为“像素推送”。

像素推送捕获用户浏览器中的事件(点击、鼠标移动、击键等),将它们传输到远程浏览器,并以一系列屏幕截图或视频流的形式返回响应。通过这种方式,用户的端点不会接收任何 Web 应用程序代码,并且用户仅与图像或视频渲染进行交互。

像素推送技术与远程桌面的工作方式相似。通过像素推送,用户可能会遇到延迟,因为流式视频和音频内容可能会滞后。此外,用户端点上显示的视频可能会模糊,因为 Web 内容以远程实例上设置的分辨率流式传输。并且使用体验差、带宽占用高、成本高这些都是比较可见的明显缺点。

其实在虚拟化的时代里,还有别的名字,叫做远程应用、虚拟应用、RemoteApp 等等。类比于远程桌面,是把服务端的 Windows 桌面图像传递到客户端来,这里只是用浏览器这个应用的图像换掉 Windows 桌面图像而已。

这是一种基于视频的方法,捕获远程浏览器“窗口”的像素图像,并将图像序列传输到客户端端点浏览器或专有客户端。这与远程桌面和 VNC 系统的工作方式相似。尽管被认为相对安全,但这种方法存在一些固有的难点:

连续编码远程网页的视频流并将其传输到用户端点设备,成本非常高昂。将此方法扩展到数百万用户,财务上不被允许,逻辑上也很复杂。
需要大量带宽。即使经过高度优化,推送像素也会占用大量带宽。
不可避免的延迟会导致用户体验不佳。这些系统往往运行缓慢,而且会引发许多用户投诉。
带宽要求高加上连接不一致,导致移动支持能力下降。
HiDPI 显示可能以较低的分辨率渲染。像素密度随分辨率呈指数增长,这意味着远程浏览器会话在 HiDPI 设备上可能显得模糊或失焦。
市面上大部分的远程隔离浏览器技术方案,均是这一种,因为其实现技术简单,复用传统的 RDP、VNC 等产品虚拟桌面和虚拟应用的技术路线即可。判断标准很简单,只要其产品形态是浏览器里套了个浏览器就是这样的技术路线

2.3.2、DOM 重写

DOM 重建。作为对像素推送缺陷的一种响应而诞生,打开、检查和重写每个网页,删除恶意内容,然后发送到本地用户浏览器,这种方法称为 DOM 重写。DOM 重建尝试在将内容转发到本地端点浏览器之前对 HTML 和 CSS 等进行清理。通过重建 HTML 和 CSS 等来消除活跃代码、已知漏洞,以及其他潜在的恶意内容。尽管解决了像素推送在延迟、运营成本和用户体验方面的问题,但带来了两个新的重大问题:

安全性。底层技术(HTML、CSS、Web 字体等)是被黑客用来破坏端点的攻击媒介。试图去除恶意内容或代码就像给蚊子洗澡:您可以尽力清洁它们,但它们仍然是危险和恶意材料的固有载体。即便是借助 RBI 系统,也无法提前识别利用这些技术的所有手段。
网站保真度。不可避免地,尝试移除恶意活动代码并重建 HTML、CSS 和现代网站的其他方面会导致页面遭到破坏,无法正常渲染或根本不能渲染。今天可行的网站明天就可能不行,因为网站发布者的日常变更可能会破坏 DOM 重建功能。结果就是像打鼹鼠游戏里那样无休止地遗留需要大量资源的问题。某些 RBI 解决方案难以支持常见的企业级服务,例如 Google G Suite 或 Microsoft Office 365。即使被认为是恶意软件的载体,Web 电子邮件仍然是数据泄露的一大来源。

客户仍然要做出权衡,要么选择用户体验差、运营成本高的安全解决方案,要么选择速度快、安全性低很多、还破坏网站的解决方案。这样的权衡促使一些 RBI 提供商在其产品中同时实施两种远程处理技术。然而,这是让客户饮鸩止渴,不去解决基本的问题。

考虑到当今 RBI 系统的重要权衡,当前客户的一项常见优化是仅向组织里最易受攻击的用户(例如风险较高的高管、财务、业务开发或 HR 员工)部署远程浏览功能。如同给教室里的一半学生接种疫苗,这会导致一种错误的安全感,对保护大型组织来说无济于事。

DOM 重构是一种理论上的技术方案,实际上在市场上现有的所有 RBI 产品中,作者并没有任何一家宣传是基于该方案的。

使用这种方法,将在一个隔离的环境中加载并重写网页以删除潜在的攻击,在内容安全后,它将被发送到用户的设备上,在那里网页代码会被第二次加载和执行。DOM 重建从网页中删除所有可疑或动态代码,这意味着用户可能不会收到页面的重要块。我们可以将安全的 Web 应用程序列入白名单,以降低丢失重要信息的风险。

该方案对于一些内容比较复杂的网站场景不是很合适,但是反过来对于一些简单的门户网站类场景就比较合适了。

2.3.3、网络矢量渲染(NVR)

NVR相较于前两种技术比较难以理解。可以理解为是基于浏览器底层功能的复制将远端浏览器的一些渲染工作流程截取后同步到本地,然后在本地进行复现。

NVR工作原理如下:
在这里插入图片描述
(首先要清楚一点,浏览器窗口中可见的所有内容均通过 Skia 渲染层进行渲染。这包括应用程序窗口 UI(如菜单),但更重要的是,网页窗口的整个内容均通过 Skia 渲染。)

NVR 技术截获远程Chromium 浏览器的Skia 绘制命令 ❶,对其进行令牌化和压缩,然后加密并通过网络 ❷ 传输到在用户端点桌面或移动设备本地运行的任何 HTML5 兼容 Web 浏览器 ❸(Chrome、Firefox 和 Safari 等)。
首次使用时,S2 RBI 服务将 NVR WebAssembly(Wasm)库 ❹ 透明地推送到端点设备上的本地 HTML5 Web 浏览器,并在那里缓存以备日后使用。NVR Wasm 代码包含一个嵌入式 Skia 库和必要的代码,用于解压缩、解密和“重演”从远程 RBI 服务器到本地浏览器窗口的 Skia绘制命令。
通过获取的绘图命令,在本地 HTML5 浏览器的窗口中重新绘制它们。
(这种技术在 cloudfare(一家美国的关于内容交付网络(CDN) 和安全公司)收购网络矢量渲染(NVR)的 S2 专利技术后归其所有,所以被cloudfare大力推广)

2.4、Skia 图形引擎

Skia 是一款用 C++ 开发的、性能彪悍的 2D 图像绘制引擎,其前身是一个向量绘图软件。2005 年被 Google 公司收购后,因为其出色的绘制表现被广泛应用在 Chrome 和 Android 等核心产品上。Skia 在图形转换、文字渲染、位图渲染方面都表现卓越,并提供了开发者友好的 API。

Skia 是使用广泛的跨平台图形引擎,用于 Android、Google Chrome、Chrome OS、Mozilla Firefox、Firefox OS、FitbitOS、Flutter、Electron 应用程序框架和许多其他产品。

Chromium 浏览器窗口中可见的所有内容均通过 Skia 渲染层进行渲染。这包括应用程序窗口 UI(如菜单),但更重要的是,网页窗口的整个内容均通过 Skia 渲染。Chromium 合成、布局和渲染极其复杂,具有针对不同内容类型、设备环境等进行了优化的多个并行路径。

2.5、RBI技术的好处

能够抵御网络钓鱼攻击。当用户单击网络钓鱼电子邮件或文件时,RBI 解决方案会显示经过清理的电子邮件文本、扫描附件,并能在电子邮件包含指向恶意网站的 URL 时隔离网络钓鱼网页。这样,用户与钓鱼网站的交互是完全安全的。
防止泄露机密数据。系统管理员可以更改 RBI 设置,以只读模式显示可疑 URL。这允许用户访问此类网页,但不允许他们输入任何凭据。或者,管理员可以只允许用户访问受信任的网站。
对下载的文件进行隔离清理。如果用户想要下载一个文件,它也在远程实例中被隔离。RBI 系统提供远程查看此内容的工具(例如 PDF 或图像查看器)。如果软件无法读取下载的文件,它会清理远程服务器上的内容并将其发送到用户的端点。通过这种方式,RBI 解决方案降低了下载恶意和可疑文件的风险。
详细的用户活动日志。RBI 系统记录远程实例上的所有事件以及与最终用户的通信。如果发生攻击或安全违规,系统管理员可以查看这些日志以清楚了解网络安全事件、报告事件、提出安全改进建议以防止类似问题、为取证活动收集数据等。
能安全访问有风险的内容。RBI 系统可以允许用户访问任何网站并下载他们需要的数据,并且同时会消除存在的威胁。

  • 13
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值