CVE-2017-15736
Medium · 6.1CVSS
6.1
EPSS
1.0%
Published
Oct 22, 2017
CISA due date
—
Cloudanix analysis
A flaw in the content management system lets attackers hide malicious code inside stored pages so that anyone who views those pages can have their information stolen or actions taken without their knowledge.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Low
- Impact
- Data Tampering
- Component
- Application
- Class
- XSS
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Stored cross-site scripting flaw that allows arbitrary HTML or script injection into persisted content via unsanitized fields such as PGP metadata, executed in the context of other users' browsers when the affected pages are rendered.
Why it matters to the business
Attackers can hijack user sessions, steal credentials or sensitive data displayed to administrators, and perform unauthorized actions within the application on behalf of victims, leading to data exposure and potential account compromise across the user base.
How an attack unfolds
An attacker submits a crafted payload containing script tags or event handlers into a field such as the PGP field; the input is stored without proper sanitization; when any user or administrator later views the affected author or content page the malicious script executes in their browser, enabling theft of cookies or session tokens.
How to fix it
Upgrade SPIP to version 3.1.7 or later. After upgrading, review and sanitize any existing stored content that may contain previously injected scripts. Restrict or monitor fields that accept raw HTML until the update is complete.
How to confirm the fix worked
Confirm the installed SPIP version is 3.1.7 or newer. Reproduce the original input vector with a benign test payload and verify that the output is properly escaped. Scan the relevant template and helper files for updated sanitization logic.
Typical attack path
- Identify a publicly accessible input field that accepts user-controlled strings and is later displayed without escaping.
- Craft and submit a payload containing executable script or HTML that targets the stored content path.
- Verify the payload is persisted in the database or page source.
- Wait for or lure a privileged user to view the affected page so the script executes in their session context.
- Use the resulting browser context to exfiltrate data or perform further actions.
How to detect it
Review web server and application logs for requests containing script tags or encoded payloads submitted to author or profile update endpoints. Inspect stored content in the database for unexpected HTML or script elements. Check rendered pages for injected script sources or event handlers originating from user-controlled fields.
What your security team should do
- Apply the 3.1.7 or newer update immediately given the public disclosure date and persistent stored nature of the flaw.
- Audit all user-generated content fields for prior injection and remove or neutralize any suspicious scripts.
- Implement web application firewall rules or content security policy headers as a compensating control until patching is complete.
- Monitor access logs for unusual requests to author or content rendering endpoints.
The record
Cross-site scripting (XSS) vulnerability (stored) in SPIP before 3.1.7 allows remote attackers to inject arbitrary web script or HTML via a crafted string, as demonstrated by a PGP field, related to prive/objets/contenu/auteur.html and ecrire/inc/texte_mini.php.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | spip | 0 | 3.1.4-4 |
| Debian:13 | spip | 0 | 3.1.4-4 |
| Debian:8 | spip | 0 | 3.0.17-2+deb8u4 |
| Debian:9 | spip | 0 | 3.1.4-4~deb9u1 |
| Ubuntu:16.04:LTS | spip | 0 | No fix |
| Ubuntu:18.04:LTS | spip | 0 | 3.1.4-4~deb9u3build0.18.04.1 |
| Ubuntu:Pro:16.04:LTS | spip | 0 | No fix |
Related vulnerabilities
- CVE-2024-8517 SPIP before 4.3.2, 4.2.16, and 4.1.18 is vulnerable to a command injection issue. Also affects spip
- CVE-2024-7954 The porte_plume plugin used by SPIP before 4.30-alpha2, 4.2.13, and 4.1.16 is vulnerable… Also affects spip
- CVE-2016-7998 The SPIP template composer/compiler in SPIP 3.1.2 and earlier allows remote authenticated… Also affects spip
- CVE-2016-7982 Directory traversal vulnerability in ecrire/exec/valider_xml.php in SPIP 3.1.2 and… Also affects spip
- CVE-2013-4557 The Security Screen (_core_/securite/ecran_securite.php) before 1.1.8 for SPIP, as used… Also affects spip
- CVE-2026-96379 Improper Neutralization of Input During Web Page Generation ("Cross-site Scripting")… CWE-79
- CVE-2026-96382 Improper Neutralization of Input During Web Page Generation ("Cross-site Scripting")… CWE-79
- CVE-2026-96368 Improper Neutralization of Input During Web Page Generation ("Cross-site Scripting")… CWE-79