-
Notifications
You must be signed in to change notification settings - Fork 147
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
Common MSBuild sandboxing #1276
Comments
To be more clear, what I wish to provide is something like |
Hey @matkoch, first of all thank you for using and exploring BuildXL, it is much appreciated and please send any valuable feedback our way so we can improve the experience. About your question: the most important thing to note is that the sandboxing techniques built into BuildXL were not designed with a general bulletproof security and rule enforcement concept in mind! We only implemented those features to be able to observe life-time and file accesses operations of process trees akin to the requirements of BuildXL. That said, you could achieve what you're trying to do with the technology provided with BuildXL. The process execution code creates a On macOS, our implementation does not explicitly deny file accesses, merely uses the manifest to check what happened and flag a process execution as error after all observed file accesses have been retrieved by the build engine parent process. Some work would be required to actually abort / fail if things happen that are explicitly forbidden by the file access manifest on macOS (note that Detours - the Windows sandbox - also enforces rules). A good point to start would be the Unfortunately Apple has deprecated kernel extensions with macOS Catalina and onward. The replacement technology is called I hope those pointers help you get started. Have a great day! |
Hi everyone,
it's a while back that I've discovered BuildXL, and due to its sandboxing infrastructure, my initial thought was that this could be used as a common sandboxing approach when cloning third-party repositories without worrying about security too much (at least file access). I'm not entirely sure if that's the scope of the project. Back then I at least had to install some system component to make it work on macOS.
Could someone give some clarification and a few pointers?
The text was updated successfully, but these errors were encountered: