CVE-2026-65954 Ejecución remota de código mediante eval() en AbstractArrayDeclarationSniff::getActualArrayKey() de PHPCSUtils
En PHPCSUtils, desde 1.0.0-alpha1 hasta 1.2.3, AbstractArrayDeclarationSniff::getActualArrayKey() evalúa con eval() expresiones de claves de array controladas por el atacante, lo que permite que claves en forma de callback en código PHP no confiable escaneado por un sniff extendido ejecute comandos arbitrarios en el host de escaneo. Rutas alcanzables conocidas incluyen Universal.Arrays.DuplicateArrayKey y Universal.Arrays.MixedArrayKeyTypes. Se corrige en la versión 1.2.3.
CVSS 3.1
- Probabilidad de explotación0,2 %
- Explotada activamenteNo confirmada
- Exploit públicoNo conocido
Afectados
PHPCSStandards PHPCSUtils
>= 1.0.0-alpha1, <= 1.2.2
Qué hacer
- Verificá si usás PHPCSUtils y en qué versión.
- Actualizá a la versión corregida que indique el fabricante en su aviso o aplicá su mitigación.
- Revisá registros y accesos de los sistemas expuestos para descartar un uso previo.
Calculadora CVSS
CVSS 3.1 · 8.6 ALTA
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H
- Vector de ataqueLocal
- Complejidad del ataqueBaja
- Privilegios requeridosNinguno
- Interacción del usuarioRequerida
- AlcanceCambiado
- ConfidencialidadAlta
- IntegridadAlta
- DisponibilidadAlta
Descripción original
PHPCSUtils is a suite of utility functions for use with PHP_CodeSniffer. From 1.0.0-alpha1 until 1.2.3, PHPCSUtils\AbstractSniffs\AbstractArrayDeclarationSniff::getActualArrayKey() evaluates attacker-controlled array-key expressions with eval(), allowing callback-form keys in untrusted PHP code scanned by an extending sniff to execute arbitrary commands on the scanning host. Known reachable paths include Universal.Arrays.DuplicateArrayKey and Universal.Arrays.MixedArrayKeyTypes. This issue is fixed in version 1.2.3.
Referencias (3)
Resumen traducido automáticamente de la descripción original. Fuente: Nureq Monitor. Cómo funciona.