GitHub ha anunciado oficialmente el lanzamiento de npm versión 12 con los scripts de instalación desactivados por defecto, junto con la eliminación de los tokens de acceso granular (GAT) diseñados para omitir la autenticación de dos factores (2FA).La subsidiaria propiedad de Microsoft señaló que los siguientes comportamientos de instalación de npm que solían ejecutarse automáticamente ahora requieren tu consentimiento previo:
* allowScripts está desactivado por defecto, lo que significa que los scripts del ciclo de vida de las dependencias (es decir, preinstall, install, postinstall) y las compilaciones implícitas de node-gyp ya no se ejecutarán a menos que lo permitas explícitamente.
* --allow-git está desactivado por defecto: las dependencias de Git (directas o transitivas) ya no se resolverán a menos que lo permitas explícitamente.
* --allow-remote está desactivado por defecto, lo que significa que las dependencias de URLs remotas (por ejemplo, tarballs de https) ya no se resolverán a menos que lo permitas explícitamente.
Para revisar y aprobar scripts de confianza, ahora debes ejecutar: "npm approve-scripts --allow-scripts-pending" y luego hacer el commit de la lista de permitidos resultante en el archivo "package.json".
Vale la pena notar que estos cambios se previsualizaron el mes pasado, y GitHub recomendó a los desarrolladores actualizar a npm 11.16.0 o posterior, ejecutar el comando de instalación normal y revisar las advertencias mostradas.
La última versión de npm también introduce dos cambios nuevos:
* Los GAT de npm configurados para omitir la 2FA ya no podrán realizar acciones sensibles de gestión de cuentas, paquetes y organizaciones. Esto incluye crear o eliminar tokens, generar códigos de recuperación y cambiar la contraseña, el correo electrónico, el perfil o la configuración de 2FA de la cuenta de npm, cambiar el acceso al paquete, los mantenedores o la configuración de publicación confiable, y gestionar la membresía de la organización y el equipo, así como sus permisos de paquetes.
* Los GAT de npm ya no conservarán la capacidad de publicar directamente. Su superficie de publicación se limitará a leer paquetes privados y programar una publicación, donde un paquete solo se vuelve público tras la aprobación humana de la 2FA.
Se espera que el primero de los dos cambios entre en vigor a principios de agosto de 2026. Mientras tanto, se te aconseja dejar de usar tokens de omisión de 2FA para las operaciones mencionadas y realizarlas de forma interactiva con 2FA. El segundo cambio está programado para enero de 2027.
"Para prepararte, planifica mover la publicación automatizada a la publicación confiable (OIDC) o a la publicación programada con un paso de aprobación humana, en lugar de un token de publicación de larga duración", afirmó GitHub.
Este desarrollo llega mientras pnpm 11.10 introduce un nuevo ajuste "_auth" para configurar la autenticación del registro como un único valor estructurado y basado en la URL.
"El beneficio de seguridad es que la credencial y el host al que pertenece viajan juntos, y pnpm lee _auth solo desde el entorno o la configuración global, nunca desde los archivos de un proyecto", explicó Socket en su blog.
"Eso significa que un archivo pnpm-workspace.yaml o .npmrc malicioso o comprometido dentro de un repositorio no puede dirigir un token válido a un host diferente. Un archivo de proyecto manipulado es una forma común en que los atacantes ganan acceso, y redirigir un token de registro es una ruta directa para robarlo, por lo que cerrar ese camino elimina la exposición".
Fuente:
THN

No hay comentarios:
Publicar un comentario