On 7/11/12 10:09 AM, Ian Melven wrote:
Also, in general, i'm pretty curious about Servo's process model and its 
security architecture,
maybe that's best discussed in a new thread though (I really need to take some 
time
to understand Rust better as well). My particular interest is in how Servo 
relates to the process sandboxing project I'm working on and
any ideas around what Servo's possible addon model might be -
Servo is often proposed as a solution to the needs driving the sandboxing 
project but it seems
there will still be unsafe, possibly exploitable code in certain parts of it.

The memory safety and type safety of Rust isn't a substitute for a sandbox. Even with memory safety, it's still possible for someone to call os::exec("calc.exe"). And it's still potentially possible to exploit kernel32.dll, user32.dll, d3d9.dll, etc.

So we will need to use a sandbox. I think this sandboxing code should be part of the Rust cargo ecosystem, so that Rust programs can generally use it and the Rust community can contribute to it.

That said, memory safety definitely helps security in a big way. I think of memory safety and type safety as just one particularly powerful layer of protection. Just like any security layer, it rules out many sources of exploits, but other layers of protection are needed.

Patrick
_______________________________________________
dev-servo mailing list
dev-servo@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-servo

Reply via email to