malicious SVG attachment causing stored XSS vulnerability
Impact
An attacker with write permissions can upload an SVG file that contains malicious javascript. This javascript will be executed in a user's browser when the user is viewing that SVG file on the wiki.
Patches
Users are strongly advised to upgrade to a patched version.
MoinMoin Wiki 1.9.11 has the necessary fixes and also contains other important fixes.
Workarounds
It is not advised to work around this, but to upgrade MoinMoin to a patched version.
That said, a work around via a Content Security Policy in the web server might be possible.
Also, it is of course helpful if you give write permissions (which include uploading attachments) only to trusted users.
For more information
If you have any questions or comments about this advisory, email me at twaldmann@thinkmo.de.
Credits
This vulnerability was discovered by:
Catarina Leite from the Checkmarx SCA AppSec team
Affected software
Click a technology to see all vulnerabilities affecting it.
| Platform | Package | Vulnerable versions | Fixed in |
|---|---|---|---|
| Python (PyPI) | moin | < 1.9.11 | 1.9.11 |
References
- https://github.com/moinwiki/moin-1.9/commit/31de9139d0aabc171e94032168399b4a0b2a88a2
- https://github.com/moinwiki/moin-1.9/security/advisories/GHSA-4q96-6xhq-ff43
- https://github.com/moinwiki/moin-1.9/releases/tag/1.9.11
- https://advisory.checkmarx.net/advisory/CX-2020-4285
- https://nvd.nist.gov/vuln/detail/CVE-2020-15275
- https://github.com/moinwiki/moin-1.9
- https://github.com/pypa/advisory-database/tree/main/vulns/moin/PYSEC-2020-241.yaml
- https://pypi.org/project/moin
- CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N- Weakness (CWE)
CWE-79- Platform
- Python (PyPI)
- Package
moin- Disclosed
- 11.11.2020
- Updated
- 11.10.2026 13:19
Sources and licenses
OSV / GitHub Advisory Database - PYSEC-2020-241 - PyPA Advisory Database; CC BY 4.0
OSV / GitHub Advisory Database - GHSA-4q96-6xhq-ff43 - CC BY 4.0
Vulnerability history: moin
All published vulnerabilities of this package (Python (PyPI)), newest first. Shows whether this is a one-off slip or a package that needs watching.
- Total entries
- 41
- First → latest
- 04.2008 05.2022
- Without a fix
- 5
- Exploited in attacks
- 0
Severity breakdown
- High 11
- Medium 30
Disclosures per year
- 2017: 1
- 2018: 1
- 2019: 0
- 2020: 2
- 2021: 0
- 2022: 14
- 2023: 0
- 2024: 0
- 2025: 0
- 2026: 0
earlier: 23
-
malicious SVG attachment causing stored XSS vulnerability this entry
Know which vulnerabilities affect your application
With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.