在计算机安全领域,沙箱(Sandbox)是一种程序的隔离运行机制,其目的是限制不可信进程的权限。沙箱技术经常被用于执行未经测试的或不可信的客户程序。为了避免不可信程序可能破坏其它程序的运行,沙箱技术通过为不可信客户程序提供虚拟化的磁盘、内存以及网络资源,而这种虚拟化手段对客户程序来说是透明的。由于沙箱里的资源被虚拟化(或被间接化),所以沙箱里的不可信程序的恶意行为往往会被限制在沙箱中。

沙箱技术一直是系统安全领域的挑战,不存在说哪一种方案是足够安全的。沙箱技术方案通常是需要结合多种系统安全技术来实现,采用防御纵深(Defence in Depth)的设计原则,筑建多道防御屏障,尽可能地将安全风险将为最低。下面我们主要讨论如何利用Linux kernel所提供的安全功能来建立有效的沙箱技术。

在讨论之前,我们简单回顾一下Linux安全模型相关的内容(假设读者已经非常熟悉):

(1) 每个进程都有自己的地址空间;

(2) MMU硬件机制来保证地址空间的隔离;

(3) Kernel是系统的TCB(Trusted Computing Base),是安全策略的制定者和执行者;

(4) 进程是最小的权限边界;

(5) root具有最高权限,它能控制一切;

(6) 其它用户受DAC(Discretionary Access Control)限制,如文件系统的UGO权限控制。

进程是最小的权限边界,其根本原因是MMU能保证进程地址空间的隔离。

Linux Kernel还提供了与进程降权(drop privilege)相关的一些功能:

1. setuid

2. POSIX.1e capability

3. chroot jail

4. Quota control (eg, cgroup, namespace)

5. Linux Container

6. Linux Security Module (LSM)

下篇我们会介绍如何在实践中利用这些诀窍来构建一个有效的sandbox。

linux沙箱隔离_Linux沙箱技术介绍相关推荐

  1. linux HZ 值_Linux系统目录结构介绍

    1 前言 windows目录结构:    C:\windows    D:\Program Files    E:\文档\精品    F:\娱乐\动态图 linux 目录结构:一切从根开始=====& ...

  2. iso linux 内核版本号_Linux内核全面介绍

    Linux内核(kernel)和linux操作系统区别 Linux内核指的是一个提供硬件抽象层.磁盘及文件系统控制.多任务等功能的系统软件.一个内核不是一套完整的操作系统.通常我们所说的linux操作 ...

  3. linux route 刷新_linux基础命令介绍十五:推陈出新

    本文介绍ip.ss.journalctl和firewall-cmd,它们旨在代替linux中原有的一些命令或服务. 1.ip ip [OPTIONS] OBJECT COMMAND ip是iprout ...

  4. linux下图片加密原理,Linux中常见的加密技术介绍

    常见的加密技术: 对称加密:非对称加密:单向加密:SSL/TLS:秘钥交换 1.对称加密 采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单密钥加密 ...

  5. linux沙箱隔离_360隔离沙箱在WINDOWS 10 的WSL下的沙箱逃逸

    简介: 360隔离沙箱是360安全中心于2011年5月14日发布的安全产品,目前内置与360安全卫士的功能大全中.在360隔离沙箱内运行程序完全隔离不怕中毒.快速建立隔离环境,轻量便捷.自动识别与手动 ...

  6. 前端技术探索 - 你不知道的JS 沙箱隔离

    点击上方关注 前端技术江湖,我们一起学习,天天进步 一些「炒冷饭」背景介绍 本文并不会从头开始介绍 Web Worker 的基础知识和基本 API 的使用等(只是部分有涉及),若还未了解过 Web W ...

  7. linux沙箱隔离_Android系统的沙箱隔离机制

    大家都知道iOS系统是一种封闭的系统,iOS系统的应用程序之间都具有严格的沙箱隔离机制.而Android系统同样具备类似沙箱隔离机制,只是Android系统是开源的,开发者的自主性更大. Sandbo ...

  8. linux沙箱隔离_基于多安全机制的 Linux应用沙箱的设计与实现

    基于多安全机制的 Linux 应用沙箱的设计与实现 李 晨 1 涂碧波 2 孟 丹 2 冯圣中 1 [摘 要] 摘 要 文章设计了一个具有自己独立工作目录的 Linux 应用沙箱,可 为用户对不信任的 ...

  9. 手机沙盒隔离软件_x8沙箱官网下载-X8沙箱(隔离运行双开助手)下载v0.6.8.8-cn 安卓版-西西软件下载...

    X8沙箱是一款隔离加上运行的双重功能的软件,想要双开的话这款软件也是一个较为不错的选择,并且你能够用画中画的方式来进行游戏的运行,在一个手机上面直接的双开多种不同的游戏,只要你手机有着足够的性能就能够 ...

最新文章

  1. pandas将dataframe中的年、月、日数据列合并成完整日期字符串、并使用to_datetime将字符串格式转化为日期格式
  2. Tableau实战系列浏览 Tableau 环境(三) -在“数据”窗格的数据源中导航
  3. C语言 指针在函数传参中的使用
  4. 两个byte[]拼接
  5. 选择结构_扩展if-else语句
  6. 【AtCoder - 4242 】To Infinity(思维)
  7. 计算机概论在线阅读,计算器概论 or 计算机概论
  8. 奈飞文化集:自由与责任_如何与自由客户合作:最好的合同就是您永远不必执行的合同...
  9. jsp不能使用return时候,如何在出异常时退出,不在向下执行
  10. 简单的php引导页面设计,PS简单制作唯美朦胧柔美的渐变APP引导页
  11. access_token is invalid or not latest hint
  12. 用Vue.js递归组件构建一个可折叠的树形菜单
  13. Javascript:学习笔记
  14. ActivityGroup 例子
  15. 异步处理-Promise解决回调地狱
  16. html弹窗后 自动关闭页面,网页一键复制弹出提示窗口后几秒后自动关闭提示js代码...
  17. 一步一步开发Game服务器(二)登陆2
  18. ARMv8 Cortex-a 编程向导手册学习_2.ARMv8-A 寄存器
  19. MongoDB多层嵌套查询
  20. [ZT]网站十种常见盈利模式简介

热门文章

  1. 什么是对象的消息_这一次,我们用最详细的方式解析Android消息机制的源码
  2. python游戏代码示例_练习项目20:使用python制作游戏(中)
  3. 源服务器信息,软件源搭建
  4. hive 百分比_HIVE短期内再次突破前高
  5. Jacobian 和 Hessian 矩阵
  6. HDU 6709“Fishing Master”(贪心+优先级队列)
  7. 编译程序提示配置PKG_CONFIG_PATH
  8. Linux(CentOS)下设置nginx开机自动启动和chkconfig管理
  9. struts中如何查看配置文件中是否存在某个返回值
  10. 基于JAVA实现的排序算法总结