Like leaving a rusty fire-escape ladder bolted to a garden shed nobody uses
CVE-2026-12554 flags an embedded, unmaintained OSPFTP download component inside HP Easy Start for macOS versions prior to 2.16.7.260722. The OSPFTP library provides FTP fallback logic (OSPFTPDownloadManager) that activates only when the primary HTTPS package-delivery path fails during printer driver installation. If that fallback triggers and an attacker has network-level positioning (same LAN segment or DNS influence), they could intercept or tamper with the downloaded package. Because the installer runs with elevated privileges, a modified package could theoretically yield root-level code execution on the single host.
The vendor-adjacent CVSS v4 score of 8.5 HIGH dramatically overstates real-world risk. HP Easy Start is a consumer/prosumer printer-setup wizard, not infrastructure software. It is rarely present on managed enterprise macOS fleets (MDM-driven print deployment is standard), the FTP fallback is a secondary code path that requires a primary failure *and* active MITM, and the attack window is limited to the brief installation workflow. There is no KEV listing, no public PoC, and EPSS sits at the 0.2% mark. The CVSS vector's AV:L already limits reach, and the real-world exposure narrows it further to near-zero in enterprise environments.
4 steps from start to impact.
HP Easy Start present on macOS host
- macOS host with HP Easy Start < 2.16.7.260722 installed
- Enterprise macOS fleets use MDM-managed print queues (Jamf, Mosyle, Kandji), not HP Easy Start
- HP Easy Start is not silently pushed; users must actively download and run it
- App is typically removed after initial printer setup
Application Inventory, Kandji Library Items) will surface the binary.User initiates printer driver installation
- User actively running HP Easy Start's add-printer workflow
- Attack window is measured in seconds to minutes during installation
- Attacker cannot trigger this remotely; it requires user action on the local machine
Primary HTTPS download fails, FTP fallback activates
- Primary HTTPS download must fail
- Attacker on same network segment or able to influence DNS resolution
- Modern macOS enforces App Transport Security by default; the
NSAllowsArbitraryLoads=trueflag in HP Easy Start is what makes fallback possible, but this is a secondary path - Forcing HTTPS failure while maintaining FTP reachability requires sophisticated network positioning
- Enterprise networks with DNSSEC, internal DNS, or egress filtering make DNS manipulation difficult
MITM package substitution yields root execution
AuthorizationExecuteWithPrivileges), the malicious payload executes as root on the single target host.- Active MITM on FTP connection
- Malicious package crafted to match expected format
- No public PoC or tooling exists for this chain
- The fix replaces
AuthorizationExecuteWithPrivilegeswithSMAppService+ SHA-256 validation, which would catch tampering even if FTP were used - Single-host impact only — no lateral movement capability inherent to the vuln
The supporting signals.
| In-the-Wild Exploitation | None observed. No reports from any threat intelligence source. Not listed in CISA KEV. |
|---|---|
| Proof of Concept | No public PoC exists. Discovered by Nir Yehoshua of Cipher Security Labs during a targeted assessment of HP Easy Start 2.16.0. No exploit code published. |
| EPSS Score | 0.00206 (0.2%) — bottom quintile. Negligible probability of exploitation in the next 30 days. |
| KEV Status | Not listed. No CISA KEV entry as of 2026-09-03. |
| CVSS v3.1 Vector | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H — 7.8 HIGH. Local access, low privileges, no user interaction, full CIA impact. The Local attack vector is the key limiter. |
| CVSS v4.0 Score | 8.5 HIGH — CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N. No scope change, no subsequent-system impact. |
| Affected Versions | HP Easy Start for macOS < 2.16.7.260722. Specifically assessed against version 2.16.0. |
| Fixed Version | 2.16.7.260722 — replaces deprecated AuthorizationExecuteWithPrivileges with SMAppService-managed privileged helper, adds SHA-256 package validation, removes FTP fallback. |
| Exposure Data | HP Easy Start is a consumer printer-setup utility, not a server component. No Shodan/Censys/GreyNoise footprint (no listening service). Enterprise exposure is near-zero on MDM-managed fleets. |
| Disclosure Timeline | Published 2026-08-24. HP Security Bulletin HPSBPI04124. Part of a trio with CVE-2026-12555 (temp file) and CVE-2026-12556 (cleartext transport). |
noisgate verdict.
The single most decisive factor is near-zero enterprise exposure: HP Easy Start is a consumer macOS printer-setup wizard absent from MDM-managed fleets, and the vulnerable FTP fallback path only activates during a brief installation window when the primary HTTPS download has already failed. No high-value deployment role exists for this component, and the blast radius is capped at a single workstation.
Why this verdict
- Local-only attack vector (AV:L): The CVSS vector requires local access with low privileges. The attacker must already be on the macOS host — this is a post-compromise scenario, not an initial-access vector.
- Secondary code path with user-triggered window: The OSPFTP fallback only activates when (a) the user is actively running the add-printer workflow AND (b) the primary HTTPS download fails. This is a narrow, transient attack surface measured in seconds.
- Network positioning required on top of local access: Even after reaching the fallback path, the attacker needs MITM capability on the same network segment — combining local host access with network-level positioning compounds the prerequisite chain significantly.
- Role multiplier: no high-value role exists. HP Easy Start is a consumer/prosumer printer-setup utility. It does not run on domain controllers, hypervisors, CI/CD servers, identity providers, backup infrastructure, or any high-value-role system. Its only deployment context is (a) low-value: end-user macOS workstations. Blast radius is single-host, single-user. The high-value-role floor does not apply.
- No exploitation signals: EPSS 0.2%, no KEV listing, no public PoC, no campaign reporting. Zero evidence of weaponization interest.
Why not higher?
HP Easy Start is not infrastructure software and occupies no high-value deployment role that would trigger the blast-radius floor. The attack chain requires local access + user-initiated installation + HTTPS failure + network MITM — four compounding prerequisites with no evidence anyone has chained them. Upgrading to MEDIUM would overstate the practical risk to enterprise environments where the software is rarely present.
Why not lower?
The theoretical impact is root-level code execution on macOS, which prevents an IGNORE rating. The vulnerability is real (unmaintained FTP library with no integrity checks), the fix is substantive (HP replaced the entire privilege-escalation API and added SHA-256 validation), and the CWE-1104 classification confirms a genuine software-quality defect that could combine with the sibling CVEs (12555, 12556) in the same bulletin.
What to do — in priority order.
- Inventory and remove HP Easy Start from managed macOS endpoints — Use your MDM solution (Jamf, Kandji, Mosyle) to query for HP Easy Start and remove it. Enterprise print deployment should use MDM-managed print queues, not consumer setup wizards. This eliminates the attack surface entirely. As a LOW-severity finding, there is no noisgate mitigation SLA — treat as backlog hygiene.
- Block outbound FTP (port 21) from macOS endpoints at the network edge — If removal is delayed, block outbound FTP at your egress firewall or NGFW. This prevents the OSPFTP fallback from ever completing a connection, neutralizing the MITM vector regardless of whether the app is present.
- Monitor for unsigned root process execution from HP Easy Start — Configure EDR rules to alert on child processes spawned by HP Easy Start that run as root, particularly any unsigned or ad-hoc signed binaries. This catches the final exploitation step.
- macOS Gatekeeper / notarization — Gatekeeper validates the HP Easy Start app itself but does not inspect packages downloaded *by* the app at runtime via its internal FTP handler. A tampered driver package fetched over FTP bypasses Gatekeeper's initial launch check.
- App Transport Security (ATS) enforcement — HP Easy Start explicitly sets
NSAllowsArbitraryLoads=truein its Info.plist, opting out of ATS protections. System-level ATS does not override per-app exceptions.
Crowdsourced verification payload.
Run on each macOS endpoint (or push via MDM script). No special privileges needed — it checks the app bundle version via defaults read. Example: bash check_hp_easy_start.sh
#!/bin/bash
# check_hp_easy_start.sh — CVE-2026-12554 detection
# Run on macOS endpoints. Exit 0 = PATCHED/not present, Exit 1 = VULNERABLE, Exit 2 = UNKNOWN
APP_PATH="/Applications/HP Easy Start.app"
PLIST="${APP_PATH}/Contents/Info.plist"
FIXED_VERSION="2.16.7.260722"
if [ ! -d "$APP_PATH" ]; then
echo "PATCHED — HP Easy Start is not installed on this host."
exit 0
fi
if [ ! -f "$PLIST" ]; then
echo "UNKNOWN — HP Easy Start directory exists but Info.plist not found."
exit 2
fi
INSTALLED_VERSION=$(/usr/bin/defaults read "$PLIST" CFBundleShortVersionString 2>/dev/null)
if [ -z "$INSTALLED_VERSION" ]; then
echo "UNKNOWN — Could not read version from Info.plist."
exit 2
fi
# Compare versions using sort -V
LOWER=$(printf '%s\n%s' "$INSTALLED_VERSION" "$FIXED_VERSION" | sort -V | head -n1)
if [ "$LOWER" = "$INSTALLED_VERSION" ] && [ "$INSTALLED_VERSION" != "$FIXED_VERSION" ]; then
echo "VULNERABLE — HP Easy Start version $INSTALLED_VERSION is below fixed version $FIXED_VERSION (CVE-2026-12554)."
exit 1
else
echo "PATCHED — HP Easy Start version $INSTALLED_VERSION is at or above fixed version $FIXED_VERSION."
exit 0
fiIf you remember one thing.
Sources
What defenders are saying.
Crowdsourced verification outputs.
Results submitted by users who ran the verification payload against their environment.