Можете ли вы отключить проверку подписи кода?

9

Я написал патч / утилиту, которая отключает функциональность OS X по умолчанию при запуске iTunes при нажатии кнопки воспроизведения. Эта утилита в основном изменяет демон удаленного управления ( rcd) и комментирует команду Apple Script для запуска iTunes. До 10.7 это работало нормально, но с 10.8 rcdтеперь есть подпись кода. Патч теперь вызывает Exception Type: EXC_CRASH (Code Signature Invalid)после того, как исправлен исполняемый файл.

Очевидно, проверка подписи кода работает так, как задумано, но мне было интересно, есть ли у кого-нибудь идеи о том, какие варианты у меня могут быть. Есть ли законный способ отключить эту проверку на одном исполняемом файле? Я попробовал включить GateKeeper, но, по понятным причинам, этого не сделал.

Любые другие предложения по отключению кнопки воспроизведения?

thebitguru
источник
3
для подписи вам необходимо сделать следующее: sudo codeign -f -s - /System/Library/CoreServices/rcd.app/Contents/MacOS/rcd
Спасибо user48986, что сделал это. Я обновил утилиту.
thebitguru
1
Я обновил утилиту, но можете ли вы (user48986) «ответить» на этот вопрос, чтобы получить кредит :) Очевидно, я не могу пометить комментарий как ответ.
thebitguru
Весело, я пришел к такому ответу, при решении точно такой же проблемы в том же образом , не понимая , кто - то (вы) имели ту же идею , и уже сделали то же самое. Спасибо, как пользователю 48986, так и @thebitguru. : P
ELLIOTTCABLE

Ответы:

5

Я получил патч на работу после запуска sudo spctl --master-disable. Я не знаю, есть ли способ использовать spctl для таргетинга только на rcd.

Замена сигнатуры кода специальной идентификацией с помощью sudo codesign -f -s - /System/Library/CoreServices/rcd.app/, похоже, не работает. Редактировать: но, как упоминалось пользователем 48986, он работает, если вы указываете путь к исполняемому файлу, например sudo codesign -f -s - /System/Library/CoreServices/rcd.app/Contents/MacOS/rcd.

LRI
источник
Спасибо! Я думаю, что, возможно, единственный способ - это использовать rcd из более старой версии OS X: |
thebitguru
2

Чтобы исправить подпись, например, MirrorPro:

sudo codesign -f -s - /Applications/MirrorPro.app/Contents/MacOS/MirrorPro
/Applications/MirrorPro.app/Contents/MacOS/MirrorPro: replacing existing signature
БАЙТЕР
источник