
PEACH
Un cadre d’isolation des locataires
CVE-2015-10149 is a path traversal and injection vulnerability in the Dancer web framework for Perl, affecting all versions before 1.3400. The flaw exists in the read_session_id function within Dancer::Session::Abstract, which returns the session cookie value as the session ID without validating its characters, passing it directly to the session engine. A remote, unauthenticated attacker can craft a malicious session cookie to trigger path traversal or injection in session engines that use the ID in file paths, cache commands, or database queries. The CVSS category is estimated as HIGH (Feedly, GitHub Advisory).
The root cause is classified as CWE-1286 (Improper Validation of Syntactic Correctness of Input), with an additional estimate of CWE-22 (Path Traversal). The vulnerable code in lib/Dancer/Session/Abstract.pm returns the raw cookie value from read_session_id without any character validation, allowing values such as ../../../etc/passwd to be passed directly to session storage backends (e.g., Dancer::Session::YAML, Dancer::Session::JSON, Dancer::Session::Storable) that use the session ID as a file path or query parameter. The fix, introduced in PR #1172 and merged March 20, 2018, added a validate_session_id method that enforces a whitelist regex (^[A-Za-z0-9_\-~]+$) before the ID is used (GitHub Commit, GitHub PR #1172).
Successful exploitation allows an unauthenticated remote attacker to manipulate the session cookie to inject path traversal sequences or malicious characters, potentially enabling unauthorized access to arbitrary session files on the server's filesystem, injection into cache commands, or malicious query injection depending on the session engine in use. The impact varies by session backend: file-based engines (YAML, JSON, Storable) are susceptible to directory traversal allowing reading or overwriting arbitrary files accessible to the web server process, while cache or database-backed engines may be vulnerable to injection attacks. This could lead to session hijacking, sensitive data disclosure, or further system compromise (Feedly, GitHub Issue #1118).
There is no public proof-of-concept exploit code and no evidence of in-the-wild exploitation as of the time of disclosure (Feedly). The EPSS score is 0.0, indicating very low probability of exploitation in the near term. The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. No threat actor attribution has been reported.
X-Powered-By: Perl/Dancer) or application fingerprinting.dancer.session=<id>), observing the cookie name used by the session engine.../../../etc/passwd (for file-based session engines like YAML or Storable) or an injection string appropriate for the backend in use.retrieve() method.../, %2e%2e%2f) or unusual characters (e.g., /, \, %00) in the session cookie value field./etc/passwd) by the web server process.Upgrade Dancer to version 1.3400 or later, which introduces the validate_session_id method that enforces a strict character whitelist (^[A-Za-z0-9_\-~]+$) on session IDs before they are passed to the session engine (GitHub PR #1172, MetaCPAN Changelog). As a temporary workaround for those unable to upgrade immediately, implement input validation on session IDs within each session engine's retrieve() method to reject IDs containing path traversal characters or other unsafe sequences. Applications using Dancer::Session::Cookie are less directly affected as that engine stores session contents (not a simple ID) in the cookie, but upgrading remains the recommended action.
The vulnerability was discussed in the Dancer GitHub repository as early as June 2015 (PR #1117), where contributor yanick initially proposed checking session IDs upon retrieval. The fix was reverted and reworked multiple times due to compatibility concerns with Dancer::Session::Cookie, with maintainer bigpresh noting the issue as a "hideous problem that should have been fixed long ago" (GitHub Issue #1118). The final fix was merged in March 2018 and formally assigned a CVE identifier in November 2026. Social media activity was limited to automated CVE notification accounts on Bluesky.
Source: Ce rapport a été généré à l’aide de l’IA
Évaluation gratuite des vulnérabilités
Évaluez vos pratiques de sécurité cloud dans 9 domaines de sécurité afin d’évaluer votre niveau de risque et d’identifier les lacunes dans vos défenses.
Obtenez une démo personnalisée
"La meilleure expérience utilisateur que j’ai jamais vue, offre une visibilité totale sur les workloads cloud."
"Wiz fournit une interface unique pour voir ce qui se passe dans nos environnements cloud."
"Nous savons que si Wiz identifie quelque chose comme critique, c’est qu’il l’est réellement."