Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessControl ActivityPub-capable server or endpoint
-
DeliveryCraft Create/Note activity with malicious tag.icon.url or tag.name payload
-
ExploitDeliver signed activity to NodeBB federation inbox
-
ExecutionNodeBB renderEmoji stores unsanitized HTML in post content
-
PersistVictim user views affected post
-
ImpactInjected JavaScript executes in victim browser
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires that the target NodeBB instance has ActivityPub/Fediverse federation enabled and its inbox endpoint is reachable by external HTTP clients. No authentication on the NodeBB instance is required by the attacker - only control of an ActivityPub-capable endpoint to deliver the crafted Create/Note activity. Victim users must view a post or thread containing the malicious emoji tag content to trigger JavaScript execution in their browsers, consistent with UI:P in the CVSS 4.0 vector. Exploitation is NOT possible on NodeBB instances where ActivityPub federation is disabled. Instances that are firewalled from inbound external ActivityPub traffic or that run without federation configuration are not affected. |
| Impact | The CVSS 4.0 score of 5.3 (Medium) is appropriate for the vulnerability class: the attack is network-accessible with no authentication or special preparation (AV:N/AC:L/AT:N/PR:N), but requires a passive victim to view the poisoned post (UI:P) and impacts are bounded to subsequent-system scope (SC:L/SI:L/SA:N), meaning the NodeBB server itself is not directly compromised (VC:N/VI:N/VA:N). A key risk amplifier is the stored nature of the payload - a single malicious ActivityPub delivery poisons every future viewer of the affected thread, multiplying impact proportionally with forum traffic. No EPSS score was provided in the input data; this represents a gap in probabilistic exploitation assessment. The CVE is not listed in CISA KEV, and no POC code was identified, indicating no confirmed widespread active exploitation at time of analysis. Real-world risk is gated on whether ActivityPub federation is enabled, which may not be the default in all deployments; operators who have never activated Fediverse integration are not exposed. High-traffic forums with open federation face meaningfully higher aggregate risk than the moderate base score implies, and patching should be treated as urgent in those environments. |
| Exploit ScenarioDerived | An attacker controlling any ActivityPub-compatible server - or capable of crafting raw signed HTTP ActivityPub requests - sends a Create/Note activity to the target NodeBB instance's federation inbox, embedding a malicious payload in the tag.icon.url or tag.name field of a custom emoji object. NodeBB stores the unescaped content and renders it for every subsequent user who views the affected thread, executing the attacker's JavaScript in their browsers and potentially enabling session token theft, credential phishing overlays, or lateral propagation to other forum users. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 13, 2026
Stored cross-site scripting in NodeBB before 4.15.0 allows any federated ActivityPub actor to inject persistent malicious JavaScript into forum posts viewed by all subsequent users. The renderEmoji function fails to HTML-encode tag.icon.url and tag.name values sourced from incoming ActivityPub Create/Note objects before writing them into stored post content, creating a durable XSS sink reachable from the open Fediverse. A vendor-released patch exists in NodeBB v4.15.0 (2026-08-12); no public exploit code or CISA KEV listing has been identified at time of analysis.
RemediationAI
The primary fix is upgrading to NodeBB v4.15.0 or later, released 2026-08-12, which adds emoji icon URL validation before rendering via commit c0d94a217edcafcdb9b3920a6e80935194bcb19e. The release is available at https://github.com/NodeBB/NodeBB/releases/tag/v4.15.0. If an immediate upgrade is not feasible, administrators who do not require Fediverse interoperability can disable the ActivityPub feature in NodeBB's admin settings, which removes the vulnerable ingest path entirely with no impact on local forum functionality. Restricting inbound federation to a whitelist of trusted ActivityPub instances reduces attack surface but requires ongoing maintenance and may disrupt legitimate federated interactions with previously trusted actors. Network-layer blocking of ActivityPub inbox delivery is not generally practical given the protocol's distributed design.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
NodeBB is an open-source Node.js forum platform with native ActivityPub federation support, enabling interoperability with Mastodon, Pleroma, and other Fediverse software. The vulnerable code path is in the renderEmoji function, which processes custom emoji tag objects embedded in incoming ActivityPub Create/Note activities - the standard Fediverse mechanism for federated post creation. These tag objects carry icon.url (emoji image URL) and name (emoji shortcode) attributes. Before v4.15.0, neither attribute was sanitized or HTML-encoded prior to being written into stored post content and subsequently rendered in users' browsers. CWE-79 (Improper Neutralization of Input During Web Page Generation) is the root cause class - specifically the stored variant, where attacker-controlled input is persisted server-side and replayed to multiple victims. The fix commit c0d94a21 adds emoji icon URL validation before rendering, as confirmed in the v4.15.0 release notes. CPE cpe:2.3:a:nodebb:nodebb:*:*:*:*:*:*:*:* covers all NodeBB versions prior to 4.15.0.
Know when Nodebb gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
Network-delivered stored XSS with no auth required; scope changes to victims' browsers enabling JS execution; no server-side availability impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
NodeBB before 4.15.0 contains a stored cross-site scripting vulnerability in the renderEmoji function that fails to escape tag.icon.url and tag.name attributes. Attackers can deliver malicious ActivityPub Create/Note objects with crafted emoji tags to inject arbitrary HTML and JavaScript into stored post content, executing code in all viewers' browsers.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
A remote code execution (RCE) vulnerability in the xmlrpc.php endpoint of NodeBB Inc NodeBB forum software prior to v1.1
Author spoofing in NodeBB's ActivityPub federation allows a remote federated actor to forge posts and private messages a
NodeBB Forum Software is powered by Node.js and supports either Redis, MongoDB, or a PostgreSQL database. Rated high sev
Nodebb is an open source Node.js based forum software. Rated high severity (CVSS 7.5), this vulnerability is remotely ex
Nodebb is an open source Node.js based forum software. Rated medium severity (CVSS 6.1), this vulnerability is remotely
NodeBB before version 1.14.3 has a bug introduced in version 1.12.2 in the validation logic that makes it possible to ch
NodeBB is Node.js based forum software. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitable,
NodeBB is an open source Node.js based forum software. Rated critical severity (CVSS 9.8), this vulnerability is remotel
NodeBB Forum Software is powered by Node.js and supports either Redis, MongoDB, or a PostgreSQL database. Rated critical
A persistent cross-site scripting (XSS) vulnerability in NodeBB v3.11.0 allows remote attackers to store arbitrary code
Nodebb is an open source Node.js based forum software. Rated medium severity (CVSS 5.0), this vulnerability is remotely
A vulnerability, which was classified as problematic, was found in NodeBB up to 2.5.7. Rated medium severity (CVSS 4.3),
EUVD-2026-58226
GHSA-fh4m-97qj-ff6c
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB