自己署名証明書を使用して Mac OS X アプリに署名すると、署名後にバイナリを変更でき、OS は何も文句を言わず、アプリは問題なく動作します。iOS バイナリを変更すると、アプリは単にデバイスに読み込まれません。
実際に OS X でこのように動作することを意図している場合、iOS スタイルのコード署名チェックのように完全性を安全かつ確実に保証する方法はありますか?
自己署名証明書を使用して Mac OS X アプリに署名すると、署名後にバイナリを変更でき、OS は何も文句を言わず、アプリは問題なく動作します。iOS バイナリを変更すると、アプリは単にデバイスに読み込まれません。
実際に OS X でこのように動作することを意図している場合、iOS スタイルのコード署名チェックのように完全性を安全かつ確実に保証する方法はありますか?
Mac OS X では、アプリケーションがオペレーティング システムによって検疫対象としてマークされている場合、つまりアプリケーションが Safari を使用してインターネットからダウンロードされた場合、またはメール アプリケーションである場合にのみ、コード署名チェックが開始されます。
これをテストする最善の方法は、xattr -w com.apple.quarantine "0001;4fce45e4;Safari;E17715E0-DB01-4EA3-A102-FBE7C2C8587A|com.apple.Safari" のように、xattr を使用して隔離属性を設定することです。
お役に立てれば。