Open harrisonravazzolo opened 3 weeks ago
Adding more details from Slack:
the main one that I would like the most within the software apis would likely be: The sha256 hash of the mach-o binary, this would allow me to:
Bundle identifier would be nice to include as well and likely easier to add since the software api’s are already using the apps table as a datasource.
No Gong Snippet but see this thread with customer-pingali: https://fleetdm.slack.com/archives/C050XE4CQNA/p1730480758648659 x I’d be interested to be able to filter software: A single piece of software: -By hash (file hash of the mach-o binary or cdhash of the bundle) -cdhash is included in signature table: https://fleetdm.com/tables/signature -File hash included in the file table: https://fleetdm.com/tables/file Multiple piece of software by: -team id (not team id in fleet): https://developer.apple.com/documentation/automaticassessmentconfiguration/aeassessmentapplication/teamidentifier -team id is included in the signature table: https://fleetdm.com/tables/signature
tbd
Using the software api to pull this info, but it's not available.
I would like to be able to pull more information about software from the api to support my workflows.
When calling the list software api /api/v1/fleet/software/titles
I would like information such as cfbundleidentifier presented to me, without having to use a query.
For app architecture:
% mdls /Applications/Google\ Chrome.app -name kMDItemExecutableArchitectures -raw
app architecture is also available via mdls so that's available in a query like
SELECT ap.path,
md.*
FROM apps AS ap
JOIN mdls AS md ON md.path='/Applications/Safari.app' WHERE key='kMDItemExecutableArchitectures' LIMIT 1;
From @nonpunctual: the reason it's referred to as developer ID is Apple's key labels
Here are the 2 ways of getting it.
% sudo /usr/sbin/spctl -a -vv -t execute /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome
/Applications/Google Chrome.app/Contents/MacOS/Google Chrome: accepted
source=Notarized Developer ID
origin=Developer ID Application: Google LLC (EQHXZ8M8AV)
% codesign -dvv /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome
Executable=/Applications/Google Chrome.app/Contents/MacOS/Google Chrome
Identifier=com.google.Chrome
Format=app bundle with Mach-O universal (x86_64 arm64)
CodeDirectory v=20500 size=1821 flags=0x12a00(kill,restrict,library-validation,runtime) hashes=46+7 location=embedded
Signature size=8990
Authority=Developer ID Application: Google LLC (EQHXZ8M8AV)
Authority=Developer ID Certification Authority
Authority=Apple Root CA
Timestamp=Oct 28, 2024 at 8:44:08 PM
Notarization Ticket=stapled
Info.plist entries=43
TeamIdentifier=EQHXZ8M8AV
Runtime Version=14.0.0
Sealed Resources version=2 rules=13 files=63
Internal requirements count=1 size=288
Team ID is also available via the signature table https://fleetdm.com/tables/signature
Related PR: https://github.com/osquery/osquery/pull/4246
customer-ufa
: Gong snippet:customer-pingali
: Slack thread: https://fleetdm.slack.com/archives/C050XE4CQNA/p1730480758648659customer-pingali
: Gong: https://us-65885.app.gong.io/call?id=8470217130347639214&highlights=%5B%7B%22type%22%3A%22SHARE%22%2C%22from%22%3A1033%2C%22to%22%3A1092%7D%5Dcodesign
command against an app you can get the team ID. For example:The team ID is
EQHXZ8M8AV