Ramsomware... esa odiosa moda

Publicado el 01 diciembre 2015 por Drassill
Las modas vienen y van. Las vulnerabilidades varían, los viruses mutan y los métodos de los criminales para obtener dinero... TAMBIÉN. Pantallazos azules, phising, estafas online... Los métodos para obtener dinero son cada vez más imaginativos, algunos con mayor éxito que otros dependiendo de la facilidad con la que se puede realizar el ataque, la efectividad, y el número de usuarios que puede abarcar... Desafortunadamente actualmente existe una amenaza que ha ido ganando mucha popularidad los últimos años, popularidad que parecer ir en aumento; hablo por supuesto del famoso ramsomware.
Si observamos bien, las últimas noticias relacionadas con el cybercrimen y los usuarios "de a pie" están relacionados con ramsomware dirigido a equipos de sobremesa y a smartphones; Pero qué significa este concepto? El ramsomware se basa en nada más y nada menos que en cifrar una serie de ficheros y carpetas; obviamente ese cifrado habría sido realizado por un atacante y siempre buscaría cifrar contenido de cierta relevancia; contenido que puede impedir el manejo normal del equipo o incluso contenido de carácter personal.

Generalmente el ramsomware es instalado en el sistema de una de estas dos maneras: Mediante la explotación de una vulnerabilidad del sistema (Como recientemente ha ocurrido con Magento, aunque ya se ha solucionado) o mediante la descarga de un archivo malicioso. Lo más común es que la infección se realice mediante este segundo método, pues los cybercriminales se aprovechan en gran parte de la confianza o el desconocimiento de los usuarios para que éstos se bajen aplicaciones fraudulentas; esto significa que en la mayoría de los casos, los usuarios que se piensan dos veces las cosas antes de descargarse una aplicación "curiosa" suelen estar más a salvo de estos ataques, si bien no impunes...
El motivo principal de que estos ataques se haya propagado tanto es que no requieren elevación de privilegios en el sistema; es decir que no requiere tener que indagar o buscar métodos para adquirir privilegios de root/administrador (dependiendo del sistema operativo en el que trabajemos) y eso evita MUCHOS problemas a los atacantes, pues "únicamente" requieren de un cifrado muy fuerte para poner en jaque en los usuarios.
El objetivo de este post no es enseñar cómo lograr este objetivo, ya que yo estoy totalmente en contra de este tipo de actividades delictivas, sino más bien advertir al lector de que el cifrar una carpeta "relevante" no es tan difícil como parece... Con lo que la mejor medida (que repito que no es infalible, pero que si que previene de más de la mitad de estos ataques) es el navegar por internet con cabeza y el no descargarse archivos desde fuentes no fiables, cosa que desgraciadamente ocurre especialmente en Android.
A modo de ejemplo, vamos a ver como un usuario normal en Linux, sin privilegios especiales ni ningún tipo de herramienta especial puede ponerse la zancadilla a sí mismo cifrando su propio directorio personal... Dicho usuario no requiere tener ninguna herramienta instalada, pues todos los recursos necesarios ya los tiene el propio sistema operativo; recursos que por sí mismos y usados correctamente no hacen nada especialmente raro ni malintencionado, pero que pueden convertirse en herramientas de doble filo, tal y como veréis a continuación; únicamente se requieren de dos herramientas: tar y gpg. Tar es un simple compresor que es usado habitualmente para tratar con cualquier archivo comprimido, mientras que gpg es una herramienta usada para cifrar y descifrar archivos. Ahora veremos cómo con muy pocas líneas podemos hacer que este usuario se moleste a sí mismo; el daño que se haría no sería "fatal", pero sí que sería muy molesto.
Para ello comenzaríamos comprimiendo todos los archivos de la carpeta home y guardándolos en la carpeta /tmp; el formato del archivo comprimido sería tar.gz, y el comando sería algo como esto:
tar-cvzf/tmp/${USER}.tar.gz /home/${USER}
Simplemente hemos comprimido toda la carpeta personal del usuario y la hemos guardado en el directorio /tmp; el proceso de compresión deja el contenido original intacto, con lo que de momento no se ha hecho nada excepcional, ni dañino ¿No es así?
Ahora usaríamos la herramienta de cifrado gpg; herramienta que está instalada por defecto en los sistemas Linux y que puede valernos como perfectamente para hacer una prueba de concepto. Gpg ofrece dos tipos de cifrado; el simétrico que usa la misma clave para cifrar y descifrar y el asimétrico, que requiere de dos claves una pública y una privada... El método asímetrico es el más seguro de los dos, pero para una prueba de concepto como ésta no nos es necesario, con lo que haremos un cifrado sencillo... Para cifrar el archivo comprimido usaríamos el comando:
gpg --symmetric${USER}.tar.gz
El fichero estaría comprimido y cifrado, con lo que únicamente habría que eliminar todos los archivos originales no cifrados; esto quiere decir que habría que eliminar el contenido de la carpeta home del usuario y también el archivo que recién hemos comprimido. Obviamente, también habría que mover el archivo cifrado a la carpeta home del usuario para dejar todo debidamente en su sitio y evitar que el fichero cifrado se borre accidentalmente; recordemos que el contenido de la carpeta /tmp se elimina automáticamente al reiniciar el equipo.
  1. rm -rf /home/${USER}
  2. rm /tmp/${USER}.tar.gz
  3. mv /tmp/${USER}.tar.gz.gpg /home/${USER}

Al ser todo propiedad del usuario, éste no tiene impedimentos para hacer ninguna de estas tareas. Sin restricciones, sin barreras... El usuario ha sido capaz de cifrar su propia carpeta con herramientas básicas que no tienen otro objetivo que hacer el bien, pero que debido a intenciones malignas han hecho que el usuario no pueda acceder al contenido de su carpeta home... Fotos, vídeos, documentos... Todo ha quedado cifrado... ¿Se ha usado algún comando mágico? ¿Ha requerido un programa elaborado o la explotación de alguna vulnerabilidad? No. Cierto es que el caso expuesto es irreal y que jamás nos encontraremos con un archivo con este tipo de cifrado; además de que en este caso no se ha hecho intrusión alguna sino que simplemente se ha escrito una serie de comandos normales loggeados como el usuario, pero a nivel conceptual es interesante conocerlo, pues nos da una idea aproximada de lo que nos hacen a nuestro equipo al mismo tiempo de que nos hacen ver que no se necesitan privilegios especiales para hacer daño al usuario (aunque obviamente si se adquiriesen dichos privilegios el daño que se podría hacer sería mucho mayor).
¿La solución para prevenir este tipo de eventos? Aparte de no ejecutar programas de fuentes poco fiables, es importante mantener el sistema actualizado y contar con algún antivirus; esto nunca es infalible, pero eso no significa que tengamos que ponerles las cosas fáciles a los malos...
¿Qué hacer si hemos sido victimas de este ataque?

Lamentablemente, si hemos caído presos del ramsomware lo habitual es que el delincuente pida un "rescate" para recuperar nuestros ficheros... En estos casos NUNCA hay que pagar a estos malechores, pues no solo carecemos de garantías de que vayamos a recuperar la información, sino que además el pagar a estos tipos promueve la continuación de este tipo de actividades... El cifrado es muy seguro y muy difícil de romper, con lo que lo mejor en estos casos es cortar por lo sano: Restaurar el sistema mediante con la copia de seguridad más reciente, o (en caso de carecer de ésta) formatear el equipo aún cuando la perdida resulte dolorosa, pues con cosas como éstas es mejor no correr riesgos.
Espero que os haya resultado instructivo.
Saludos.