毕设──基于虚拟机的智能体沙箱的设计与实现(1)
最近一直在学习 C++ 的代码相关知识。因为马上要交开题报告了,所以找了个空闲的时间看了下毕设相关的内容。 毕设就是个 Agent 代码执行沙箱,为什么要选这个题目呢?第一是对虚拟机这方面挺感兴趣的,第二就是之前在红队做过针对 Agent 代码执行的攻击,有一定了解。 技术方案选型目前阶段主要还是去选择用啥去实现这个沙箱,目前的话主要是试试下面这几种: 1. WASM启动很快,因为是进程级别的虚拟机,不涉及虚拟化乱七八糟的,开销很小,就是把不同语言编译为可以跑在 WASM 虚拟机上的字节码。 默认权限很小,只有纯计算和调用显式提供 API 的能力。但是兼容性不行,语言支持受限(尤其是本来就跑在虚拟机上的语言,需要把它的虚拟机编译为 WASM,然后跑在 WASM 虚拟机上),系统调用受限。并且不像 Docker,想要什么镜像直接拉下来就行,得去将想运行的组件编译为 WASM。 2. DockerDocker 主要就是选运行时: runc:用 Linux 的 Namespace 和 Cgroups 做隔离、资源限制,不涉及虚拟化。好处就是快,缺点就是不够安全,因为内核共享,内核漏洞...






