CVE-2009-4137
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.
Key facts
- CVSS score
- 7.5 (v2.0)
- Severity
- HIGH
- CVSS vector
AV:N/AC:L/Au:N/C:P/I:P/A:P- Weakness (CWE)
- CWE-20
- EPSS score
- 16.9% (97th percentile)
- In CISA KEV
- No
- In EU EUVD
- Yes (EUVD-2009-4107)
- Published
- December 24, 2009
- NVD last modified
- June 16, 2026
- Status
- Modified
EU Vulnerability Database (EUVD)
This vulnerability is also tracked by ENISA as EUVD-2009-4107 in the EU Vulnerability Database. Last updated in EUVD on September 16, 2024.
View on the EU Vulnerability DatabaseAffected products
- matomo / matomo
- matomo / matomo
- matomo / matomo
- matomo / matomo
- matomo / matomo
- matomo / matomo
- matomo / matomo
- matomo / matomo
References
- http://dev.piwik.org/trac/changeset/1637(Vendor Advisory)
- http://piwik.org/blog/2009/12/piwik-response-to-shocking-news-in-php-exploitation/(Vendor Advisory)
- http://www.openwall.com/lists/oss-security/2009/12/09/2
- http://www.openwall.com/lists/oss-security/2009/12/10/1
- http://www.openwall.com/lists/oss-security/2009/12/14/2
- http://www.sektioneins.de/en/advisories/advisory-032009-piwik-cookie-unserialize-vulnerability/
- http://www.suspekt.org/2009/12/09/advisory-032009-piwik-cookie-unserialize-vulnerability/
- http://www.suspekt.org/downloads/POC2009-ShockingNewsInPHPExploitation.pdf
Last updated September 17, 2026 · Source: NVD, CISA KEV, FIRST.org EPSS
Query CVEs from your AI assistant
The CVE/NVD Explorer brain answers CVE questions directly inside Claude, ChatGPT, or any MCP assistant — always up to date, no setup. Add it once and stop pasting advisories into chat.
Add the CVE brain