You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, Compartments share globalThis.Symbol with the start compartment, the realm global environment. Consequently, if the host has any symbols that are not recognized by SES’s permits, Lockdown will fail.
We should instead create a separate Symbol shared intrinsic, like the repaired Function or Date, that shares the global prototype of Symbol, disables the shared prototype constructor, and only includes the symbols that SES will permit in shared compartments.
The text was updated successfully, but these errors were encountered:
Clarification: The reason why lockdown will fail is because these well-known-symbol properties are non-configurable. Otherwise our whitelist mechanism would safety remove them.
Currently, Compartments share
globalThis.Symbol
with the start compartment, the realm global environment. Consequently, if the host has any symbols that are not recognized by SES’s permits, Lockdown will fail.We should instead create a separate
Symbol
shared intrinsic, like the repairedFunction
orDate
, that shares the global prototype ofSymbol
, disables the shared prototype constructor, and only includes the symbols that SES will permit in shared compartments.The text was updated successfully, but these errors were encountered: