How can I remove the code signature from a binary so that I can patch it without the binary refusing to run afterwards?

Needless to say, I'm not the original creator of the binary, nor I have the certs that were used to sign the binary.


There are tools for that, as well as a codesign flag --remove-signature

First two should work the same. The codesign flag is undocumented and so YMMV (A user reported in a comment the codesign produced a corrupt executable).

You should use any of them with caution and backup the application before using them.

  • Would you recommend me using one of those 3 tools in particular or any of those would work exactly the same for me and my use case? – alexandernst Sep 30 '16 at 12:13
  • Added the question to address your questions here – NirIzr Sep 30 '16 at 12:24
  • 2
    codesign --remove-signature seems to create malformed executables, at least in some cases. – zneak Sep 6 '17 at 16:20
  • 1
    @zneak thanks for sharing your experience. Edited my answer to note that. – NirIzr Sep 6 '17 at 16:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.