-
Notifications
You must be signed in to change notification settings - Fork 182
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implementation of dlsym
-based Weak
is not sandbox-friendly
#428
Comments
The above is an exaggeration because in almost every target architecture, a function pointer will never be |
Note that #427 changes |
One other thing to note: calling So I think the current implementation is fine, even if the first call to |
I agree with @josephlr and think that we can close this issue. |
This is assuming dlsym is provided by libc. It may have been replaced by antivirus or a sandbox implementation. Some projects I have worked on were hoping to eventually disable dlsym in their sandbox, but I'm not sure if they ever succeeded. I imagine somebody has. |
The comment says:
It seems like we're converging on the idea that before a sandbox is enabled,
getrandom::get_random[_uninit]()
must be called once. Is it also required that it returnOk(_)
before the sandbox can be enabled? That might be too strict of a requirement.But, if we don't require it to return
Ok(_)
at least once, then the application may enable its sandbox, in which case callingdlsym
would not be "inefficient, but correct" as it will instead likely kill the process.The text was updated successfully, but these errors were encountered: