Skip to content

XProtect Config Plist Data Version

Choose a tag to compare

@macvfx macvfx released this 05 Jun 23:10
· 9 commits to main since this release

v3.1 (Build 7) — Custom Attributes, XProtect Monitoring & Installed Apps

Fixed: Assignment group chips in Apps Catalog could appear squished and unreadable when a row had many groups or the column was narrow

New: XProtect Version Monitoring

  • XP column in Devices table: New shield icon alongside FV / SIP / FW
    • Green shield: XProtect version matches SOFA latest
    • Yellow shield: XProtect version is behind SOFA latest
    • Red shield: attribute has invalid (non-numeric) value
    • Dash: no XProtect attribute configured
  • Security Report: Devices with outdated XProtect flagged with yellow badge showing version comparison (e.g., "XProtect outdated (5345 → 5347)"). New "XProtect Outdated" count in the summary bar.
  • All Devices Report: XP shield icon shown alongside FV / SIP / FW per device
  • Device Inspector: Dedicated XProtect section comparing device version against SOFA latest
    • Green checkmark when current, orange warning with arrow to latest when behind
    • "SOFA Latest" reference value displayed below for easy comparison
    • Smart version matching: 4-digit values (e.g., 5347) match against XProtectPlistConfigData, 2-3 digit values (e.g., 157) match against XProtect Framework
    • Handles any attribute name containing "xprotect" — recommended: xprotect_version
    • Cleans legacy values containing extra text (e.g., "5347 (Latest: 5347)")
    • Non-numeric values show "Not a version number" instead of a bogus comparison

New: Custom Attributes

  • Custom Attributes sidebar item: Browse all custom attribute definitions from SimpleMDM
    • Auto-detects XProtect-related attributes with green badges
    • Summary bar shows latest XProtect Framework and Config Data versions from the SOFA feed
  • Device Inspector: All custom attribute values per device with human-readable names looked up from definitions. XProtect attributes shown separately in the XProtect section.
  • Batch fetch: Custom attributes fetched for all devices automatically after refresh so the XP column populates without clicking each device

New: Installed Apps in Device Inspector

  • Per-device installed app list fetched on-demand when a device is selected
  • Shows app name, bundle ID, version, size, and MDM-managed badge
  • Sorted alphabetically with total app count

New: XProtect Version Check Script

  • xprotect-version-check.sh included in Shell script/ directory
  • Gets local XProtectPlistConfigData version via /usr/bin/xprotect check
  • Optional --push flag to set xprotect_version custom attribute in SimpleMDM
  • Deploy via SimpleMDM Scripts to keep all devices reporting their XProtect version

Under the Hood

  • SOFA feed now parses XProtectPayloads and XProtectPlistConfigData
  • Per-device attribute and installed app caches cleared when switching API keys
  • Demo mode generates dummy custom attributes (XProtect, Chrome, asset tag, department) and installed apps