npm 12 deshabilita la instalación de scripts de forma predeterminada para reducir el riesgo de la cadena de suministro – CYBERDEFENSA.MX

GitHub tiene oficialmente anunciado el lanzamiento de npm versión 12 con los scripts de instalación deshabilitados de forma predeterminada, junto con los tokens de acceso granular (GAT) en desuso diseñados para evitar 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 antes se han habilitado:

  • El valor predeterminado de enableScripts está desactivado, lo que significa que los scripts del ciclo de vida de la dependencia (es decir, preinstalación, instalación, postinstalación) y las compilaciones implícitas de node-gyp ya no se ejecutan a menos que se permitan explícitamente.
  • –allow-git tiene el valor predeterminado none, lo que significa que –allow-git tiene el valor predeterminado none: las dependencias de Git (directas o transitivas) ya no se resuelven a menos que se permitan explícitamente.
  • –allow-remote tiene el valor predeterminado none, lo que significa que las dependencias de URL remotas (por ejemplo, archivos tar https) ya no se resuelven a menos que se permitan explícitamente.

Para revisar y aprobar scripts confiables, ahora los usuarios deben ejecutar: «npm aprobar-scripts –allow-scripts-pending» y luego confirmar la lista de permitidos resultante en el archivo «package.json».

Ciberseguridad

Vale la pena señalar que estos cambios se obtuvieron una vista previa el mes pasado, y GitHub recomendó a los desarrolladores actualizar a npm 11.16.0 o más reciente, ejecutar el comando de instalación normal y revisar las advertencias mostradas.

La última versión de npm también introduce dos nuevos cambios:

  • Los GAT de npm configurados para omitir 2FA ya no podrán realizar acciones confidenciales de administración de cuentas, paquetes y organizaciones. Esto incluye crear o eliminar tokens, generar códigos de recuperación y cambiar la contraseña de la cuenta npm, el correo electrónico, el perfil o la configuración 2FA, cambiar el acceso a los paquetes, los mantenedores o la configuración de publicación confiable, y administrar la membresía de la organización y el equipo, así como sus concesiones 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 realizar una publicación, donde un paquete solo se vuelve público después de la aprobación humana de 2FA.

Se espera que el primero de los dos cambios entre en vigor a principios de agosto de 2026. Mientras tanto, se recomienda dejar de usar tokens de derivación de 2FA para las operaciones antes mencionadas y realizarlas de forma interactiva con 2FA. El segundo cambio está previsto para enero de 2027.

«Para prepararse, planee trasladar la publicación automatizada a una publicación confiable (OIDC) o una publicación por etapas con un paso de aprobación humana, en lugar de un token de publicación de larga duración», dijo GitHub.

Ciberseguridad

El desarrollo llega como pnpm 11.10. presenta una nueva configuración «_auth» para configurar la autenticación del registro como un valor único estructurado con clave 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», Socket explicado.

«Eso significa que un pnpm-workspace.yaml o .npmrc malicioso o comprometido dentro de un repositorio no puede apuntar un token válido a un host diferente. Un archivo de proyecto manipulado es una forma común en que los atacantes consiguen un punto de apoyo, y redirigir un token de registro es una ruta directa para robarlo, por lo que cerrar esa ruta elimina la exposición».

GitHub deshabilitará los scripts de instalación de npm de forma predeterminada para detener los ataques a la cadena de suministro

GitHub tiene anunciado lo que dijo son «cambios importantes» que llegarán a la versión 12 de npm, uno de los cuales desactiva los scripts de instalación de forma predeterminada para combatir las amenazas a la cadena de suministro de software.

Los cambios tienen como objetivo combatir las técnicas de ataque que abusan del comando «npm install» para desencadenar la ejecución de código malicioso utilizando ganchos del ciclo de vida de npm. «Npm install» se utiliza para descargar e instalar todas las dependencias necesarias para un proyecto Node.js. La versión 12 está prevista para su lanzamiento el próximo mes.

Al describir los scripts del ciclo de vida en el momento de la instalación como la «superficie de ejecución de código más grande en el ecosistema npm», GitHub dicho el comando «npm install» ejecuta scripts de cada dependencia transitiva, como resultado de lo cual un único paquete comprometido en cualquier parte del árbol de dependencias puede ejecutar código arbitrario en una máquina de desarrollo o en un ejecutor de CI.

Ciberseguridad

Al bloquear tales comportamientos, la idea es requerir la aprobación explícita del usuario antes de que la ejecución del código se inicie automáticamente durante la «instalación npm», en lugar de ser confiable de forma predeterminada. «Hacer la opción de ejecución de script cierra ese camino y lo mantiene a un comando de distancia para los paquetes en los que confía», dijo GitHub.

Los cambios se enumeran a continuación:

  • npm install ya no ejecutará scripts de preinstalación, instalación o postinstalación desde dependencias a menos que estén permitidos explícitamente en el proyecto.
  • npm install ya no resolverá las dependencias de Git, ya sean directas o transitivas, a menos que se permita explícitamente a través de –allow-git.
  • npm install ya no resolverá dependencias de URL remotas, como archivos tar https, a menos que se permita explícitamente a través de –allow-remote.

«Esto incluye compilaciones nativas de node-gyp (es decir, un paquete con un enlace.gyp y sin un script de instalación explícito aún se bloquea, porque npm ejecuta una reconstrucción implícita de node-gyp)», dijo la subsidiaria propiedad de Microsoft sobre los cambios en el comportamiento predeterminado de «allowScripts». «Preparar scripts desde git, las dependencias de archivos y enlaces se bloquean de la misma manera».

Al establecer «–allow-git» en «none» de forma predeterminada, la configuración cierra una ruta de ejecución de código donde el archivo de configuración .npmrc de una dependencia de Git utilizado podría anular el ejecutable de Git, incluso con –ignorar-scriptsuna marca que evita que los paquetes especificados en un archivo package.json ejecuten automáticamente scripts de ciclo de vida integrados durante el proceso de instalación.

Ciberseguridad

GitHub recomienda que los desarrolladores se preparen para estos cambios actualizando a npm 11.16.0 o posterior, ejecutando la instalación normal y revisando las advertencias mostradas.

«Utilice npm aprobar-scripts –allow-scripts-pending para ver qué paquetes tienen scripts, aprobar aquellos en los que confía y confirmar el paquete.json actualizado», agregó. «Después de eso, sólo los scripts que usted aprobó seguirán ejecutándose una vez que actualice. Todo lo que deje sin aprobar se detendrá».

A principios de este año, npm también introdujo «min-release-age», una configuración que le dice a npm que rechace cualquier versión de paquete publicada menos de un número específico de días como protección contra paquetes maliciosos recientemente publicados.

iOS 26.5 ofrece mensajería RCS cifrada de extremo a extremo predeterminada entre iPhone y Android – CYBERDEFENSA.MX

Apple lanzó oficialmente el lunes iOS 26.5 con soporte para cifrado de extremo a extremo (E2EE) para Rich Communication Services (RCS) en versión beta como parte de un «esfuerzo intersectorial» para reemplazar los SMS tradicionales con una alternativa más segura.

Con ese fin, la mensajería E2EE RCS se está implementando para los usuarios de iPhone que ejecutan iOS 26.5 con transportistas soportados y usuarios de Android en la última versión de Google Messages. La función está habilitada de forma predeterminada para conversaciones nuevas y existentes en ambas plataformas.

RCS es un protocolo de mensajería moderno basado en Internet que permite a los usuarios de Android y iPhone enviar fotos y videos de alta resolución, ver indicadores de escritura y recibir recibos de lectura, características que normalmente están presentes en las aplicaciones de mensajería instantánea. Se basa en una especificación industrial llamada Perfil universal RCS.

Ciberseguridad

«Cuando los mensajes RCS están cifrados de extremo a extremo, no se pueden leer mientras se envían entre dispositivos», Apple dicho en un comunicado. «Los usuarios sabrán que una conversación está cifrada de extremo a extremo cuando vean un nuevo icono de candado en sus chats RCS».

Apple comenzó a probar con E2EE en mensajes RCS en iOS y iPadOS 26.4 Beta, limitándolo inicialmente solo a conversaciones entre dispositivos Apple. A principios de 2025, la Asociación GSM (GSMA) anunció el soporte de E2EE para salvaguardar los mensajes enviados a través del protocolo RCS.

En una declaración similar, Google dicho Los usuarios de Google Messages para Android verán un icono de candado para indicar que la conversación multiplataforma está cifrada de un extremo a otro.

«Este bienvenido progreso es el resultado de una estrecha colaboración entre industrias entre el Grupo de Trabajo RCS de GSMA, incluidos Apple, Google y el ecosistema móvil en general», dijo Alex Sinclair, director de tecnología de GSMA. dicho. «Es crucial que los nuevos servicios seguros se proporcionen sobre una base abierta y reconocida mundialmente».

Las últimas actualizaciones también vienen con correcciones para más de 50 vulnerabilidades en iOS y iPadOS, incluidas varias fallas en AppleJPEG, ImageIO, Kernel, mDNSResponder y WebKit que podrían explotarse para filtrar información confidencial, una denegación de servicio (DoS) o provocar una terminación inesperada del sistema.