CVE-2026-10032
Full vulnerability record from the local CVENow database.
Description
The openUrl function in @a2ui/web_core passes an agent-controlled URL directly to window.open() without validating the URI scheme. A malicious agent can supply a javascript: URI as the url argument of a Button component's functionCall action. When the user clicks the rendered button, arbitrary JavaScript executes in the victim application's browser origin, constituting a stored/reflected XSS with Critical severity. No non-default configuration is required; the Basic Catalog is enabled by default.
Severity
MEDIUM
CVSS score
6.1
(v4.0)
Vulnerability status
Analyzed
Source identifier
Published
2026-08-04 16:16:20.983000
Last modified
2026-10-23 23:10:00.157000
View original CVE JSON
{
"id": "CVE-2026-10032",
"sourceIdentifier": "[email protected]",
"published": "2026-08-04T16:16:20.983",
"lastModified": "2026-10-23T23:10:00.157",
"vulnStatus": "Analyzed",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "The openUrl function in @a2ui/web_core passes an agent-controlled URL directly to window.open() without validating the URI scheme. A malicious agent can supply a javascript: URI as the url argument of a Button component's functionCall action. When the user clicks the rendered button, arbitrary JavaScript executes in the victim application's browser origin, constituting a stored/reflected XSS with Critical severity. No non-default configuration is required; the Basic Catalog is enabled by default."
},
{
"lang": "es",
"value": "La función openUrl en @a2ui/web_core pasa una URL controlada por un agente directamente a window.open() sin validar el esquema URI. Un agente malicioso puede proporcionar una URI javascript_disabled: como el argumento url de la acción functionCall de un componente Button. Cuando el usuario hace clic en el botón renderizado, se ejecuta JavaScript arbitrario en el origen del navegador de la aplicación víctima, lo que constituye un XSS almacenado/reflejado con una severidad Crítica. No se requiere ninguna configuración no predeterminada; el Catálogo Básico está habilitado por defecto."
}
],
"affected": [
{
"source": "[email protected]",
"affectedData": [
{
"vendor": "Google",
"product": "@a2ui/web_core",
"defaultStatus": "unaffected",
"versions": [
{
"version": "0.9.0",
"status": "affected"
},
{
"version": "0.9.1-alpha.0",
"status": "affected"
},
{
"version": "0.9.1-alpha.1",
"status": "affected"
},
{
"version": "0.9.1-alpha.2",
"status": "affected"
},
{
"version": "0.9.1-alpha.3",
"status": "affected"
},
{
"version": "0.9.1-alpha.4",
"status": "affected"
},
{
"version": "0.9.1-alpha.5",
"status": "affected"
},
{
"version": "0.9.1",
"status": "affected"
},
{
"version": "0.9.2",
"status": "affected"
},
{
"version": "0.10.0",
"status": "affected"
},
{
"version": "0.10.1",
"status": "affected"
}
]
}
]
}
],
"metrics": {
"cvssMetricV40": [
{
"source": "[email protected]",
"type": "Secondary",
"cvssData": {
"version": "4.0",
"vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:H/VA:L/SC:N/SI:N/SA:N/E:U/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X",
"baseScore": 6.1,
"baseSeverity": "MEDIUM",
"attackVector": "NETWORK",
"attackComplexity": "LOW",
"attackRequirements": "NONE",
"privilegesRequired": "LOW",
"userInteraction": "PASSIVE",
"vulnConfidentialityImpact": "HIGH",
"vulnIntegrityImpact": "HIGH",
"vulnAvailabilityImpact": "LOW",
"subConfidentialityImpact": "NONE",
"subIntegrityImpact": "NONE",
"subAvailabilityImpact": "NONE",
"exploitMaturity": "UNREPORTED",
"confidentialityRequirement": "NOT_DEFINED",
"integrityRequirement": "NOT_DEFINED",
"availabilityRequirement": "NOT_DEFINED",
"modifiedAttackVector": "NOT_DEFINED",
"modifiedAttackComplexity": "NOT_DEFINED",
"modifiedAttackRequirements": "NOT_DEFINED",
"modifiedPrivilegesRequired": "NOT_DEFINED",
"modifiedUserInteraction": "NOT_DEFINED",
"modifiedVulnConfidentialityImpact": "NOT_DEFINED",
"modifiedVulnIntegrityImpact": "NOT_DEFINED",
"modifiedVulnAvailabilityImpact": "NOT_DEFINED",
"modifiedSubConfidentialityImpact": "NOT_DEFINED",
"modifiedSubIntegrityImpact": "NOT_DEFINED",
"modifiedSubAvailabilityImpact": "NOT_DEFINED",
"Safety": "NOT_DEFINED",
"Automatable": "NOT_DEFINED",
"Recovery": "NOT_DEFINED",
"valueDensity": "NOT_DEFINED",
"vulnerabilityResponseEffort": "NOT_DEFINED",
"providerUrgency": "NOT_DEFINED"
}
}
],
"cvssMetricV31": [
{
"source": "[email protected]",
"type": "Primary",
"cvssData": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N",
"baseScore": 6.1,
"baseSeverity": "MEDIUM",
"attackVector": "NETWORK",
"attackComplexity": "LOW",
"privilegesRequired": "NONE",
"userInteraction": "REQUIRED",
"scope": "CHANGED",
"confidentialityImpact": "LOW",
"integrityImpact": "LOW",
"availabilityImpact": "NONE"
},
"exploitabilityScore": 2.8,
"impactScore": 2.7
}
],
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"timestamp": "2026-08-04T17:42:13.437105Z",
"id": "CVE-2026-10032",
"options": [
{
"exploitation": "none"
},
{
"automatable": "no"
},
{
"technicalImpact": "total"
}
],
"role": "CISA Coordinator",
"version": "2.0.3"
}
}
]
},
"weaknesses": [
{
"source": "[email protected]",
"type": "Secondary",
"description": [
{
"lang": "en",
"value": "CWE-79"
}
]
}
],
"configurations": [
{
"nodes": [
{
"operator": "OR",
"negate": false,
"cpeMatch": [
{
"vulnerable": true,
"criteria": "cpe:2.3:a:google:a2ui\\/web_core:*:*:*:*:*:node.js:*:*",
"versionStartIncluding": "0.9.0",
"versionEndExcluding": "0.10.2",
"matchCriteriaId": "352DFD87-AAE0-45C1-8DB8-A4523D84522E"
}
]
}
]
}
],
"references": [
{
"url": "https://github.com/a2ui-project/a2ui/security/advisories/GHSA-72qq-p3r5-f7wq",
"source": "[email protected]",
"tags": [
"Vendor Advisory"
]
}
]
}