CVE-2026-44401 is a persistent cross-site scripting vulnerability in Typemill CMS 2.x affecting the Markdown parser extension. The flaw arises from improper sanitization of href values in Markdown links, allowing authenticated users with theme-configuration access to supply links that use the javascript: URI scheme. Through the Markdown processing components, including ParsedownExtension.php or TwigMarkdownExtension.php, an attacker can store a malicious payload that remains embedded in rendered content. When a visitor clicks the crafted link, attacker-controlled JavaScript executes in the visitor's browser within the security context of the affected site.
Mallory correlates every CVE against your assets, your vendors, and active adversary campaigns. Know which vulnerabilities matter for you, not just which ones are loud.
What it means. What to do now. Patch path, mitigations, and the assume-compromise checklist.
What an attacker gets, and what they’ve been doing with it.
If you can’t patch tonight, do this now.
Patch, then assume compromise.
1 valid exploit after Mallory filtered fakes, detection scripts, and README-only repos.
This repository is a small, focused exploit PoC for CVE-2026-44401 affecting Typemill CMS 2.x before 2.23.0. It contains two files: a Python exploit script and a README with vulnerability details, reproduction steps, and impact notes. The exploit is genuine and operational rather than merely descriptive. The main file, CVE-2026-44401_POC.py, implements two workflows. In local mode, it performs offline verification by writing a temporary PHP harness and invoking Typemill's real ParsedownExtension parser against attacker-controlled Markdown. This mode can operate either against a local Typemill source tree or inside a running Docker container. It checks whether a Markdown link such as [Click me](javascript:alert(document.domain)) is rendered into HTML with a raw href="javascript:..." value, which indicates the vulnerable behavior. In remote mode, the script targets a live Typemill instance: it logs in with supplied credentials, uses the theme-settings functionality/API to store the malicious Markdown payload into a configurable field (default introMarkdown), fetches the public homepage to confirm the payload is rendered, and optionally restores the original value. The exploit capability is persistent XSS, not server-side code execution. Its effect is to plant a stored javascript: link that executes in the browser of a victim who clicks it. The README states the required privileges are any role with system:update rights, typically admin or manager. The vulnerable product is Typemill CMS versions >=2.0.0 and <2.23.0. Notable fingerprintable targets and paths include the example live target URL http://localhost:8080, the theme API route POST /api/v1/theme, the theme page route GET /tm/themes, the default Docker install path /var/www/html, and the vulnerable parser file system/typemill/Extensions/ParsedownExtension.php. The repository’s purpose is to demonstrate and validate the stored XSS condition both offline and against an authorized live instance.
Products and vendors Mallory has correlated with this vulnerability. Open in Mallory to drill down to specific CPE configurations and version ranges.
Vendor-confirmed product mapping. Mallory continuously reconciles this list against your asset inventory.
No public activity tracked yet. Mallory keeps watching.
No public activity observed for this vulnerability.
Query your assets running an affected version, and investigate the blast radius.
Every observed campaign linking this CVE to a named adversary.
Malware families riding this exploit, with evidence and IOCs.
YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.
Cross-references every affected SKU, including bundled OEM variants.
Community discussion across Reddit, Mastodon, and other social sources.