Seguridad

Github reporta 7 vulnerabilidades de ejecución de código en paquetes de Node.js

Durante los pasados meses de julio y agosto, el equipo de seguridad de Github recibió varios reportes de seguridad, todos relacionados con los programas de Bug Bounty de dicha plataforma. Dichos reportes contenían vulnerabilidades detectadas en los paquetes de Node.js, ‘tar‘ y ‘@npmcli/arborist‘.

Fuente: Github Blog (github.blog)

Durante la evaluación de las vulnerabilidades reportadas, el equipo de seguridad de pudo detectar otras vulnerabilidades no reportadas por ningún investigador previamente.

Todas las vulnerabilidades detectadas, tanto por los investigadores como por el equipo de seguridad de la empresa, permiten la ejecución de código, algunas de ellas a través de la escritura de ficheros fuera de las restricciones impuestas por npm CLI. Dicha restricción impide escribir fuera del directorio de instalación ‘node_modules‘, la cual puede ser evitada al utilizar ficheros de entrada especialmente manipulados.

Durante el reporte de las vulnerabilidades, se asignaron los siguientes códigos CVE:

  • CVE-2021-32803/37701/37712: el paquete ‘tar‘ permite la escritura arbitraria de ficheros a través de una protección insuficiente en los enlaces simbólicos.
  • CVE-2021-32804/37713: el paquete ‘tar‘ permite la escritura arbitraria de ficheros a través de un deficiente saneamiento de las rutas de escritura.
  • CVE-2021-39134/39135: el paquete ‘@npmcli/arborist‘ permite la escritura arbitraria de ficheros a través de una protección insuficiente en los enlaces simbólicos.

Todas las vulnerabilidades reportadas han sido asignadas con una puntuación de 8.2 en la métrica CVSSv3, afectando a la confidencialidad e integridad de la información del sistema vulnerable.

El mayor problema radica en que, el paquete ‘tar‘ es una dependencia de miles de otros proyectos, la cual es descargada decenas de millones de veces semanalmente. Desde el equipo de seguridad de la compañía, recomiendan actualizar la versión de npm CLI a las versiones 6.14.15, 7.21.0 o alguna posterior. Del mismo modo, si posees algún proyecto desarrollado para Node.js, con dependencias de la librería ‘tar, recomiendan emplear las versiones 4.4.19, 5.0.11, 6.1.10, o alguna más actual.

Más información:

BleepingComputer.com – GitHub finds 7 code execution vulnerabilities in ‘tar’ and npm CLI:
https://www.bleepingcomputer.com/news/security/github-finds-7-code-execution-vulnerabilities-in-tar-and-npm-cli/

Github Blog – Github Security Update: Vulnerabilities in tar and @npmcli/arborist
https://github.blog/2021-09-08-github-security-update-vulnerabilities-tar-npmcli-arborist/

ZDNet.com – GitHub tackles severe vulnerabilities in Node.js packages:
https://www.zdnet.com/article/github-tackles-seven-vulnerabilities-in-node-js-packages/

La entrada Github reporta 7 vulnerabilidades de ejecución de código en paquetes de Node.js se publicó primero en Una al Día.

Powered by WPeMatico

Gustavo Genez

Informático de corazón y apasionado por la tecnología. La misión de este blog es llegar a los usuarios y profesionales con información y trucos acerca de la Seguridad Informática.