How sandboxing works in Fuchsia
Except you can&#x27;t sandbox or virtualize the clock because mx_time_get() doesn&#x27;t require a handle, which makes timing attacks easier.<p>You also can&#x27;t sandbox event and channel creation for the same reason. It looks like these can also DoS the kernel. In general, any operation you can perform without a handle tends to be subject to DoS and you can&#x27;t virtualize it. They&#x27;re also subject to a different access control policy than the rest of the system which is based around handles.<p>And it&#x27;s not really necessary. Just reserve the first few handles in a process table for a clock handle, a channel constructor&#x2F;factory handle and an event constructor&#x2F;factory handle, and now these operations can be fully virtualized and they aren&#x27;t subject to DoS because they can be rate-limited or at least traced back to specific handles which can be revoked.<p>Without tracing every operation to a handle, you have to pollute your model with more infrastructure to track this information, as with channels and events in Fuschia.<p>[1] <a href="https:&#x2F;&#x2F;fuchsia.googlesource.com&#x2F;magenta&#x2F;+&#x2F;master&#x2F;docs&#x2F;concepts.md" rel="nofollow">https:&#x2F;&#x2F;fuchsia.googlesource.com&#x2F;magenta&#x2F;+&#x2F;master&#x2F;docs&#x2F;conce...</a>