سؤال

I have an app which runs using sandboxing. How can I run it without sandboxing? Suppose I can't just recompile the app with sandboxing off.

هل كانت مفيدة؟

المحلول

This works:

$ ditto MySandboxedApp.app MySandboxedApp.backup.app
$ codesign -f -s- MySandboxedApp.app

Note the extra minus in "-s-".

نصائح أخرى

There are many ways that all do conceptually the same thing - make sandbox_init a no-op. For example you can use gdb for this, set breakpoint on sandbox_init and return from the function right away. Or you could preload a library containing an empty sandbox_init with DYLD_FORCE_FLAT_NAMESPACE=1 DYLD_INSERT_LIBRARIES=foo.dylib where foo.dylib just contains int sandbox_init() { return 0; }.

Note that sandboxing is voluntary and if you run an app outside a sandbox as designed you're making your system more vulnerable.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top