Safety of the QVM and its JIT compiler

Is the QVM (both interpreter and the JIT compiled code) safe? How does it make sure that the engine’s memory isn’t accessed?

I tried to look for this on the internet, I read that it’s safe, but couldn’t find explanations on how that’s achieved.