Taylor
Taylor

Reputation: 6440

how can I run a sandboxed OS X app without sandboxing?

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.

Upvotes: 8

Views: 3297

Answers (2)

Taylor
Taylor

Reputation: 6440

This works:

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

Note the extra minus in "-s-".

Upvotes: 13

Simon Urbanek
Simon Urbanek

Reputation: 13932

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.

Upvotes: 0

Related Questions