Como habran escuchado en las ultimas semanas hubo un problema de seguridad con npm. Esto debido a que se anuncio que la ultima actualizacion de npm cambia los permisos criticos del sistema de archivos de Linux, lo cual provoca como consecuencia que todo el sistema operativo se pueda romper por completo. Segun las fuentes incluidas al final de este blog, al rededor de 2000 usuarios se vieron afectados por este error de seguridad al actualizar npm, con tansolo 4 horas de su nuevo lanzamiento. Muchos utilizaron la opción de usar "sudo" para instalar esta actualziación, y como todos lo usuarios de LInux sabemos, esta opción "sudo" le permite a la nueva versión tener permisos de administrador en la computadora, cambiando permisos en varios archivos.
Ahora uno se preguntaria, porque npm? porque alguien necesitaria actualizar npm? Bueno, para todos aquellos que utilizan JavaScript deben saber sobre node.js, que gracias a este JavaScript se ha unido a varios lenguajes populares del lado del servidor como PHP, Perl, Python, Java, etc, incluyendo nuevas herramientas que facilitan su uso para el programador. Y si alguna vez han instalado node.js deben saber que esto incluye npm para administrar los paquetes de node, clasificandolos por usted. La mala noticia es curiosamente lo mismo, que al adoptar node, viene incluido npm, junto con su nuevo problema de seguridad.
Se tiene entendido que no existe un gran problema siempre y cuando no se utilice "sudo" para actualizar, ya que esto almenos le da la seguridad de que no le dio ningún permiso de administrador a la actualización.
¿Qué hacer?
- Mantenga copias de seguridad que faciliten una reversión significativa. La NPM ha causado desastres de relaibilidad antes, y dada su naturaleza vagamente anárquica, los volverá a causar.
- Obtenga la última versión de NPM tan pronto como pueda. Afortunadamente, su sistema operativo probablemente se encargará de eso, no del propio NPM.
- No actualice los servidores de producción. Pruebe la última actualización en las pruebas primero.
- Recuerde que un software simple puede ser inmensamente complejo. Tenga esto en cuenta al hacer tiempo para las pruebas.
Comentarios
Publicar un comentario