Skip to main content

Agora Project EUVDEUVD-2026-100476

| CVE-2026-63168 MEDIUM
Cross-site Scripting (XSS) (CWE-79)
2026-10-13 disclosure@vulncheck.com GHSA-rfhc-h8r6-5jmp
5.1
CVSS 4.0 · Vendor: vulncheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as low-privilege user
  2. Delivery
    Submit nested POST array to LDAP/person import
  3. Exploit
    Bypass paramsFilter() non-recursive filter
  4. Execution
    Persist unsanitized script in profile
  5. Impact
    Victim views profile and executes script

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

The attacker must hold an authenticated account with access to the LDAP/person import feature of Agora Project and must submit the payload specifically as a two-dimensional (nested) POST array, because the flaw is that paramsFilter() does not recurse into nested arrays - a flat parameter would be sanitized. Exploitation is further limited by requiring a second user to subsequently view the poisoned user profile for the script to execute (passive user interaction), and it affects only deployments running a version before 26.10.0. There is no server-side code execution or data impact; impact is confined to the victim's browser context.

Impact

This is a moderate, not a priority-one, issue. The vendor-supplied CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:P) and the resulting 5.1 base score are internally consistent with the description: a network-reachable but authenticated (PR:L) stored XSS that requires a victim to passively view (UI:P) a poisoned profile. The vector correctly sets vulnerable-system impact to none (VC:N/VI:N/VA:N) and places the only impact on the subsequent system - the victim's browser session - at SC:L/SI:L, which matches a reflected-into-browser script with no direct server compromise. No KEV listing and no public proof-of-concept were provided, so exploitation status is 'no public exploit identified at time of analysis'; EPSS was not supplied. There are no conflicting signals here - all sources agree this is a credentialed, interaction-dependent XSS against a niche collaboration product. The main caveat is that real-world risk depends on how many low-privileged accounts can reach the LDAP/person import flow, which the data does not quantify.

Exploit ScenarioDerived

An authenticated low-privilege user abuses the LDAP/person import flow to submit a malicious value inside a two-dimensional (nested) POST array, which slips past the paramsFilter() sanitizer because that filter does not recurse into nested arrays. The unneutralized markup is stored in a user profile; when another user (including an administrator) later views that profile, the injected script executes in their browser. No public exploit code was identified, and the attack requires the victim to view the affected page.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 14, 2026

Stored cross-site scripting in Omnispace Agora Project before 26.10.0 allows an authenticated user who can reach the LDAP/person import feature to persist unsanitized markup into a user profile, which then executes in the browser of any other user who views that profile. The bypass works because the paramsFilter() request-parameter sanitizer handles only flat parameters and does not recurse into two-dimensional (nested) POST arrays, so a payload submitted in that shape survives filtering and is stored verbatim; a flat parameter with the same content would have been neutralized. Exploitation requires an authenticated account with import access plus a second user viewing the poisoned profile (passive user interaction, CVSS 3.1 PR:L/UI:R, scope changed), impact is confined to the victim's browser context with no server-side code execution or data loss, and no public exploit code has been identified at time of analysis.

RemediationAI

Vendor-released patch: upgrade to Agora Project 26.10.0, which is the first version in which the paramsFilter() nested-array bypass is addressed; the fix is published at https://github.com/xech/agora-project/releases/tag/26.10 and the corresponding advisory is https://www.vulncheck.com/advisories/omnispace-agora-project-stored-xss-via-nested-post-array-bypass. Where an immediate upgrade is not possible, the most effective compensating control is to remove the attack surface: restrict or temporarily disable the LDAP/person import feature and limit it to a minimal set of trusted administrator accounts, accepting that this blocks a legitimate bulk-provisioning workflow but eliminates the injection vector entirely. As a shorter-term layer, reject or flatten multi-dimensional POST arrays at the reverse proxy or WAF (blocking requests whose parameters are nested arrays rather than scalars) and apply server-side validation that force-casts or rejects non-scalar values on profile fields; these controls are signature-based and can be evaded by parameter-name or encoding variation, so they should be considered a stopgap only. Deploying a restrictive Content-Security-Policy that disallows inline script reduces the probability that any surviving stored markup executes, at the cost of requiring testing against Agora's own front-end assets, and auditing/cleaning existing user profile records for injected markup is advisable since patched code does not remove already-persisted payloads.

Affected VersionsENISA

Agora Project 0 <26.10.0

Affected Packages

euvd agora_project fix: 26.10.0

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

The flaw is a classic stored (persistent) cross-site scripting issue, CWE-79, rooted in incomplete input neutralization rather than in an encoding or output-context error alone. Agora Project's paramsFilter() routine is intended to sanitize inbound request parameters, but its recursion logic stops at the top level: it iterates the request array's first dimension and does not walk into nested structures. The LDAP/person import flow accepts and processes two-dimensional POST arrays, so an attacker can place payload markup in the inner array, where paramsFilter() never inspects it. The unfiltered value is written into a user profile record and rendered later without appropriate output encoding to other users, which is what elevates a self-only injection into a cross-user attack. The assessed CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N) confirms the network-reachable, low-privilege prerequisite and the changed scope that results from script executing in the security context of other users' sessions, while capping confidentiality and integrity impact at Low and availability at None - consistent with browser-context compromise rather than backend takeover. The upstream release 26.10.0 (tagged 26.10 on GitHub) is the version boundary at which the sanitizer behavior is corrected.

Know when the next one hits your stack

  • 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

Vendor (vulncheck) PRIMARY 5.1 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
vuln.today AI 5.4 MEDIUM

Authenticated submission sets PR:L; victim must view the profile so UI:R; script executing in another user's browser crosses a security boundary giving S:C with C:L/I:L and no availability impact.

3.1 AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N

Primary rating from Vendor (vulncheck).

CVSS VectorVendor: vulncheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
Passive
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
Low
Subsequent system: Integrity
Low
Subsequent system: Availability
None

Lifecycle Timeline

1
Patch available
Oct 13, 2026 - 21:20 EUVD

DescriptionCVE.org

Omnispace Agora Project before 26.10.0 contains a stored cross-site scripting vulnerability that allows authenticated attackers to persist unneutralized markup by submitting malicious values as two-dimensional POST arrays through the LDAP/person import flow, bypassing the paramsFilter() request parameter filter which failed to recurse into nested arrays. Attackers can inject arbitrary script code into a user profile that is later rendered to other users, resulting in execution of malicious scripts in victims' browsers.

Threat Intelligence Overview

EPSS Score
0.3%
Top 81% exploitable
Prevalence
Low
niche open-source collaborative workspace, limited enterprise footprint
Data Quality
6 sources
Confidence: High

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy