CVE-2023-23939
Azure/setup-kubectl: Escalation of privilege vulnerability for v3 and lower
En resumen
La Acción GitHub Azure/setup-kubectl (versiones anteriores a 3) configura el binario Kubectl con permisos de archivo demasiado permisivos (777), permitiendo que cualquier usuario en el mismo ejecutor lo reemplace con una versión maliciosa y obtenga privilegios elevados. Esto importa porque un atacante podría engañar al sistema para ejecutar comandos como root.
Detalle técnico
Vulnerabilidad CWE-732 donde fs.chmodSync(kubectlPath, 777) crea un binario escribible por cualquiera, permitiendo escalación de privilegio local en ejecutores GitHub Actions compartidos. La explotación requiere acceso local al entorno del ejecutor; el impacto es ejecución de comando arbitrario con privilegios del usuario kubectl (típicamente root). Se corrigió en v3+ usando permisos 775.
Resumen generado y traducido por IA a partir de la descripción oficial.
Azure/setup-kubectl is a GitHub Action for installing Kubectl. This vulnerability only impacts versions before version 3. An insecure temporary creation of a file allows other actors on the Actions runner to replace the Kubectl binary created by this action because it is world writable. This Kubectl tool installer runs `fs.chmodSync(kubectlPath, 777)` to set permissions on the Kubectl binary, however, this allows any local user to replace the Kubectl binary. This allows privilege escalation to the user that can also run kubectl, most likely root. This attack is only possible if an attacker somehow breached the GitHub actions runner or if a user is utilizing an Action that maliciously executes this attack. This has been fixed and released in all versions `v3` and later. 775 permissions are used instead. Users are advised to upgrade. There are no known workarounds for this issue.
CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:U/C:L/I:L/A:L