CVE-2026-45090
Full vulnerability record from the local CVENow database.
Description
Dalfox is a powerful open-source XSS scanner and utility focused on automation. Prior to 2.13.0, ParameterAnalysis in pkg/scanning/parameterAnalysis.go runs two sequential worker stages that both write to the same results channel. The channel is correctly closed after the first stage completes (close(results) at line 438), but the second stage — which processes POST-body parameters (dp) — is then launched with the same already-closed channel as its output. When a scanned parameter is reflected, processParams executes results <- paramResult on the closed channel, triggering a Go runtime panic that crashes the entire dalfox process. In server mode, the crash is remotely triggerable by any unauthenticated caller who can reach the REST API, because the default configuration has no API key and the second stage activates whenever options.Data != "" (i.e., the attacker supplies the data field) and the target reflects at least one parameter. This vulnerability is fixed in 2.13.0.
View original CVE JSON
{
"id": "CVE-2026-45090",
"sourceIdentifier": "[email protected]",
"published": "2026-05-27T18:16:25.003",
"lastModified": "2026-10-26T11:10:00.157",
"vulnStatus": "Deferred",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "Dalfox is a powerful open-source XSS scanner and utility focused on automation. Prior to 2.13.0, ParameterAnalysis in pkg/scanning/parameterAnalysis.go runs two sequential worker stages that both write to the same results channel. The channel is correctly closed after the first stage completes (close(results) at line 438), but the second stage — which processes POST-body parameters (dp) — is then launched with the same already-closed channel as its output. When a scanned parameter is reflected, processParams executes results <- paramResult on the closed channel, triggering a Go runtime panic that crashes the entire dalfox process. In server mode, the crash is remotely triggerable by any unauthenticated caller who can reach the REST API, because the default configuration has no API key and the second stage activates whenever options.Data != \"\" (i.e., the attacker supplies the data field) and the target reflects at least one parameter. This vulnerability is fixed in 2.13.0."
},
{
"lang": "es",
"value": "Dalfox es un potente escáner de XSS de código abierto y una utilidad centrada en la automatización. Antes de la versión 2.13.0, ParameterAnalysis en pkg/scanning/parameterAnalysis.go ejecuta dos etapas de trabajador secuenciales que ambas escriben en el mismo canal de resultados. El canal se cierra correctamente después de que la primera etapa se completa (close(results) en la línea 438), pero la segunda etapa -que procesa los parámetros del cuerpo POST (dp)- se lanza entonces con el mismo canal ya cerrado como su salida. Cuando un parámetro escaneado se refleja, processParams ejecuta results <- paramResult en el canal cerrado, lo que desencadena un pánico en tiempo de ejecución de Go que bloquea todo el proceso de dalfox. En modo servidor, el bloqueo puede ser activado remotamente por cualquier llamador no autenticado que pueda alcanzar la API REST, porque la configuración predeterminada no tiene clave de API y la segunda etapa se activa siempre que options.Data != “” (es decir, el atacante suministra el campo de datos) y el objetivo refleja al menos un parámetro. Esta vulnerabilidad se corrige en la versión 2.13.0."
}
],
"affected": [
{
"source": "[email protected]",
"affectedData": [
{
"vendor": "hahwul",
"product": "dalfox",
"versions": [
{
"version": "< 2.13.0",
"status": "affected"
}
]
}
]
}
],
"metrics": {
"cvssMetricV31": [
{
"source": "[email protected]",
"type": "Secondary",
"cvssData": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
"baseScore": 7.5,
"baseSeverity": "HIGH",
"attackVector": "NETWORK",
"attackComplexity": "LOW",
"privilegesRequired": "NONE",
"userInteraction": "NONE",
"scope": "UNCHANGED",
"confidentialityImpact": "NONE",
"integrityImpact": "NONE",
"availabilityImpact": "HIGH"
},
"exploitabilityScore": 3.9,
"impactScore": 3.6
}
],
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"timestamp": "2026-05-28T15:10:33.002780Z",
"id": "CVE-2026-45090",
"options": [
{
"exploitation": "poc"
},
{
"automatable": "yes"
},
{
"technicalImpact": "partial"
}
],
"role": "CISA Coordinator",
"version": "2.0.3"
}
}
]
},
"weaknesses": [
{
"source": "[email protected]",
"type": "Secondary",
"description": [
{
"lang": "en",
"value": "CWE-362"
},
{
"lang": "en",
"value": "CWE-404"
}
]
}
],
"references": [
{
"url": "https://github.com/hahwul/dalfox/releases/tag/v2.13.0",
"source": "[email protected]"
},
{
"url": "https://github.com/hahwul/dalfox/security/advisories/GHSA-2g4x-fq3j-cgq4",
"source": "[email protected]"
},
{
"url": "https://github.com/hahwul/dalfox/security/advisories/GHSA-2g4x-fq3j-cgq4",
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0"
}
]
}