简单了解 sandbox 沙盒

本文介绍了操作系统及浏览器层面的沙盒技术原理,以Chromium为例详细解释了多进程架构下如何通过沙盒保护renderer进程,同时对比了沙盒技术和主动防御技术的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.操作系统和浏览器层面的沙盒:

操作系统层面的沙盒的含义就是操作系统对进程的可访问的内存地址所做的限制,限制进程可访问的内存在其被分配的内存地址区间内,而不允许操作其他的内存地址,从而提供安全层面的防护。

浏览器层面的沙盒本质原理没多大变化,实践层面可能会根据浏览器环境有所变化,比如限制脚本操作本页面之外的其他页面的DOM,限制访问非同源文档,限制向非同源服务器发送ajax等等,目的依然是安全。

以chromium为例。chromium是多进程架构,浏览器前端界面由browser进程管理,各个web page的tab属于renderer进程管理。chromium的sandbox是将renderer进程作为防护对象。browser进程会给每个renderer进程分配资源,但这些renderer进程只能访问被分配的资源,不能访问未被分配的资源。这里资源的概念比较广泛,具体到可访问的DOM(对应内存中的对象),或抽象到origin scope等。实现层面的话,可以类比Linux下文件系统的权限位,浏览器会对每个web page实现对应的权限位,w3c HTML规范里 Sandbox 有相关内容。

引用:https://www.zhihu.com/question/20026752/answer/138913400

2.沙盒技术与主动防御技术原理截然不同

主动防御是发现程序有可疑行为时立即拦截并终止运行。
沙盒技术是发现可疑行为后让程序继续运行,当发现的确是病毒时才会终止。

沙盒技术的实践运用流程是:让疑似病毒文件的可疑行为在虚拟的“沙盒”里充分表演,“沙盒”会记下它的每一个动作;当疑似病毒充分暴露了其病毒属性后,“沙盒”就会执行“回滚”机制:将病毒的痕迹和动作抹去,恢复系统到正常状态。

引用:https://www.zhihu.com/question/20026752/answer/13849683

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值