CVE-2026-1115 is a critical-severity (CVSS 9.6) Cross-site Scripting (XSS) vulnerability in lollms. A fix is available for lollms — see the affected versions and patch details below.
Stored XSS in parisneo/lollms
Exploitation Status
Proof-of-concept exploit code exists
- CISA’s SSVC triage found public proof-of-concept exploit code for this CVE, though no confirmed active exploitation.
- A successful exploit gives an attacker total control of the affected component, not partial access.
Exploitation and automatability from CISA’s SSVC triage for CVE-2026-1115.
EPSS Exploitation Probability
Probability of exploitation in the next 30 days, from FIRST.org EPSS.
How urgent is this, really
Where this sits among everything scored
Real-World Exposure
lollmsReal-time download stats are indexed for npm and PyPI packages. This vulnerability affects PyPI packages — download data is not available via public APIs for these ecosystems.
Description
A Stored Cross-Site Scripting (XSS) vulnerability was identified in the social feature of parisneo/lollms, affecting the latest version prior to 2.2.0. The vulnerability exists in the create_post function within backend/routers/social/__init__.py, where user-provided content is directly assigned to the DBPost model without sanitization. This allows attackers to inject and store malicious JavaScript, which is executed in the browsers of users viewing the Home Feed, including administrators. This can lead to account takeover, session hijacking, and wormable attacks. The issue is resolved in version 2.2.0.
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| 🐍PyPI | lollms | all versions | 2.2.0pip install --upgrade 'lollms==2.2.0' |
Affected Products
lollmslollmsDetection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for lollms, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update lollms to 2.2.0 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms CVE-2026-1115 is resolved across your whole dependency graph.
Workarounds
Escape or sanitise the affected output on the server side rather than relying on client-side filtering, and add a Content-Security-Policy that blocks inline script execution so injected markup cannot run even if it reaches the page.
How to detect CVE-2026-1115
A community-maintained Nuclei template exists for this CVE. You can scan for it directly:
nuclei -id cve-2026-1115 -u https://target- Template
- parisneo/lollms < 2.2.0 - Authenticated Stored XSS
- Severity
- high
- Impact
- Attackers can execute malicious scripts in user browsers, leading to account takeover, session hijacking, and wormable attacks.
- Remediation
- Update to version 2.2.0 or later.
Template by ProjectDiscovery nuclei-templates (str4k3r), MIT licensed. View the full template. Scan only systems you are authorised to test.
Frequently Asked Questions
Is CVE-2026-1115 in your dependencies?
Find it across PyPI, including transitive dependencies.