[GH-ISSUE #1740] MonitorControl fails strict codesign verification #962

Closed
opened 2026-05-05 06:56:20 -06:00 by gitea-mirror · 1 comment
Owner

Originally created by @jrmfong on GitHub (Mar 19, 2025).
Original GitHub issue: https://github.com/MonitorControl/MonitorControl/issues/1740

MonitorControl fails strict codesign verification which is one of the typical check of autopkg.

codesign --verify --verbose=4 --deep --strict
--require='anchor apple generic and identifier "app.monitorcontrol.MonitorControl" and (certificate leaf[field.1.2.840.113635.100.6.1.9] /* exists / or certificate 1[field.1.2.840.113635.100.6.2.6] / exists / and certificate leaf[field.1.2.840.113635.100.6.1.13] / exists */ and certificate leaf[subject.OU] = "299YSU96J7")'
/Applications/MonitorControl.app

--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswift_Concurrency.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswift_Concurrency.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftAppKit.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftAppKit.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftAVFoundation.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftAVFoundation.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCore.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCore.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreAudio.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreAudio.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreData.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreData.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreFoundation.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreFoundation.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreGraphics.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreGraphics.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreImage.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreImage.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreMedia.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreMedia.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftDarwin.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftDarwin.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftDispatch.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftDispatch.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftFoundation.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftFoundation.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftIOKit.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftIOKit.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftMetal.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftMetal.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftObjectiveC.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftObjectiveC.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftos.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftos.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftQuartzCore.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftQuartzCore.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftsimd.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftsimd.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftXPC.dylib
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftXPC.dylib
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/Sparkle.framework/Versions/Current/.
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/Sparkle.framework/Versions/Current/Autoupdate
--validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/Sparkle.framework/Versions/Current/Autoupdate
--prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/Sparkle.framework/Versions/Current/Updater.app
/Volumes/MonitorControl/MonitorControl.app: resource fork, Finder information, or similar detritus not allowed
In subcomponent: /Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/Sparkle.framework/Versions/Current/Updater.app
file with invalid attached data: Disallowed xattr com.apple.FinderInfo found on /Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/Sparkle.framework/Versions/Current/Updater.app

Steps to reproduce

  1. Download the latest dmg from GitHub.

  2. Open the dmg and drag the MonitorControl.app into /Applications

  3. Run the following command in terminal
    codesign --verify --verbose=4 --deep --strict
    --require='anchor apple generic and identifier "app.monitorcontrol.MonitorControl" and (certificate leaf[field.1.2.840.113635.100.6.1.9] /* exists / or certificate 1[field.1.2.840.113635.100.6.2.6] / exists / and certificate leaf[field.1.2.840.113635.100.6.1.13] / exists */ and certificate leaf[subject.OU] = "299YSU96J7")'
    /Applications/MonitorControl.app

  4. Generate the error log in the last few lines which are quoted below:
    --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/Sparkle.framework/Versions/Current/Updater.app
    /Volumes/MonitorControl/MonitorControl.app: resource fork, Finder information, or similar detritus not allowed
    In subcomponent: /Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/Sparkle.framework/Versions/Current/Updater.app
    file with invalid attached data: Disallowed xattr com.apple.FinderInfo found on /Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/Sparkle.framework/Versions/Current/Updater.app

Expected behavior

MonitorControl.app should pass all strict codesign checks which is crucial to guard against security risk during patching.

Environment

macOS version: macOS 15.3.2
Mac model: MacBook Pro M1 2021
MonitorControl version: 4.3.3
Monitor(s): 2
Apple Silicon/M1 (yes or no): Yes

Originally created by @jrmfong on GitHub (Mar 19, 2025). Original GitHub issue: https://github.com/MonitorControl/MonitorControl/issues/1740 MonitorControl fails strict codesign verification which is one of the typical check of autopkg. codesign --verify --verbose=4 --deep --strict \ --require='anchor apple generic and identifier "app.monitorcontrol.MonitorControl" and (certificate leaf[field.1.2.840.113635.100.6.1.9] /* exists */ or certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = "299YSU96J7")' \ /Applications/MonitorControl.app --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswift_Concurrency.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswift_Concurrency.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftAppKit.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftAppKit.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftAVFoundation.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftAVFoundation.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCore.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCore.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreAudio.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreAudio.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreData.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreData.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreFoundation.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreFoundation.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreGraphics.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreGraphics.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreImage.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreImage.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreMedia.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftCoreMedia.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftDarwin.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftDarwin.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftDispatch.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftDispatch.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftFoundation.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftFoundation.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftIOKit.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftIOKit.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftMetal.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftMetal.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftObjectiveC.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftObjectiveC.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftos.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftos.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftQuartzCore.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftQuartzCore.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftsimd.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftsimd.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftXPC.dylib --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/libswiftXPC.dylib --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/Sparkle.framework/Versions/Current/. --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/Sparkle.framework/Versions/Current/Autoupdate --validated:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/Sparkle.framework/Versions/Current/Autoupdate --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/Sparkle.framework/Versions/Current/Updater.app /Volumes/MonitorControl/MonitorControl.app: resource fork, Finder information, or similar detritus not allowed In subcomponent: /Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/Sparkle.framework/Versions/Current/Updater.app file with invalid attached data: Disallowed xattr com.apple.FinderInfo found on /Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/Sparkle.framework/Versions/Current/Updater.app ### Steps to reproduce 1. Download the latest dmg from GitHub. 2. Open the dmg and drag the MonitorControl.app into /Applications 3. Run the following command in terminal codesign --verify --verbose=4 --deep --strict \ --require='anchor apple generic and identifier "app.monitorcontrol.MonitorControl" and (certificate leaf[field.1.2.840.113635.100.6.1.9] /* exists */ or certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = "299YSU96J7")' \ /Applications/MonitorControl.app 4. Generate the error log in the last few lines which are quoted below: --prepared:/Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/Sparkle.framework/Versions/Current/Updater.app /Volumes/MonitorControl/MonitorControl.app: resource fork, Finder information, or similar detritus not allowed In subcomponent: /Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/Sparkle.framework/Versions/Current/Updater.app file with invalid attached data: Disallowed xattr com.apple.FinderInfo found on /Volumes/MonitorControl/MonitorControl.app/Contents/Frameworks/Sparkle.framework/Versions/Current/Updater.app ### Expected behavior MonitorControl.app should pass all strict codesign checks which is crucial to guard against security risk during patching. ### Environment macOS version: macOS 15.3.2 Mac model: MacBook Pro M1 2021 MonitorControl version: 4.3.3 Monitor(s): 2 Apple Silicon/M1 (yes or no): Yes
Author
Owner

@waydabber commented on GitHub (Mar 20, 2025):

Hmm. Sparkle is a rather common macOS framework for in-app updates. I think you should treat that as an exception. But if there is a way to include Sparkle in a way that this does not happen, let me know!

https://sparkle-project.org

<!-- gh-comment-id:2739333183 --> @waydabber commented on GitHub (Mar 20, 2025): Hmm. Sparkle is a rather common macOS framework for in-app updates. I think you should treat that as an exception. But if there is a way to include Sparkle in a way that this does not happen, let me know! https://sparkle-project.org
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/MonitorControl#962
No description provided.