On this page
CWE-116: Improper Encoding or Escaping of Output
Weakness Summary
The product prepares a structured message for communication with another component, but encoding or escaping of the data is either missing or done incorrectly. As a result, the intended structure of the message is not preserved.
- Canonical source: MITRE CWE-116 (opens in a new tab)
- Published Atomicorp CVE observations: 24
- Distinct affected products in those observations: 24
- Active Atomicorp rules associated with this weakness: 44
Atomicorp Research Context
Atomicorp has published CVE-specific research observations associated with this weakness category. Each linked CVE page states whether the tested request was detected or blocked and is the authoritative customer-facing finding.
The CVEs and rules shown here are selected published examples, not a complete list of Atomicorp protections. If a CWE, CVE, or rule is absent from this page, no conclusion should be drawn about whether Atomicorp protects against that weakness or attack method.
A CWE describes a class of software weakness. It does not identify one exploit request, and association with a CWE does not mean that every vulnerability or exploitation path in that category is detected or blocked.
Selected Published CVE Observations
| CVE | Vulnerability | Product | Atomicorp finding | Observed rules |
|---|---|---|---|---|
| CVE-2026-106102 | Quasar Framework: Stored/Reflected XSS via unescaped SSR meta tag rendering in getHead() | quasar | Protected by Atomicorp rules | 333140 , 333141 , 340095 , 340147 , 340148 , 341256 , 342259 , 346755 |
| CVE-2022-36446 | Webmin Package Updates RCE | webmin | Protected by Atomicorp rules | 341245 , 344364 , 392301 , 393655 |
| CVE-2026-18516 | Improper Encoding or Escaping of Output in Crafty Controller | Crafty Controller | Protected by Atomicorp rules | 340099 , 341099 |
| CVE-2026-54694 | NationalSecurityAgency/skills-service has Stored XSS via User Registration Enabling Admin Account Takeover | skills-service | Protected by Atomicorp rules | 333140 , 333141 , 340095 , 340147 , 340148 , 341256 , 342259 , 346755 , 350147 , 350148 |
| CVE-2026-55570 | SiYuan: Stored XSS results to Electron RCE in SiYuan marketplace via unescaped data-obj attribute (Bypass for CVE-2026 | siyuan | Protected by Atomicorp rules | 333140 , 333141 , 340095 , 340147 , 340148 , 341256 , 342259 , 346755 |
| CVE-2026-12496 | Loytec LINX firmware: Unauthenticated stored XSS in OPC XML-DA server | LIP-ME20xC | Protected by Atomicorp rules | 333140 , 333141 , 340087 , 340095 , 340099 , 340147 , 340148 , 341099 , 341256 , 341266 , 342259 , 346755 , 350147 , 350148 |
| CVE-2026-35569 | ApostropheCMS: Stored XSS in SEO Fields Leads to Authenticated API Data Exposure in ApostropheCMS | apostrophecms | Protected by Atomicorp rules | 340099 , 341099 |
| CVE-2024-38473 | Apache HTTP Server - ACL Bypass | Apache HTTP Server | Protected by Atomicorp rules | 390709 |
| CVE-2026-55659 | Grist: XSS through unsafe value interpolation in server-rendered pages | grist-core | Protected by Atomicorp rules | 333140 , 333141 , 340087 , 340095 , 340099 , 340147 , 340148 , 341099 , 341256 , 341266 , 342259 , 346755 , 350147 , 350148 |
| CVE-2026-35534 | ChurchCRM has Stored XSS in PersonView.php via Facebook Field Attribute Injection | churchcrm | Protected by Atomicorp rules | 333140 , 333141 , 340087 , 340095 , 340099 , 340147 , 340148 , 341099 , 341256 , 341266 , 342259 , 346755 , 350147 , 350148 |
| CVE-2026-54506 | Vvveb: Stored XSS via sanitizeHTML() bypass in user profile bio field | Vvveb | Protected by Atomicorp rules | 333140 , 333141 , 340095 , 340147 , 340148 , 340247 , 340248 , 341256 , 342259 , 346755 , 350147 , 350148 |
| CVE-2025-60787 | Remote Code Execution Vulnerability in MotionEye Frontend (CVE-2025-60787) | motioneye | Protected by Atomicorp rules | 330791 , 340152 , 393655 |
| CVE-2026-40871 | mailcow: dockerized vulnerable to Second Order SQL Injection in quarantine category via API | mailcow-dockerized | Protected by Atomicorp rules | 340016 , 340017 , 340144 , 340145 , 340156 , 340157 , 341145 , 341245 , 360147 , 360148 , 380026 , 380122 , 390572 |
| CVE-2021-34630 | GTranslate < 2.8.65 - Cross-Site Scripting | gtranslate | Protected by Atomicorp rules | 340147 , 340148 , 341266 , 342259 , 346755 , 350147 , 350148 |
| CVE-2026-107393 | FreeScout: Stored HTML Injection in Administrator Alert Emails via Spoofed CF-Connecting-IP Header | freescout | Protected by Atomicorp rules | 333140 , 333141 , 340095 , 340099 , 340147 , 340148 , 341099 , 341256 , 342259 , 346755 |
| CVE-2026-26028 | CryptPad: Sanitizer Bypass in Diffmarked.js Allows Arbitrary HTML Injection and Potential XSS | cryptpad | Protected by Atomicorp rules | 333140 , 333141 , 340095 , 340147 , 340148 , 341256 , 342259 , 346755 , 350147 , 350148 |
| CVE-2026-33436 | Stirling-PDF: Reflected XSS through crafted filename in file upload functionality | stirling pdf | Protected by Atomicorp rules | 333140 , 333141 , 340095 , 340147 , 340148 , 341256 , 342259 , 346755 , 350147 , 350148 |
| CVE-2026-40483 | ChurchCRM: Stored XSS in PledgeEditor.php via Donation Comment Field | CRM | Protected by Atomicorp rules | 333140 , 333141 , 340087 , 340095 , 340099 , 340147 , 340148 , 341099 , 341256 , 341266 , 342259 , 346755 , 350147 , 350148 |
| CVE-2026-41318 | AnythingLLM vulnerable to stored DOM XSS in chart caption renderer - LLM-driven prompt injection produces executable HTM | anythingllm | Protected by Atomicorp rules | 333140 , 333141 , 340087 , 340095 , 340099 , 340147 , 340148 , 341099 , 341256 , 341266 , 342259 , 346755 , 350147 , 350148 |
| CVE-2026-35208 | lichess.org has an Unsanitized Stream Title Injection on /streamer | lila | Protected by Atomicorp rules | 333140 , 333141 , 340087 , 340095 , 340099 , 340147 , 340148 , 341099 , 341256 , 341266 , 342259 , 346755 |
| CVE-2025-34141 | ETQ Reliance - Reflected XSS via SQLConverterServlet | reliance | Protected by Atomicorp rules | 333141 , 340099 , 340147 , 341099 , 342259 , 347198 |
| CVE-2026-34246 | CtrlPanel: Stored XSS in Admin Role Management via Unescaped DataTable HTML Output | panel | Protected by Atomicorp rules | 333140 , 333141 , 340095 , 340147 , 340148 , 342259 , 346755 |
| CVE-2026-112949 | Vitest: Code injection via unauthenticated manual mock registration | vitest | Protected by Atomicorp rules | 340014 , 340023 , 340029 , 344360 , 344361 , 344363 , 344364 , 344366 , 344370 , 393655 |
| CVE-2026-59727 | Astro: Cross-site scripting via unescaped transition:* directive values on hydrated islands | astro | Protected by Atomicorp rules | 333140 , 333141 , 340095 , 340147 , 340148 , 341256 , 342259 , 346755 , 350147 , 350148 |
Associated Atomicorp WAF Rules
| Rule | Status | Behavior |
|---|---|---|
| 330791 | Active | disruptive (deny) |
| 333140 | Active | disruptive (deny) |
| 333141 | Active | disruptive (deny) |
| 340014 | Active | disruptive (deny) |
| 340016 | Active | disruptive (deny) |
| 340017 | Active | disruptive (deny) |
| 340023 | Active | disruptive (deny) |
| 340029 | Active | disruptive (deny) |
| 340087 | Active | disruptive (deny) |
| 340095 | Active | disruptive (deny) |
| 340099 | Active | disruptive (deny) |
| 340144 | Active | disruptive (deny) |
| 340145 | Active | disruptive (deny) |
| 340147 | Active | disruptive (deny) |
| 340148 | Active | disruptive (deny) |
| 340152 | Active | disruptive (deny) |
| 340156 | Active | disruptive (deny) |
| 340157 | Active | disruptive (deny) |
| 340247 | Active | disruptive (deny) |
| 340248 | Active | disruptive (deny) |
| 341099 | Active | disruptive (deny) |
| 341145 | Active | disruptive (deny) |
| 341245 | Active | disruptive (deny) |
| 341256 | Active | disruptive (deny) |
| 341266 | Active | disruptive (deny) |
| 342259 | Active | disruptive (deny) |
| 344360 | Active | disruptive (deny) |
| 344361 | Active | disruptive (deny) |
| 344363 | Active | disruptive (deny) |
| 344364 | Active | disruptive (deny) |
| 344366 | Active | disruptive (deny) |
| 344370 | Active | disruptive (deny) |
| 346755 | Active | disruptive (deny) |
| 347198 | Active | disruptive (deny) |
| 350147 | Active | disruptive (deny) |
| 350148 | Active | disruptive (deny) |
| 360147 | Active | disruptive (deny) |
| 360148 | Active | disruptive (deny) |
| 380026 | Active | disruptive (deny) |
| 380122 | Active | disruptive (deny) |
| 390572 | Active | disruptive (deny) |
| 390709 | Active | disruptive (deny) |
| 392301 | Active | disruptive (deny) |
| 393655 | Active | disruptive (deny) |
Related MITRE CAPEC Context
MITRE associates this CWE with the following attack-pattern entries. These taxonomy relationships are context, not Atomicorp coverage claims:
CAPEC-104 (opens in a new tab) , CAPEC-73 (opens in a new tab) , CAPEC-81 (opens in a new tab) , CAPEC-85 (opens in a new tab)