The loadContentFromCookie function in core/Cookie.php in Piwik before 0.5 does not validate strings obtained from cookies before calling the unserialize function, which allows remote attackers to execute arbitrary code or upload arbitrary files via vectors related to the __destruct function in the Piwik_Config class; php://filter URIs; the __destruct functions in Zend Framework, as demonstrated by the Zend_Log destructor; the shutdown functions in Zend Framework, as demonstrated by the Zend_Log_Writer_Mail class; the render function in the Piwik_View class; Smarty templates; and the _eval function in Smarty.
CVE-2009-4137
This CVE was only ever scored under CVSS v2.0. NVD CVSS v2.0 base 7.5 — v2 rates that HIGH (v2 bands: LOW 0.0–3.9 / MEDIUM 4.0–6.9 / HIGH 7.0–10.0; v2 has no CRITICAL band). Vector AV:N/AC:L/Au:N/C:P/I:P/A:P. CVSS v2 is an older, coarser metric than v3.1/v4.0 (no Scope, no User Interaction, no Attack Requirements), so it is not directly comparable to a v3 or v4 score. NVD has never re-scored this record under v3. EPSS predicts 16.9% exploitation probability in the next 30 days, which is reflected in EG Risk but does not lift the v2 base. Confidence: LOW.
- High severity, but no confirmed exploitation yet
No vendor fix yet — apply a workaround or compensating control (WAF / firewall / segmentation) and watch for a patch.
- CVSS v2.0 (legacy)
- 7.5HIGHNVD never assigned a CVSS v3 rating to this CVE
- EG Score
- 7.5(low)
- EG Risk
- 54(Track)EG Risk 54/100SSVC: Track
EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).
How it’s computedSeverity75% × 45%Exploitation40% × 40%Automatability30% × 15%Action: Routine — remediate on your standard cadence. - EPSS PROB
- 17%
- EPSS %ILE
- 97%
- KEV
- Not listed
Published
December 24, 2009
Last Modified
April 23, 2026
References (16)
- secalert@redhathttp://dev.piwik.org/trac/changeset/1637
- secalert@redhathttp://piwik.org/blog/2009/12/piwik-response-to-shocking-news-in-php-exploitation/
- secalert@redhathttp://www.openwall.com/lists/oss-security/2009/12/09/2
- secalert@redhathttp://www.openwall.com/lists/oss-security/2009/12/10/1
- secalert@redhathttp://www.openwall.com/lists/oss-security/2009/12/14/2
- secalert@redhathttp://www.sektioneins.de/en/advisories/advisory-032009-piwik-cookie-unserialize-vulnerability/
- secalert@redhathttp://www.suspekt.org/2009/12/09/advisory-032009-piwik-cookie-unserialize-vulnerability/
- secalert@redhathttp://www.suspekt.org/downloads/POC2009-ShockingNewsInPHPExploitation.pdf
- af854a3a-2127-422b-91ae-364da2661108http://dev.piwik.org/trac/changeset/1637
- af854a3a-2127-422b-91ae-364da2661108http://piwik.org/blog/2009/12/piwik-response-to-shocking-news-in-php-exploitation/
- af854a3a-2127-422b-91ae-364da2661108http://www.openwall.com/lists/oss-security/2009/12/09/2
- af854a3a-2127-422b-91ae-364da2661108http://www.openwall.com/lists/oss-security/2009/12/10/1
- af854a3a-2127-422b-91ae-364da2661108http://www.openwall.com/lists/oss-security/2009/12/14/2
- af854a3a-2127-422b-91ae-364da2661108http://www.sektioneins.de/en/advisories/advisory-032009-piwik-cookie-unserialize-vulnerability/
- af854a3a-2127-422b-91ae-364da2661108http://www.suspekt.org/2009/12/09/advisory-032009-piwik-cookie-unserialize-vulnerability/
Weakness Classification(1)
MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.
Data Freshness Timeline
(refreshed 2× in last 7d / 8× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
- 2026-08-27 14:19 UTCEPSS rescore
- 2026-08-25 13:43 UTCEPSS rescore
- 2026-08-19 16:58 UTCEPSS rescore
- 2026-08-15 01:24 UTCEPSS rescore
- 2026-08-09 13:41 UTCEPSS rescore
- 2026-08-08 16:31 UTCEPSS rescore
- 2026-08-06 13:41 UTCEPSS rescore
- 2026-07-30 16:22 UTCEPSS rescore
- 2026-07-26 13:39 UTCEG score recompute▲ 7.50
- 2026-07-25 14:12 UTCEPSS rescore
- 2026-07-24 14:12 UTCEPSS rescore
- 2026-07-23 14:14 UTCEPSS rescore
- 2026-07-23 01:00 UTCEG score recompute
- 2026-07-23 00:37 UTCEG score recompute
- 2026-07-23 00:04 UTCEG score recompute
- 2026-07-22 21:43 UTCEG score recompute
- 2026-07-22 14:03 UTCEPSS rescore
- 2026-07-21 15:20 UTCEPSS rescore
- 2026-07-20 17:03 UTCEPSS rescore
- 2026-07-20 17:03 UTCEPSS rescore
- 2026-07-18 09:59 UTCEPSS rescore
- 2026-07-16 16:58 UTCEPSS rescore
- 2026-07-15 16:54 UTCEPSS rescore
- 2026-07-15 16:54 UTCEPSS rescore
- 2026-07-15 01:55 UTCEPSS rescore
Show 75 moreShow fewer
- 2026-07-13 22:25 UTCEPSS rescore
- 2026-07-13 06:07 UTCEPSS rescore
- 2026-07-11 08:22 UTCEPSS rescore
- 2026-07-11 08:22 UTCEPSS rescore
- 2026-07-09 19:04 UTCEPSS rescore
- 2026-07-08 15:10 UTCEPSS rescore
- 2026-07-05 02:26 UTCEPSS rescore
- 2026-07-05 02:26 UTCEPSS rescore
- 2026-07-01 15:02 UTCEPSS rescore
- 2026-06-30 23:19 UTCEPSS rescore
- 2026-06-29 14:02 UTCEPSS rescore
- 2026-06-29 14:02 UTCEPSS rescore
- 2026-06-28 14:03 UTCEPSS rescore
- 2026-06-28 04:52 UTCEPSS rescore
- 2026-06-28 04:52 UTCEPSS rescore
- 2026-06-27 03:05 UTCEPSS rescore
- 2026-06-25 13:46 UTCEPSS rescore
- 2026-06-25 13:46 UTCEPSS rescore
- 2026-06-24 14:02 UTCEPSS rescore
- 2026-06-24 14:02 UTCEPSS rescore
- 2026-06-23 21:29 UTCEPSS rescore
- 2026-06-23 21:29 UTCEPSS rescore
- 2026-06-22 14:22 UTCEPSS rescore
- 2026-06-22 14:22 UTCEPSS rescore
- 2026-06-21 14:53 UTCEPSS rescore
- 2026-06-21 01:56 UTCEPSS rescore
- 2026-06-21 01:56 UTCEPSS rescore
- 2026-06-18 17:49 UTCEPSS rescore
- 2026-06-18 17:49 UTCEPSS rescore
- 2026-06-17 17:49 UTCEPSS rescore
- 2026-06-17 17:49 UTCEPSS rescore
- 2026-06-16 17:49 UTCEPSS rescore
- 2026-06-16 17:49 UTCEPSS rescore
- 2026-06-15 17:44 UTCEPSS rescore
- 2026-06-14 23:14 UTCEPSS rescore
- 2026-06-14 23:14 UTCEPSS rescore
- 2026-06-13 22:57 UTCEPSS rescore
- 2026-06-12 23:08 UTCEPSS rescore
- 2026-06-12 23:08 UTCEPSS rescore
- 2026-06-10 22:14 UTCEPSS rescore
- 2026-06-10 13:17 UTCEPSS rescore
- 2026-06-07 15:22 UTCEPSS rescore
- 2026-06-07 15:22 UTCEPSS rescore
- 2026-06-06 13:44 UTCEPSS rescore
- 2026-06-06 13:44 UTCEPSS rescore
- 2026-06-06 13:44 UTCEPSS rescore
- 2026-06-05 22:44 UTCEPSS rescore
- 2026-06-05 22:44 UTCEPSS rescore
- 2026-06-05 06:07 UTCEPSS rescore
- 2026-06-04 13:09 UTCEPSS rescore
- 2026-06-04 13:09 UTCEPSS rescore
- 2026-06-02 20:10 UTCEPSS rescore
- 2026-06-02 20:10 UTCEPSS rescore
- 2026-05-31 22:28 UTCEPSS rescore
- 2026-05-31 22:28 UTCEPSS rescore
- 2026-05-31 00:13 UTCEPSS rescore
- 2026-05-31 00:13 UTCEPSS rescore
- 2026-05-29 13:40 UTCEPSS rescore
- 2026-05-29 13:17 UTCEG score recompute
- 2026-05-29 13:17 UTCGHSA enrichment
- 2026-05-28 13:42 UTCEPSS rescore
- 2026-05-28 13:42 UTCEPSS rescore
- 2026-05-28 13:42 UTCEPSS rescore
- 2026-05-27 13:38 UTCEPSS rescore
- 2026-05-27 13:38 UTCEPSS rescore
- 2026-05-26 13:41 UTCEPSS rescore
- 2026-05-26 13:41 UTCEPSS rescore
- 2026-05-26 07:16 UTCEPSS rescore
- 2026-05-26 07:16 UTCEPSS rescore
- 2026-05-24 16:43 UTCEPSS rescore
- 2026-05-20 22:37 UTCEPSS rescore
- 2026-05-20 22:37 UTCEPSS rescore
- 2026-05-20 11:21 UTCEPSS rescore
- 2026-05-20 11:20 UTCEPSS rescore
- 2026-05-18 21:29 UTCEPSS rescore
Publicly available exploits
(1 reference)Working exploit code is in the public domain (1 GitHub PoC). Defenders should treat patch urgency accordingly — public PoCs typically lead to mass-exploitation within 24-72 hours.
- GitHub PoCAlexeyan/CVE-2009-4137First seen Nov 28, 2017
Exploit for piwik CVE-2009-4140 RCE
Open source ↗
Related CVEs(same CWE)
Same CWE
10 shownCWE-20
- CVE-2005-0050EG 10.0EPSS p99HIGH
- CVE-2004-1019EG 10.0EPSS p94HIGH
- CVE-2004-0840EG 10.0EPSS p98HIGH
- CVE-2003-1425EG 10.0EPSS p96HIGH
- CVE-2003-1487EG 10.0EPSS p94HIGH
- CVE-2002-1874EG 10.0HIGH
- CVE-2002-2236EG 10.0EPSS p91HIGH
- CVE-2002-2365EG 10.0HIGH
- CVE-2002-1358EG 10.0EPSS p93HIGH
- CVE-2002-1359EG 10.0EPSS p100HIGH
Frequently asked(4)
What is CVE-2009-4137?
When was CVE-2009-4137 disclosed?
Is CVE-2009-4137 actively exploited?
How do I remediate CVE-2009-4137?
Dependency Blast Radius
Explore the affected products and dependency analysis for CVE-2009-4137
Is Your Infrastructure Affected by CVE-2009-4137?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.