13 Malicious Packagist Packages Target Unpatched iPhones to Steal Crypto Wallet Seeds
13 malicious Packagist packages inject spyware to steal crypto wallet seeds from unpatched iPhones.
Run Funnull?
Get an email when a reviewed story names Funnull, usually within the hour.
Free. Your list stays private and never appears in a subject line. One click stops it. How Vendor Watch worksPrivacy
Summary
Cybersecurity researchers discovered 13 malicious Composer packages on Packagist that inject JavaScript into Vietnamese streaming sites. These packages deploy spyware targeting unpatched iOS devices, aiming to steal cryptocurrency wallet seeds by exploiting WebKit vulnerabilities. The campaign, active since March 2026, also includes mobile ad-fraud and gambling redirects.
The lesson from this incident
Full lessonAttackers published 13 malicious Composer packages on Packagist — a trusted PHP dependency registry — to inject JavaScript into Vietnamese streaming sites, demonstrating how supply chain compromise can weaponize developer ecosystems against end users. The injected scripts exploited unpatched WebKit vulnerabilities on iOS devices, enabling theft of cryptocurrency wallet seed phrases, which permanently compromises a victim's funds with no recovery path. This campaign highlights the dual risk of unvetted open-source dependencies and delayed mobile OS patching, where either failure alone creates an exploitable gap. The combination of supply chain infiltration and client-side exploitation underscores that defending users requires both securing the software pipeline and maintaining up-to-date device firmware.
What helps against this
How we list vendors- Vulnerability scanning and prioritisation
You know which systems are vulnerable, and which ones to fix first.
- Threat intelligence
Attack campaigns reach your sector, suppliers or software before your team hears about them.
- Software supply chain security
Malicious and vulnerable open-source packages are caught before they ship.
Indicators of Compromise
- cve — CVE-2025-31277
- cve — CVE-2025-43529