Ir al contenido principal

JavaScript, npm y seguridad

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?














  1. 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.
  2. Obtenga la última versión de NPM tan pronto como pueda. Afortunadamente, su sistema operativo probablemente se encargará de eso, no del propio NPM.
  3. No actualice los servidores de producción. Pruebe la última actualización en las pruebas primero.
  4. Recuerde que un software simple puede ser inmensamente complejo. Tenga esto en cuenta al hacer tiempo para las pruebas.

Comentarios

Entradas populares de este blog

¿Problemas con tus procesadores Intel?

¿Problemas con tus procesadores Intel? Cómo de seguro han escuchado en los ultimos meses se ha dado a conocer un problema bastante grande en el mundo de la computación relacionado con los procesadores de Intel. Esta noticia tomó a muchos por sorpresa, pues el error se concentra en un fall de diseño que le permite a cualquier aplicación entrar al " kernel space ", dando como resultado un agujero de seguridad bastante crítico. Pero para esto explicaremos mas a detalle esta noticia. ¿Qué es un sistema operativo? Un sistema operativo es aquel que actua como intermediario entre el usuario de la computadora y el hardware, buscando optimizar el uso del hardware, diseñado para ser eficiente. Un sistema operativo administra el uso del hardware y coordina su uso a través de las diferentes programas. Supervisa la ejecución de los programas para prevenir errores y administrar las operaciones de control de input/output. ¿Cómo funciona un sistema operativo? En esta imagen po...

Problemas de seguridad con Github

Github ha sido conocida mudialmente como una de las mejores herramientas para los programadores, realmente una herramienta hecha a la medida para poder subir tus trabajos y códigos y llevar un control de versiones increiblemente ordenada. Todos nos hemos sentidos seguros con github, ya que su uso consiste en un control de versiones que guarda cada avance de tu proyecto, y cada vez que hagas un "commit" se guardara tu avance y siempre podras regresar a esa version que "si funcionaba bien".  En lo perosnal soy un fanático de github y de su flexibilidad, ya que puedes ingresar cualquier tipo de lenguaje, además de llevar un control de progreso en gráficas que meustra que tanto has avanzado, además de contar con las herramientas para trabajar con colaboradores y que otros puedan mejorar tu proyecto o simplemente darte algunas sugerencias. Otra cosa que ahce de github una herramienta muy util es que es opensoruce, por lo cual todos pueden ver tu código a menos q...