CVE-2025-0509: Sparkle Package Signing Checks Bypass Vulnerability
Summary
CVE-2025-0509: Sparkle Signing Checks Bypass. Affects github.com/sparkle-project/Sparkle versions < 2.6.4. Fixed in 2.6.4. How to fix ↓
Also tracked for
The same CVE-2025-0509 is tracked separately for each ecosystem and vendor. Its fix information is the same; the package and affected versions differ.
Check if this vulnerability affects your application
Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.
No signup required · Results in about 60 seconds
Background
Sparkle is an open-source software update framework for macOS applications, enabling developers to deliver updates seamlessly. It utilizes (Ed)DSA signing checks to ensure the integrity and authenticity of updates. However, prior to version 2.6.4, Sparkle was vulnerable to a signing checks bypass, allowing attackers to replace legitimate signed updates with malicious payloads.
Vulnerability Detail
The vulnerability arises from a flaw in Sparkle's update signing mechanism, which allows an attacker to substitute a valid signed update with a different payload. This bypass of (Ed)DSA signing checks can lead to unauthorized code execution, compromising user systems and data integrity. The issue is classified under CWE-552, indicating a violation of the principle of least privilege, where an attacker can exploit the update process to deliver harmful software.
How To Fix
Minimum fixed version
2.6.4
This is the first release that contains the fix.
Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →
Workaround
As a temporary workaround, users can manually verify the integrity of updates before installation. This involves checking the digital signatures of the updates against known good signatures, although this is not a foolproof solution and should not replace updating to the patched version.
Conclusion
The Sparkle signing checks bypass vulnerability (CVE-2025-0509) poses significant risks to applications using the framework. It is crucial for developers to update to version 2.6.4 or later to mitigate these risks. Utilizing tools like Vulert can help in monitoring and managing vulnerabilities effectively.
See every vulnerability recorded for github.com/sparkle-project/Sparkle →
FAQ
The CVSS score for this vulnerability is 7.3, indicating a high severity level.
You can use Vulert's playground at Vulert Scanner to check if your application is affected by this vulnerability without requiring any signup.
If exploited, this vulnerability can lead to unauthorized code execution, allowing attackers to install malicious software on user systems.
Yes, Vulert can monitor and alert you in real-time for open-source vulnerabilities in your software using just a manifest file like package-lock.json.
If immediate updating is not possible, ensure to verify the integrity of updates manually and consider implementing additional security measures until you can upgrade.
Related vulnerabilities
Recent vulnerabilities recorded for github.com/sparkle-project/Sparkle.