6

我注意到,DYLD_INSERT_LIBRARIES如果应用程序使用权利进行代码签名,则不再适用于 Mountion Lion。例如:

DYLD_INSERT_LIBRARIES=./mylib.dylib /Applications/Safari.app/Contents/MacOS/Safari
  dyld: DYLD_ environment variables being ignored because main executeable is code signed with entitlements.

我知道这可能是 Mountion Lion 中添加的一项新安全功能。任何人都知道是否有另一种方法可以在山狮上做类似的事情?谢谢!

4

1 回答 1

5

没有办法DYLD_INSERT_LIBRARIES处理这种性质的应用程序。

dyld剥离DYLD_它认为受限制的应用程序上的所有环境变量,其中包括 setuid/setgid 二进制文件和使用特定权利签名的那些。您可以通过查看dyld源代码来了解它是如何工作的。特别是,processRestricted负责确定是否应应用限制pruneEnvironmentVariables并对环境变量进行特殊处理。

于 2013-02-27T08:01:52.087 回答