我最近了解了Java的安全模型。大多数人认为Java是安全的,因为它不受缓冲区溢出等的影响,但是整个Java安全模型都集中在检查代码是否有权采取某些操作。他们真正解决了一个具有挑战性的问题:如何让任意不受信任的代码(例如在网络浏览器中)运行,但是要防止以恶意方式访问底层系统,同时保留以某种方式与系统交互的能力。
沙盒C ++或类似的东西甚至很难尝试,因为语言要求你能够做指针算法等,允许恶意代码破坏过程的其他部分。但是,由于有许多内存安全的语言,我想知道其他语言有哪些复杂的安全模型以及它们与Java的比较。
我不知道有多少语言努力拥有“沙盒”等概念。我正在寻找一些指导来了解这个有趣的计算机安全方向。