GitHub ha anunciado la inclusión de la autenticación de dos factores obligatoria en los repositorios de NPM para 100 paquetes de NPM que están incluidos como dependencias en la mayor cantidad de paquetes. Los mantenedores de estos paquetes ahora podrán realizar operaciones que requieren autenticación con el repositorio solo después de habilitar la autenticación de dos factores, que requiere la confirmación de entrada mediante contraseñas de un solo uso (TOTP), generadas por aplicaciones como Authy, Google Authenticator y FreeOTP. En un futuro cercano, además de TOTP, se planea añadir la posibilidad de usar claves de hardware y escáneres biométricos que soportan el protocolo WebAuth.
El 1 de marzo se programará la transición de todas las cuentas de NPM para las cuales no se ha habilitado la autenticación de dos factores hacia el uso de la verificación ampliada de cuentas, que requiere ingresar un código único enviado al correo electrónico al intentar iniciar sesión en el sitio npmjs.com o realizar una operación que requiera autenticación en la herramienta npm. Al habilitar la autenticación de dos factores, la verificación ampliada por correo electrónico no se aplica. El 16 y el 13 de febrero se llevará a cabo un lanzamiento temporal de prueba de la verificación ampliada para todas las cuentas.
Cabe recordar que, según un estudio realizado en 2020, solo el 9.27% de los mantenedores de paquetes utilizaban la autenticación de dos factores para proteger el acceso, mientras que en el 13.37% de los casos al registrar nuevas cuentas, los desarrolladores intentaban reutilizar contraseñas comprometidas que figuraban en filtraciones de contraseñas conocidas. En la revisión de la fortaleza de las contraseñas utilizadas, se logró acceder al 12% de las cuentas en NPM (13% de los paquetes) debido al uso de contraseñas predecibles y triviales, como '123456'. Entre los problemas se encontraban 4 cuentas de usuarios de los 20 paquetes más populares, 13 cuentas cuyas paquetes se descargaban más de 50 millones de veces al mes, 40 con más de 10 millones de descargas al mes y 282 con más de 1 millón de descargas al mes. Considerando la carga de módulos a través de cadenas de dependencias, la compromisión de cuentas poco fiables podría haber afectado hasta el 52% de todos los módulos en NPM.
Fuente: opennet.ru
