搜索
查看: 3460|回复: 37
收起左侧

[分享] Sandboxie深度教程

  [复制链接]
一个人的奋斗
发表于 2018-4-25 22:02:23 | 显示全部楼层 |阅读模式
Sandboxie深度教程

一、沙盘功能

   因为沙盘的特性,只能防沙盘由内向外的访问,不防沙盘由外向内的访问。
   使用沙盘主要是实现三个功能:系统安全保障、应用软件管理、未知软件测试。

1、关于软件绿化:
    对于这个软件本身是可以绿化的,安装到非系统盘,沙盘存储位置也放到非系统盘,最重要的是sandboxie.ini一定要放在安装目录下,系统默认的C:\windows的文件要移动到安装目录下,这样,即使重装系统,所有在沙盘下的记录都不会受到影响,这是建立一个完全绿色的系统的基础

2、关于沙盘制作绿色软件:
    有一些软件表面上是要安装,有一个安装文件,其实本身是绿化的,像Foxmail、千千静听、QQ之类的,这个时候只要在沙盘下面安装,然后在沙盘目录下复制出来即可得到绿色软件
    有些软件是需要写入注册表的,这是需要新开一个沙盘,将软件装在沙盘中,然后在沙盘目录中找到这个文件,建立快捷方式,这时候可以通过快捷方式启动了

3、关于沙盘管理软件:
众所周知,微软的操作系统不像Linux系统架构,经过一段时间的使用,系统会变慢,Win7稍微好些,XP就非常严重了,甚至上午很快的速度,不重启,下午速度都会变慢,所以过一段时间都需要用Ghost重装系统,因为我电脑中的所有软件均是绿色软件或者是装在沙盘中的准绿色软件,重装系统即可立即使用,不需要任何的设定,满血复活

4、关于沙盘的安全性:
    上面已经叙述部分使用方法,其余不再赘述,自行探索之

5、哪些软件不能装在沙盘中,有三种:
   ---硬件驱动,这个虽然理论上也可以装在沙盘,但是要把安全性降得很低,放在沙盘没有意义
   ---

6、关于软件使用习惯:
   沙盘本身有行为分析的功能,运行在沙盘下,看一下生成的文件,就知道他有没有危害了,如果没有办法判断,又想适用一段时间,单独建立一个沙盘使用就可以了
   所以要养成习惯,新程序要在沙盘下先使用,不能直接在系统中安装,一个是会影响系统速度,另外还非常不安全
   至于XX网站,流氓软件,这些明知道有危害的软件,放在一个完全独立的沙盘中运行就行了,不会有任何的危险


二、沙盘常用设置

安全浏览
    Sandboxie可以将浏览器(包括浏览器启动的子程序,下载的文件)限制在沙盘里,从而保护真实系统的安全,如果,有虚拟机的话,可以在沙盘里运行IE,再上一些有毒网站,或者,在沙盘里直接运行病毒程序,自动倒沙以后,系统不会受到影响

沙盘化绿色程序、测试新软件
    沙盘还有一方面用处,测试新软件或不熟悉的程序;
    将某些程序安装在一个特定设置的沙盘里,形成一个绿色程序;
    在隔离的环境下运行的程序

Sandboxie作用举例:
    右键IE浏览器,在沙盘里运行,则沙盘DefaultBox处于激活状态,退出后,再次直接打开IE,发现输入过的网址、Cookies、历史、表单、密码,Internet临时文件,都没有被保存
    一旦退出浏览器,Sandboxie会清除所有上网痕迹,保护用户的隐私

Sandboxie COM 服务程序
    沙盘中的程序正常运行需要访问一些重要的系统服务
    不过,如果直接允许访问系统服务的话,程序会漏出沙盘,不能起到隔离的作用
    所以,沙盘为了程序安全的访问系统服务,提供了沙盘化的系统服务实例
    简单说,就是在沙盘里模拟系统服务
    沙盘中的程序重定向访问沙盘化的服务程序,使程序正常运行,而不影响安全性

以下是沙盘化服务程序:
  RpcSs-RemoteProcedure Call (RPC)- SandboxieRpcSs.exe
  DcomLaunch-DCOMServer Process Launcher- SandboxieDcomLaunch.exe
  CryptSvc-CryptographicService- SandboxieCrypto.exe
  BITS-BackgroundIntelligent Transfer Service- SandboxieBITS.exe
  Wuauserv-AutomaticUpdates- SandboxieWUAU.exe
  EventSystem-COM+EventSystem- SandboxieEventSys.exe
  MSIServer-WindowsInstaller- msiexec.exe


托盘右键菜单
    最重要的是终止所有程序和禁用强制运行程序,因为作用于所有沙盘
    Sandboxie的注册版是可以建立多个沙盘
    沙盘与真实系统隔离,各个沙盘之间也相互隔离
--------------------------------------------------------

DefaultBox子菜单
    具体到特定的沙盘,上半部分是运行相关,下半部分是沙盘内程序和内容相关
--------------------------------------------------------

沙盘右键菜单
    和上面类似,多出了沙盘设置、重命名沙盘、移除沙盘,是针对单个沙盘的
    最重要的是沙盘设置,几乎所有和沙盘相关的设置都在这里
--------------------------------------------------------

[#]标志 表示程序处于沙盘的监控下
===========================================================================

外观
    不要在窗口标题栏中显示SandBoxie标志
    BoxNameTitle=-
    在标题栏显示沙盘名
    BoxNameTitle=y
--------------------------------------------------------

    显示一个红色的环绕边框
    BorderColor=#0000FF
    显示一个红色的环绕边框,并仅当鼠标光标位于窗口标题栏时才显示边界
    BorderColor=#0000FF,ttl
    不显示环绕边框
    BorderColor=#00FFFF,off
===========================================================================

恢复

沙盘设置 --> 恢复 --> 快速恢复
    快速恢复,将沙盘内的文件恢复到真实系统
    删除沙盘之前,或当您手动调用快速恢复功能时,将检查以下文件夹中保存的沙盘中的内容,如果找到可恢复文件,您可以轻松地将它们恢复到沙盘环境以外
    可手动添加文件夹

    %Personal%我的文档目录
    RecoverFolder=%Personal%

    %Favorites%收藏夹目录
    RecoverFolder=%Favorites%

    %Desktop%桌面
    RecoverFolder=%Desktop%

--------------------------------------------------------

沙盘设置 --> 恢复 --> 直接恢复
    直接恢复,是对快速恢复的增强,可以在文件创建后自动调用恢复功能
    快速恢复可以通过托盘菜单和Sandboxie控制里右键菜单,恢复文件和添加文件夹

    表示启用直接恢复
    AutoRecover=y
    表示禁用直接恢复
    AutoRecover=n
    表示直接恢复功能排除扩展名为.jc!、.part的文件
    AutoRecoverIgnore=.jc!
    AutoRecoverIgnore=.part
--------------------------------------------------------

    还有一种方法恢复文件和添加快速恢复目录
Sandboxie控制 --> 查看 --> 文件和文件夹 --> 快速恢复文件夹
    右键选择文件,恢复到相同文件夹 或 恢复到任意文件夹 或 将快速恢复移除文件夹
    恢复到相同文件夹:如果你在沙盘中的QQ传文件,接受保存在桌面,那么恢复后也在桌面
    恢复到任意文件夹:可选择具体恢复到哪个文件夹

Sandboxie控制 --> 查看 --> 文件和文件夹 --> 所有分区和文件夹
    右键选择文件,恢复到相同文件夹 或 恢复到任意文件夹 或 将文件夹加入快速恢复
===========================================================================

删除
沙盘设置 --> 删除 --> 删除调用

沙盘设置 --> 删除 --> 删除调用 --> 自动删除沙盘中保存的内容
    自动倒沙,在退出程序后,自动删除残留的内容
    当沙盘里没有程序运行,自动删除沙盘里的内容
    如果沙盘中存在可恢复文件,在删除前会自动调用快速恢复
    AutoDelete=y
    AutoDelete=n

沙盘设置 --> 删除 --> 删除调用 --> 从不移除此沙盘或删除其保存的内容
    勾选此选项,则手动删除或自动删除均失效
    NeverDelete=y
    NeverDelete=n
--------------------------------------------------------

沙盘设置 --> 删除 --> 删除命令
    手动或自动删除沙盘文件所调用的系统命令RMDIR
    如果留空,默认系统命令是RMDIR(删除目录)

    %SANDBOX%"表示沙盘目录
    SDelete和Eraserl是需要下载安装的第三方安全删除文件工具

    DeleteCommand=%SystemRoot%\System32\cmd.exe/c RMDIR /s /q "%SANDBOX%"

===========================================================================

程序组
    新建一个程序组,组名<MyGroup>,这个组只有一个组成员小助手.exe
    ProcessGroup=<MyGroup>,小助手.exe
===========================================================================

程序启动
沙盘设置 --> 程序启动 --> 强制运行文件夹
    这里可添加下载目录,因为下载临时目录里的程序是不安全的,安全的已经被移动到其它目录,为了防止被病毒利用或者自己手痒点击,强制沙盘运行,也可以添加U盘或光驱
    如果以下任一文件夹内中的任何程序在沙盘外启动,将强制其在沙盘中运行,但如果其已在其他沙盘中启动,则不适用此项
    强制运行文件夹 优先级 高于强制运行程序
    这里可设置U盘访问,防止运行U盘的程序中毒
--------------------------------------------------------

沙盘设置 --> 程序启动 --> 强制运行程序 --> iexplore.exe
    如果IE在沙盘外启动,将强制其在沙盘中运行
    如果以下任一文件夹内中的任何程序在沙盘外启动,将强制其在沙盘中运行,但如果其已在其他沙盘中启动,则不适用此项
    设置记事本在SB中强制打开,不管用什么方式打开记事本都在SB中(记事本的标题前后有[#]记号)
    同样,程序名只需要写文件名,不要写所在路径,有多个程序重名的,SB不区分
    ForceProcess=notepad.exe
    例如:IE
    正确:iexplore.exe
    错误:C:\Program Files\Internet Explorer\iexplore.exe
    ForceProcess=iexplore.exe
===========================================================================

程序停止

沙盘设置 --> 程序停止 --> 驻留程序
    自动驻留的程序
    沙盘里的程序启动一个新程序(子程序),新程序会在相同沙盘里运行
    当主程序退出以后,子程序不一定会自动退出
    比如:用IE去查看一个PDF文件,AdobeReander(acrord32.exe)在IE结束以后,还会继续存在,不自动退出
--------------------------------------------------------

沙盘设置 --> 程序停止 --> 先导程序 --> iexplore.exe
    IE是沙盘的主程序,结束IE就会结束沙盘中的所有其它程序
    LeaderProcess=iexplore.exe
--------------------------------------------------------

沙盘名称 --> 右键 --> 程序设置

沙盘名称 -->右键 --> 程序设置 --> 程序启动 --> 事件警告消息SBIE1301
    AlertProcess=小助手.exe
-------------------------

沙盘名称 -->右键 --> 程序设置 --> 程序启动 --> 强制程序在此沙盘中运行
    ForceProcess=小助手.exe

-------------------------

沙盘名称 -->右键 --> 程序设置 --> 程序停止 --> 以下程序自动终止,如果其在其他所有程序结束后仍在沙盘中运行
    指在SB中打开的其他程序都关闭了,只剩下拖后程序没有关闭,则SB自动关闭拖后程序
    2.8及以后版本的SB,如果拖后程序是第一个在SB中打开程序,则即使只剩下拖后程序没有关闭,SB也不自动关闭拖后程序
    默认有几个拖后程序,一般情况用不到,可以保留不作改动

    LingerProcess=小助手.exe

    imeutil.exe=搜狗拼音输入法 辅助工具,如果沙盘里只剩下搜狗拼音输入法 辅助工具,则沙盘自动结束imeutil.exe进程
    LingerProcess=imeutil.exe
    搜狗拼音输入法 升级工具,如只剩下该程序,则沙盘自动结束该进程
    LingerProcess=pinyinup.exe
    顶星声卡驱动相关,如只剩下该程序,则沙盘自动结束该进程
    LingerProcess=syncor.exe
    Java自动更新程序,如只剩下该程序,则沙盘自动结束该进程
    LingerProcess=jusched.exe

    AdobeReader的进程,如只剩下该程序,则沙盘自动结束该进程
    LingerProcess=acrord32.exe
-------------------------

沙盘名称 -->右键 --> 程序设置 --> 程序停止 --> 当此先导程序结束后结束其他程序

同 程序停止 --> 先导程序
    一旦主要程序退出,沙盘里的其它程序全部终止,如IE退出,其它程序就结束运行
    LeaderProcess=iexplore.exe
    如果驻留程序是直接运行,而不是其它程序调用运行,那么驻留程序设置不起作用
===========================================================================

文件导入
    默认,沙盘里的程序是不能直接修改系统文件,修改的是沙盘里的替身
    先要从真实系统复制一个一模一样的文件到沙盘里,这个过程就是迁移
    如果迁移一个过大的文件,比如好几G的文件,这样会影响效率,浪费时间,浪费空间
    所以,要给迁移的文件大小,设置一个上限
    虚拟目录容量上限,默认是32M,建议视情况增加
    超过容量上限,SB默认会显示“SBOX1202”警告信息,也可以设置成不显示

    虚拟目录容量上限用完,后来的内容将不再写入,是只读访问
    CopyLimitKb=49152
    CopyLimitSilent=y
    当文件超过迁移上限,不弹出提示
    CopyLimitSilent=n
    当文件超过迁移上限,弹出提示
    对于迁移文件,常见的错误理解:
    1.超过迁移文件上限,会直接修改真实系统的文件
    完全错误,超过迁移上限的文件,是只读访问,不能被修改,并且不会复制到沙盘里
    2.超过迁移上限的下载文件,会直接建立在真实系统或者不能完成下载
    完全错误,迁移是将系统中已有的文件复制到沙盘里,在沙盘中修改
    下载是在沙盘里建立系统原来没有的新文件
    迁移上限只对系统已有文件迁移进入沙盘起作用
    对于沙盘程序新建立的新文件,没有大小限制
    哪怕是1M的上限,下载1G的文件,只要硬盘空间足够大,完全没有问题
    如果,你将浏览器迁移上限设置成几百M或者几G,说明你对迁移上限的理解有误
===========================================================================

限制
    沙盘对于来自外部的攻击,具有非常强的防御能力
    默认设置,不调整规则的话,只要浏览器是在沙盘里运行,不论是什么挂马、一般0day,这个洞,那个洞,只要结束浏览器进程,清空沙盘,就OK,不影响真实系统
    对于信息泄露,由内到外,沙盘的默认规则是不够的,要借助第三方防火墙
    这就是为什么,GeSWall、DefenseWall在新版都要加入类似于防火墙的功能,对程序联网进行控制,这样,在网络部分,直接用系统自带的防火墙防外,沙盘防火墙防内
    Sandboxie的Restrictions,提供了网络访问控制(类似应用程序防火墙ND),运行控制,进程间通讯控制,驱动、全局钩子、模拟键盘鼠标(AD),降低用户权限(SD)
    通过设置Restrictions,完善规则,可以极大提高沙盘的安全性,特别是对隐私信息的保护
    以上这些主要是通过策略限制来实现的
    沙盘的本质在隔离,创建一个不影响真实系统的测试环境
    重定向、虚拟化、策略限制都只是手段而已,看你如何运用

限制 --> 网络访问 --> iexplore.exe
    IE是沙盘中唯一可以访问网络的程序
    极大的提高了反泄露能力,保护隐私
    提供一个网络访问的白名单,只允许白名单里的程序访问网络,其它程序禁止访问网络,类似应用程序防火墙功能
    实际上,白名单反映到设置文件上就是建立一个程序组,只允许该组成员访问网络
    在网络访问中加入iexplore.exe
    在全局设置 [GlobalSettings] 加入一个程序组,组名<MyGroup>,这个组只有一个组成员iexplore.exe
    ProcessGroup=<MyGroup>,iexplore.exe
    然后在 [MySandBox]里加入一段:
    <MyGroup>,沙盘MySandBox网络访问白名单
    !<MyGroup>, 沙盘MySandBox网络访问黑名单
    阻止组<MyGroup>,(也就是iexplore.exe)以外的程序访问这些特殊的系统网络设备
    换句话,只允许组<MyGroup>,(也就是iexplore.exe)访问网络
    !代表非,!<MyGroup>代表除了<MyGroup>以外的其它程序
    举个通俗例子:!<男人>,代表女人+;!<女人>代表男人+;!<男人,女人>,代表特殊人群
    ProcessGroup=<MyGroup>,iexplore.exe
    ProcessGroup=<InternetAccess>,iexplore.exe
    阻止程序访问网络以后不通知用户
    NotifyInternetAccessDenied=n
    阻止程序访问网络以后通知用户
    NotifyInternetAccessDenied=y
--------------------------------------------------------

限制 --> 启动/运行 访问 --> iexplore.exe
    IE是沙盘中唯一可以运行的程序
    任何恶意软件无法运行,极大提高系统安全和反泄露能力
    通过建立一个白名单,只允许特定的程序运行,阻止其它程序运行
    实际上,白名单反映到设置文件上就是建立一个程序组,只允许该组成员运行
    在全局设置 [GlobalSettings] 加入一个程序组,组名<MyGroup>
    这个组只有一个组成员 iexplore.exe
    ProcessGroup=<MyGroup>,iexplore.exe
    然后在 [MySandBox]里加入
    ClosedIpcPath=!<MyGroup>,*
    阻止组<MyGroup>也就是iexplore.exe以外的程序访问任何IPC对象,结果就是禁止运行
    此沙盘仅有以下程序可以启动和运行
    ProcessGroup=<MyGroup>,iexplore.exe
    ClosedIpcPath=!<MyGroup>,*
    换句话,只允许组<MyGroup>(也就是iexplore.exe运行
    这样MySandBox沙盘里只有iexplore.exe进程可以访问网络和运行,keylogger程序也无法运行,隐私信息不会泄露
    Sandboxie可以防御,安装Windows钩子或者驱动来记录键盘输入
    对于AKLT之类的高级键盘记录,几乎没有防御能力
    不过,Sandboxie使用另外一种办法来保护隐私泄露
    很简单有效,就是白名单,除了白名单程序,禁止连网,禁止运行,再加上自动倒沙
举个例子
    进行网上交易前,终止所有沙盘程序,清空有可能带来病毒的沙盘内容
    在设置好白名单的沙盘里,运行IE,当然之前,要保证IE加载的插件是干净的
    因为有白名单,病毒、键盘记录程序是无法运行的,根本无法记录密码
    因为有自动倒沙,结束IE之后,下次运行,依然是一个干净的环境
    所以,如果你使用Firefox,一定要安装NoScript这个BT扩展,对于防御XSS是非常有效的
--------------------------------------------------------

限制 --> 降低权限 --> 降低管理员与超级用户组的权限
    勾选则降低用户权限,将管理员、Power Users用户特权移除
    沙盘中的程序以普通用户权限运行
    DropAdminRights=y
--------------------------------------------------------

限制 --> NetworkFiles
    网络文件和文件夹通常在沙箱应用程序中可见,如果您希望阻止沙箱应用程序访问文件,并通过在资源访问中添加它们来打开沙箱应用程序,块网络文件和文件夹,除非特别打开
    BlockNetworkFiles=y
===========================================================================

资源访问
    首先明确概念:沙盘默认设置只可以读取沙盘外文件和文件夹,不可以新建、修改和删除,即使新建、修改和删除,也反映到沙盘中,对沙盘外无影响
    但为了在一些特殊场合,方便“在沙盘内运行的程序”访问“沙盘外的文件夹和文件”,设计了此功能
    直接访问和完全访问都拥有读取、写入、修改和删除沙盘外访问目录里文件及文件夹的权限,且超出访问目录外则失效

    唯一的区别是直接访问是沙盘中设置的强制运行程序(实际程序在沙盘外),而安全访问指的是沙盘内、外的程序


直接访问:适用于沙盘外被强制入沙盘运行的程序,也就是右键“在沙盘中运行”或设置中“强制运行的程序”,只要保存在访问目录内,则会在沙盘外体现,否则在沙盘内体现
   举例1:
        在D盘根目录,建立“新建文件夹”“新建文本文档”,并将“新建文件夹”添加到直接访问目录,右键“新建文件夹”在沙盘中运行,另存到访问目录,则沙盘外访问目录中可看到”新建文本文档”
        在沙盘内“新建文本文档”,双击打开(因为在沙盘内,所以可以双击,默认打开就是强制运行程序),另存到访问目录,则沙盘外访问目录中同样可看到“新建文本文档”
        综上所述,打开文本文档的实际程序为notepad.exe,所以也相当于在沙盘外强制入沙,即直接访问

   举例2:
        未经过安装的,直接复制到沙盘中的可运行的程序(必须是可以直接打开运行的,例如CMD文件),则保存的文档会在访问目录内,其实应该和例1相同,实际调用的都是沙盘外的程序,具体是否有错,还有待进一步验证

   举例3:
        右键“在沙盘中运行”安装的WPS程序,  使安装的文件在沙盘内,然后用沙盘内的安装的WPS文字打开,并另存文档到访问目录,实际文件还是在沙盘内,访问目录为空,即沙盘内运行程序,直接访问失效

完全访问:不仅仅包括直接访问的范围,并且还包括“在沙盘内的程序”,只要保存在访问目录内,则会在沙盘外体现,否则在沙盘内体现


深度剖析、加深理解:
    第一步:在D盘根目录,建立“新建文件夹”“新建文本文档”,右键“新建文件夹”在沙盘中运行,输入文本“第一次”,保存。实际保存在沙盘中,原“新建文件夹”中的“新建文本文档”还是为空文档
    第二步: “新建文件夹”添加到直接访问目录,,右键“新建文本文档”在沙盘中运行,输入文本“第二次”,保存。实际保存在D盘的“新建文件夹”中,且里面有文本“第二次”
    第三步: 在沙盘中的“drive\D\新建文件夹”目录下,双击“新建文本文档”打开,里面有文本“第二次”,修改该文本为“第三次”,再分别打开沙盘内与沙盘外,“新建文本文档”里的文本均为“第三次”,说明在访问目录存在的前提下,无论在沙盘内与沙盘外打开,实际打开的文件均为沙盘外(第四步、第五步可验证)。
    第四步: 将直接访问目录里的“新建文件夹”移除,然后在沙盘中的“drive\D\新建文件夹”目录下,双击“新建文本文档”打开,可以打开该文档,且里面的文本为“第一次”,D盘“新建文件夹”中的“新建文本文档”打开,里面的文本为“第三次”,说明已取消关联
    第五步: “新建文件夹”重新添加到直接访问目录,后将D盘的“新建文件夹”删除,然后在沙盘中的“drive\D\新建文件夹”目录下,双击“新建文本文档”打开,提示“系统找不到指定的路径 D:\新建文件夹\新建文本文档.txt”,再次说明在访问目录存在的前提下,无论在沙盘内与沙盘外打开,实际打开的文件均为沙盘外
    第六步: 将直接访问目录里的“新建文件夹”移除,然后在沙盘中的“drive\D\新建文件夹”目录下,双击“新建文本文档”打开,可以打开该文档,且里面的文本为“第一次”,表示关联已取消,实际打开的文件即“drive\D\新建文件夹”目录下的文件。

    综上所述,在添加到直接访问目录的前提下,即使沙盘内存在该文件,实际打开的文件也都定位到沙盘外。沙盘内的更改,不影响沙盘外的文件。
  
资源访问 --> 文件访问

资源访问 --> 文件访问 --> 直接访问
    直接修改指定的目录或文件,对沙盘里安装的程序无效
    %AppData%\SogouPY\
    %AppData%\SogouWB\

    搜狗五笔允许直接访问
    OpenFilePath=%AppData%\SogouWB\

    搜狗拼音允许直接访问
    OpenFilePath=%AppData%\SogouPY\

    保存对输入法设置的更改,防止输入法冲突,这里的程序指的是在沙盘外的程序

    允许直接访问扩展名为eml的所有文件
    OpenFilePath=*.eml

    允许IE直接访问收藏夹目录,允许直接访问
    OpenFilePath=iexplore.exe,%Favorites%

    允许Outlook直接访问任何eml文件
    OpenFilePath=msimn.exe,*.eml
--------------------------------------------------------

资源访问 --> 文件访问 --> 完全访问

    这里的程序指的是在沙盘内的程序
    和直接访问相似,但是对程序不限制,沙盘里的程序也有效
    安全性低于直接访问
    直接访问能解决问题的地方,就不需要使用完全访问
    还有一个不同,完全访问可以访问命名管道
例如:
    OpenPipePath=%AppData%\SogouPY\
    OpenPipePath=\Device\NamedPipe\wkssvc
    OpenPipePath=\Device\NamedPipe\srvsvc
    允许沙盘中的程序通过wkssvc和srvsvc管理网络共享和用户账户
--------------------------------------------------------

资源访问 --> 文件访问 --> 只读访问

    这里的程序指的是在沙盘内的程序
    直接读取真实系统文件,不允许修改,没有沙盘重定向
例如:
    ReadFilePath=C:\ProgramFiles\Avira\
--------------------------------------------------------

资源访问 --> 文件访问 --> 只写访问
    对于在此沙盘中运行的应用程序而言,下列文件夹是空的,但是应用程序可以在沙盘中的这些文件夹内容创建新文件
--------------------------------------------------------

资源访问 --> 文件访问 --> 阻止访问
    此沙盘中运行的所有程序均无法访问以下文件和文件夹,如果某文件或文件夹匹配其他文件访问设置,同时匹配阻止访问设置,则优先执行阻止访问设置,阻止对文件资源的访问,包括读取、修改,不可以添加操作系统盘和sandboxie程序所在目录
    限制了所有访问,包括读取,保护个人隐私

    ClosedFilePath=E:\网络硬盘\
    ClosedFilePath=!<InternetAccess_Firefox>,\Device\RawIp6
    ClosedFilePath=!<InternetAccess_Firefox>,\Device\Udp6
    ClosedFilePath=!<InternetAccess_Firefox>,\Device\Tcp6
    ClosedFilePath=!<InternetAccess_Firefox>,\Device\Ip6
    ClosedFilePath=!<InternetAccess_Firefox>,\Device\RawIp
    ClosedFilePath=!<InternetAccess_Firefox>,\Device\Udp
    ClosedFilePath=!<InternetAccess_Firefox>,\Device\Tcp
    ClosedFilePath=!<InternetAccess_Firefox>,\Device\Ip
    ClosedFilePath=!<InternetAccess_Firefox>,\Device\Afd

    阻止IE直接访问收藏夹目录
    ClosedFilePath=iexplore.exe,%Favorites%

    阻止IE以外的其它程序直接访问收藏夹,就是只允许IE直接访问收藏夹
    ClosedFilePath=!iexplore.exe,%Favorites%
--------------------------------------------------------

资源访问 --> 注册表访问

    同文件访问
    直接修改系统注册表,对于安装在沙盘里的程序无效
    出于安全考虑,注册表访问没有完全访问
例如:
    OpenKeyPath=firefox.exe,HKEY_LOCAL_MACHINE\Software\Mozilla
    OpenKeyPath=firefox.exe,HKEY_CURRENT_USER\Software\Mozilla
    ClosedKeyPath=HKEY_LOCAL_MACHINE\System\Comodo*
    ReadKeyPath=HKEY_LOCAL_MACHINE\SOFTWARE\Policies
--------------------------------------------------------

资源访问 --> IPC访问
    NT IPC对象Windows的进程(线程)间通信所建立的对象
    Sandboxie的IPC对象包括:
    事件对象 Event 、互斥对象 Mutant 、共享内存区对象 Section、信标对象 Semaphore、LPC 端口对象 Port
    具体什么是Sandboxie里的IPC对象,可以通过Sandboxie控制文件 资源访问监控 看到
    通常是\BaseNamedObjects、\RPC Control
注:命名管道(Named Pipe)要设置文件资源完全访问(OpenPipePath)
    允许直接访问IPC对象,使沙盘内程序可以直接访问沙盘外程序所提供的资源和服务
    会降低沙盘的安全性,使程序的某些行为,不再被沙盘监控,不推荐使用
    除非是为了解决程序和Sandboxie冲突,必须允许对某些IPC对象的直接访问
--------------------------------------------------------

资源访问 --> IPC访问 --> 直接访问
    允许所有程序访问NT IPC对象,包括沙盘内下载、安装的程序
例如:

    允许访问终端服务子系统所提供的资源,能让沙盘中程序与此子系统对话并且发现活动在系统中的其他终端服务,但是允许访问这个资源同时也会被恶意程序利用来终止沙盘外的程序
    OpenIpcPath=\RPCControl\!IcaApi

    允许访问WINDOWS Run As服务所提供的资源,它能让沙盘中的程序调用运行另一个使用不同用户证书的程序,并且,这个被调用的程序会在沙盘外被执行,不受沙盘控制
    OpenIpcPath=\RPCControl\seclogon
--------------------------------------------------------

资源访问 --> IPC访问 --> 阻止访问

    Sandboxie对于一些常用的系统IPC对象,进行了例外处理
    阻止访问IPC可以用来彻底阻止这种类型的例外
    阻止访问IPC还可以用来只允许特定程序启动、运行或者阻止所有程序启动、运行
例如:
    ClosedIpcPath=!<StartRunAccess_IE7>,*
    ClosedIpcPath=!<MyGroup>,*
    ClosedIpcPath=*
--------------------------------------------------------

资源访问 --> 窗口访问
    沙盘中的程序无法与在沙盘外运行的程序窗口交换数据,除非该窗口由以下某种窗口类型创建
    通常Sandboxie不允许沙盘内程序访问、通信、关闭或销毁沙盘外的窗口
    窗口访问就是为了设置例外规则
    目的还是为了解决冲突
    窗口名window class name,可以用资源访问监控来获取
例如:
    OpenWinClass=ConsoleWindowClass
    OpenWinClass=ATL:*
    OpenWinClass=*
--------------------------------------------------------

资源访问 --> COM访问

    沙盘化的程序无法和沙盘外运行程序的COM对象通讯,除非COM类ID符合以下的类ID之一
    沙盘内的程序默认是不能访问沙盘外程序提供的COM组件服务
    允许访问特定的COM组件,也是为了解决在使用中的问题,提供例外设置
    COM是有可能造成信息泄露的,比如PCFlank测试
例如:
    OpenClsid={D713F357-7920-4B91-9EB6-49054709EC7A}
===========================================================================

应用程序
    主要是按照设置,自动生成收藏夹、书签、邮箱的直接访问规则
    稍微讲一下受保护的存储和自动完成记录
    实际上是一个系统服务Protected Storage,简称PStore
    是为应用程序的安全保存提供一个接口
    保存了一些微软他们家程序的隐密信息,如:
    1、Outlook密码
    2、Internet Explorer中自动保存的密码
    3、Internet Explorer中有密码保护的网站
    4、MSN Explorer浏览器登录账户密码
    5、IE自动完成的资料(例如填表时的个人资料、搜索历史)
    有像Protected Storage PassView这类密码查看工具存在,是否保存到系统,看个人选择
--------------------------------------------------------

应用程序 --> 网页浏览器
    InternetExplorer --> 允许直接访问 IE 收藏夹
    如果要将IE自动保存的密码、搜索历史、自动填写表单保存到真实系统(个人不推荐)
    InternetExplorer --> 允许直接访问InternetExplorer Cookies

其它请参考沙盘设置,在此不例举


三、沙盘高级设置和Sandboxie.ini

    Sandboxie.ini 是Sandboxie的配置文件,通过编辑Sandboxie.ini可以控制沙盘中程序的行为,一个自定义的Sandboxie.ini可以提供更高的安全保护
    建议复制到安装目录下,并删除原文件


Sandboxie.ini保存位置

搜索顺序
    1、Windows目录,C:\Windows\Sandboxie.ini,这是安装以后生成的
    2、Sandboxie的安装目录C:\Program Files\Sandboxie\Sandboxie.ini
    如果在1搜索到,读取设置,位置2就被忽略了
    如果将Sandboxie.ini剪切到位置2,手动重新载入设置,以后配置文件就保存到Sandboxie的安装目录

注:如果是通过编辑配置文件来修改Sandboxie.ini,保存设置,退出编辑器以后,会自动调用重新载入配置;
    如果是覆盖原来的Sandboxie.ini配置文件,需要手动重新载入配置
    新的配置文件对沙盘中已经运行的程序无效,必须退出程序,重新运行,应用新配置
    修改Sandboxie.ini之后,最好终止所有沙盘程序,再重新启动


基本语法
    在Sandboxie中程序名是文件名,不包括完整路径
    iexplore.exe - 正确
    C:\ProgramFiles\Internet Explorer\iexplore.exe - 错误
    程序和操作对象之间用逗号,分开

    !代表除...之外,逻辑非

    %Favorites%表示收藏夹,环境变量


Sandboxie.ini 文件

#表示注释
===========================================================================

全局设置
    这里的设置会影响所有的Sandbox、所有用户
    [GlobalSettings]
--------------------------------------------------------

    警报程序,如果警报程序没有在SB中运行,SB会显示“SBIE1301”警告信息,如
    AlertProcess=notepad.exe
    设置记事本(notepad.exe)为警报程序,如果记事本没有在SB中打开,SB会提示
    程序名只需要写文件名,不要写所在路径,有多个程序重名的,SB不区分
    AlertProcess=iexplore.exe
    AlertProcess=notepad.exe
-------------------------

    暂时禁用强制运行程序的持续时间,默认是10秒,可以在文件菜单强制运行程序设置
    表示禁止禁用强制运行程序,建议设为0
    ForceDisableSeconds=0
-------------------------

    沙盘的根目录,默认是C:\Sandbox\%USER%\%SANDBOX%,建议放在非系统盘,但在C盘默认位置,兼容性最好
    FileRootPath=d:\Sandbox\%USER%\%SANDBOX%
-------------------------

    只有管理员帐户才能禁用强制运行程序
    ForceDisableAdminOnly=y
-------------------------

    普通用户不能修改全局设置和沙盘设置,只能修改用户设置
    EditAdminOnly=y
-------------------------

    只有管理员可以使用“资源访问监控”
    MonitorAdminOnly=y
--------------------------------------------------------

沙盘设置

    沙盘MySandBox的配置信息,只能作用于这个沙盘
注:沙盘名由字母和数字组成,最大长度32个字符
    [MySandBox]
    指定MySandBox的虚拟目录所在位置
    ForceFolder=D:\mySandBox

    表示允许在这个沙盘运行程序,只有默认沙盘的时候不要改动
    Enabled=y

    建议不要改动
    ConfigLevel=7

    用户的个人配置,对安全没有影响,主要是Sandboxie控制里的用户、外观、升级、和Shell集成、是否随机启动
    [UserSettings_125202A4]
===========================================================================

底层访问
    底层权限,默认都是阻止的,允许的话会降低沙盘安全性
    阻止加载驱动
    BlockDrivers=y
    允许加载驱动,不是安装新驱动
    BlockDrivers=n

    建议阻止加载驱动,这样有较高的安全性,但某些程序将无法在SB中运行
    加载驱动和安装新驱动是两回事
    阻止安装全局钩子
    BlockWinHooks=y
    允许安装全局钩子
    BlockWinHooks=n
    阻止模拟键盘鼠标输入
    BlockFakeInput=y
    允许模拟键盘鼠标输入

    某些虚拟键盘需要开启,比如输入法中的软键盘,建议允许
    BlockFakeInput=n
===========================================

    这四个选项属于SB的高级应用,设置这四个选项监控程序,再配合其他选项,就能让原本无法在SB中运行的程序可以运行,但是SB的保护功能会因此下降,所以不推荐改变这些选项
    FileTrace=.
    PipeTrace=.
    KeyTrace=.
    IpcTrace=.

评分

参与人数 5原创 +1 人气 +4 收起 理由
a330391 + 1 感谢提供分享
lomo + 1 版区有你更精彩: )
aice7837 + 1 版区有你更精彩: )
191196846 + 1 版区有你更精彩: )
lixihong10 + 1 写的很全很详细,收藏了!

查看全部评分

本帖被以下淘专辑推荐:

WCMS
发表于 2018-4-25 23:08:01 | 显示全部楼层
这样的文章难得一见啊,之前比较久远的都404了
旧茶叶
发表于 2018-4-26 08:35:05 | 显示全部楼层
感谢分享,终于可以稍微会用一点沙盘了(之前仅限于把某毒盘客户端丢进去
歌德塔大蜘蛛
发表于 2018-4-26 10:50:41 | 显示全部楼层
感谢分享,希望论坛多些这样的教程
qwzas
发表于 2018-4-26 19:43:59 | 显示全部楼层
好像sandboxie的破解版不太好用
caituaner
发表于 2018-4-26 21:33:35 | 显示全部楼层
楼主辛苦了!感谢分享!
www-tekeze
发表于 2018-4-30 23:45:32 | 显示全部楼层
好贴子,必须顶一下!  
scvzgx
发表于 2018-5-2 13:39:52 | 显示全部楼层
感谢楼主分享,支持一下!
lslswan
发表于 2018-5-8 21:13:10 | 显示全部楼层
本帖最后由 lslswan 于 2018-5-8 21:15 编辑

谢谢楼主科普,我一直没有用过沙盘,测试都是丢到虚拟机中进行的!有机会打算去尝试一下!
comsafe
发表于 2018-5-11 11:17:20 | 显示全部楼层
现在的sandboxie版本还可以整成绿化版吗?放到非系统盘,重装系统不影响使用吗?
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛|优惠券| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 苏ICP备07004770号 ) GMT+8, 2018-7-18 10:51 , Processed in 0.133433 second(s), 23 queries .

快速回复 返回顶部 返回列表