精易论坛
标题: 沙箱Sandboxie v3.40 完整源码 [打印本页]
作者: wangxinhui1314 时间: 2013-10-9 09:37
标题: 沙箱Sandboxie v3.40 完整源码
【前序】
Sandboxie
是土耳其人
2006年开发的一个轻量级小型沙箱,至今仍有很多人使用,作者也一直在维护更新。当时国内做沙箱的还没有几家,大概有
Comodo、卡巴斯基等大的安全厂商做过内置沙箱,不过功能性偏重不同,用户体验跟sandboxie有很大差距。
我在
09年的时候使用过Sandboxie一段时间,感觉做的不错,对其实现非常感兴趣,于是当时花了大量的业余时间进行逆向重写,整个过程耗时1年多。后来由于工作繁忙,此工程不再关注,代码就这样被搁置了三年多。
今天翻翻代码,觉得里面有些东西可拿出来分享,遂发此贴,旨在抛砖引玉。
【正题】
这个沙箱的名字叫:
ProteinBox,完全基于
Sandboxie v3.40版本调试逆向后重写的工程,完成度90%,可在XP SP3干净环境下运行,被沙箱化的程序的一切行为都限定在沙箱中。
以下是对Sandboxie原理、整体构架的一段总结:
引用:做沙箱不容易,因为要接管的地方太多,文件、注册表重定向只是最基本的,还有窗口、类名、消息、服务、rpc、Token、COM、etc。在实现过程中需要逆向sandboxie的全部文件:sys、dll、exe,动态调试每个过滤函数的细节。逆向的目的不是抄袭,是为了了解其中的构架,而后再按照自己的思路优化改进重写。以前粗略的总结了sandboxie的原理:
start.exe中有些内容较为有趣.其中解析命令行的部分可以不必看,但有些命令的实现还是值得参考,其中的降权&和驱动通信部分有点儿意思.
EXE中复杂的地方是SbieSvc.exe的通信部分. 绝大都是RPC,这是沙箱模拟系统通信机制,在自己的小沙盘内部实现了进程间的通信.
剩下几个exe诸如SandboxieDcomLaunch.exe / SandboxieRpcSs.exe 内容大同小异.不是关键部分.
至于sbieDll.dll 的文件/注册表/窗口/消息等重定向没什么难度,关键在于细节. 稍微可以借鉴之处在于其对COM部分的处理.
sbiddrv.sys完全可以自己重写.
object hook + shadow ssdt hook + image/process notify
object hook 主要处理文件/管道等操作
shadow ssdt hook处理窗口/消息隔离
image notify 负责sbieDll.dll注入
process notify负责建立总节点.填充各种信息.
驱动中的Inline hook 引擎很有趣,解析配置文件*.ini部分可以不看.其实最关键的部分全部在sbieDll.dll中,它几乎接管了被沙箱化程序的所有调用,将需要关注的R3层面的各种函数基本都Hook了,进行各种重定向。
服务端进程SbieSvc.exe用来模拟rpc通信,这个稍微有些复杂,需要对系统需要进行RPC交互的各种消息有较为深刻的理解。
驱动sbiddrv.sys干的事情不多,主要用于控制权限、读取配置文件、限制窗口消息等。
这份代码里面将Sandboxie的exe/dll/sys全部逆向重写了一遍,并包含用IDA 5.0逆向后添加过注释的IDB文件,还有零零散散的调试细节和各种测试工程,风格类似于:
最主要的几个工程如下:
其他技术实现细节请自行围观代码.
沙盘源码 编译好的文件.rar
(131 Bytes, 下载次数: 149)
这点精币对高手来说不算多,不建议新手玩这个。可以下载下来保存以后学习、、如果有一天360云盘倒闭了。可以留言重新上传谢谢、、、
作者: 红颜似水 时间: 2013-10-9 09:50
这个是源码不!!
作者: wangxinhui1314 时间: 2013-10-9 09:51
绝对的源码......如果骗大家。请立马举报我
作者: 无\月 时间: 2013-10-9 10:03
高科技 搞不懂!
作者: watking 时间: 2013-10-9 11:54
太强大了~~
作者: minisys 时间: 2015-5-27 21:53
感谢楼主分享源码
作者: '依恋 时间: 2016-10-19 21:46
感谢楼主分享源码
作者: wangw2017 时间: 2017-10-25 14:35
连接已失效
作者: MaSuWeb 时间: 2018-6-21 14:18
感谢分享!!
作者: 360msgbox 时间: 2018-10-10 18:57
这个可以有啊。很不错的东西。
作者: kanjiahui3378 时间: 2018-12-31 00:40
这个可以有啊。很不错的东西。
作者: BlueSkyCloud 时间: 2019-1-24 21:53
链接过期了。
作者: BlueSkyCloud 时间: 2019-1-24 21:54
请重发一份。
作者: 筱平 时间: 2020-9-19 16:55
666666666666666666
作者: qq2518 时间: 2021-2-11 12:08
本帖最后由 qq2518 于 2021-2-11 12:10 编辑
没想到还真有人有沙盘源码。感谢分享。..链接过期了。
作者: snak2020 时间: 2021-2-25 13:33
谢谢分享,学习
作者: david009 时间: 2021-3-11 13:45
下载不了,花了精币啥都没看到
作者: hmyroot 时间: 2021-3-13 09:53
大佬,链接过期了
作者: 6848161 时间: 2022-9-6 22:57
牛!!!!!!!!!!!!!!!!!!!!!!!!!!
作者: yangzijun 时间: 2022-10-22 16:43
6666666666666666
作者: Mouth 时间: 2023-5-31 18:38
感谢分享
作者: ploneljs 时间: 2023-7-19 19:56
666666666666666666666666666
作者: yangjz 时间: 2023-9-23 16:23
无法福娃福娃发我发我
作者: Style.Sa梦 时间: 2024-1-4 21:41
花币买吃亏
作者: 寻大牛合作 时间: 2024-3-5 14:38
感谢分享
欢迎光临 精易论坛 (https://125.confly.eu.org/) |
Powered by Discuz! X3.4 |