Codigo malicioso dentro de una imagen

Iniciado por Balanegra, 8 Febrero 2017, 16:57 PM

0 Miembros y 1 Visitante están viendo este tema.

Balanegra

Tengo la sospecha que han intentado entrar en mi ordenador a traves de un codigo incrustrado en una image. Es la primera vez que me enfrento a estas cosas y quisiera saber:
¿Con que programa puedo ver el codigo de una imagen ?
¿Como puedo sacar el codigo incrustrado de la imagen?
¿Como puedo obtener un descompilador para esto?
¿Con que software actual puedo ver el codigo en hexadecimal  y su traducción al lado?, antes, en la prehstoria de la informatica usaba pctools 4.1 y podia modificar el codigo hex de las aplicaciones en DOS, creo que ha llovido mucho.

engel lex

no creo que haan podido incrustar un virus en una imagen porque las imagenes no son ejecutables, simplemente son archivos que se leen y se muestran

para ver el codigo, tendrías que saber bien la estructura interna del binario de la imaen y verlo con un editor hexadecimal...

a ese nivel no hay "descompilador" hay el lenguaje ensamblador y entender el opcode

que editor, no se, depende del OS
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

Borito30

#2
Cita de: engel lex en  8 Febrero 2017, 23:29 PM
no creo que haan podido incrustar un virus en una imagen porque las imagenes no son ejecutables, simplemente son archivos que se leen y se muestran

para ver el codigo, tendrías que saber bien la estructura interna del binario de la imaen y verlo con un editor hexadecimal...

a ese nivel no hay "descompilador" hay el lenguaje ensamblador y entender el opcode

que editor, no se, depende del OS
en los jpeg es posible :
http://thehackernews.com/2016/10/openjpeg-exploit-hack.html

Por medio de un exploit se puede embeber codigo malicioso pero suele ser errores puntuales no generalizado aunque es cierto que el formato jpeg es más inseguro que jpg.

Lo que si he visto muy a menudo que hay usuarios que pueden meter en hosting de imagenes un php y cuando tu ejecutas el php pensando que es una imagen es codiglo malicioso q estas ejcutando por lo que al final tendr el control de tu ordenador. o incluso si puedes incluir contenido javascript al dominio etc puede intentar tener algo de control por ejemplo sacando informacion o haciendo una peticion al usuario...

si la imagen jpg tiene metadatos  se puede incluir codigo malicioso tambien busca en google y veras.. pero el dilema es como ejecutaras los datos? desde el servidor pero el que se baje la imagen dudo que ejecuten esos datos.

Que me corrija alguien si me equivoco.
Estoy en contra del foro libre y la Sección de juegos y consolas (distraen al personal)

.:UND3R:.

#3
Cita de: Ragaza en  9 Febrero 2017, 15:07 PM
en los jpeg es posible :
http://thehackernews.com/2016/10/openjpeg-exploit-hack.html

Por medio de un exploit se puede embeber codigo malicioso pero suele ser errores puntuales no generalizado aunque es cierto que el formato jpeg es más inseguro que jpg.

Lo que si he visto muy a menudo que hay usuarios que pueden meter en hosting de imagenes un php y cuando tu ejecutas el php pensando que es una imagen es codiglo malicioso q estas ejcutando por lo que al final tendr el control de tu ordenador. o incluso si puedes incluir contenido javascript al dominio etc puede intentar tener algo de control por ejemplo sacando informacion o haciendo una peticion al usuario...

si la imagen jpg tiene metadatos  se puede incluir codigo malicioso tambien busca en google y veras.. pero el dilema es como ejecutaras los datos? desde el servidor pero el que se baje la imagen dudo que ejecuten esos datos.

Que me corrija alguien si me equivoco.

En base a lo que has posteado intentaré explicarte la descripción técnica del ataque más menos, en base a este link:

http://www.talosintelligence.com/reports/TALOS-2016-0193/

Existe un formato de lectura de imágenes llamado:

jpeg2000

Este formato es implementado en una librería llamada "OpenJpeg library",
el vector de ataque consiste en la ejecución de la imagen con tal formato, el cual es utilizado en varios lectores PDF (en varios lectores/reader de PDF utilizan la librería OpenJpeg, la cual reitero posee una estructura vulnerable).

Algunos de los lectores PDF afectados son:
- Poppler
- MuPDF
- Pdfium

¿En donde se encuentra el error?
En la función opj_j2k_read_mcc_record, la cual se encuentra en src/lib/openjp2/j2k.c .

l_mcc_record = l_tcp->m_mcc_records;

   for(i=0;i<l_tcp->m_nb_mcc_records;++i) {
           if (l_mcc_record->m_index == l_indix) {
                   break;
           }
           ++l_mcc_record;
   }


Debo marcharme pero es ahí donde se produce un error en el índice del registro record si es que este no se logra encontrar, logrando generar un desbordamiento del HEAP, el cual conlleva a la ejecución de código arbitrario (reverse shell, troyanos, etc.).

Saludos

EDIT: En resumen el "hackeo" no se produce puntualmente con la imagen, si no la estructura de la imagen, la cual es utilizada por una librería, la cual es utilizada en programas lectores de PDF.

Solicitudes de crack, keygen, serial solo a través de mensajes privados (PM)

integeroverflow

Cita de: Ragaza en  9 Febrero 2017, 15:07 PM
en los jpeg es posible :
http://thehackernews.com/2016/10/openjpeg-exploit-hack.html

Por medio de un exploit se puede embeber codigo malicioso pero suele ser errores puntuales no generalizado aunque es cierto que el formato jpeg es más inseguro que jpg.

Lo que si he visto muy a menudo que hay usuarios que pueden meter en hosting de imagenes un php y cuando tu ejecutas el php pensando que es una imagen es codiglo malicioso q estas ejcutando por lo que al final tendr el control de tu ordenador. o incluso si puedes incluir contenido javascript al dominio etc puede intentar tener algo de control por ejemplo sacando informacion o haciendo una peticion al usuario...

si la imagen jpg tiene metadatos  se puede incluir codigo malicioso tambien busca en google y veras.. pero el dilema es como ejecutaras los datos? desde el servidor pero el que se baje la imagen dudo que ejecuten esos datos.

Que me corrija alguien si me equivoco.

eso no tiene sentido, php se ejecuta del lado del servidor. en todo caso se obtendria acceso al servidor que aloja las imagenes, no a tu pc.


Borito30

#5
Cita de: integeroverflow en 24 Febrero 2017, 07:10 AM
eso no tiene sentido, php se ejecuta del lado del servidor. en todo caso se obtendria acceso al servidor que aloja las imagenes, no a tu pc.


Cita de: integeroverflow en 24 Febrero 2017, 07:10 AM
eso no tiene sentido, php se ejecuta del lado del servidor. en todo caso se obtendria acceso al servidor que aloja las imagenes, no a tu pc.


si solo afecta al servidor pero primero el tema va sobre el formato jpeg e intentando darle una respuesta argumente que hay un técnica que es utilizar un php o un javascript para que hacer que se baje algo(obviamente la respuesta apropiada es la que dio under) o instale algo(como pasa actualmente con los pop-ups en android que te sale una alerta de que tienes un virus y te lo bajas(a parte te lo instala lo cual desconozco el método)). Muchos hosting con poca seguridad te permiten insertar codigo php lo que hace que el usuario vea una imagen y luego a lo mejor le salga una alerta como que se tiene que descargar. Cuando decía eso me refería a que existe código malicioso en paginas para que te descargues ficheros y los instales. Imaginate que yo te mando un enlace de una foto tu ves la foto y te sale un pop para que te descargues un fichero y te pongo petardas y tu estas de morbo al final te lo descargas y ejecutas el fichero con el formato que sea alguien caerá digo yo.


Aqui se explica detenidamente otra manera usando stegosploit imagenes codificadas pero al final tiene que ver con un error en el navegador:
https://www.endgame.com/blog/stop-saying-stegosploit-exploit
http://www.welivesecurity.com/la-es/2015/06/02/stegosploit-imagenes-ejecutar-codigo/

Bueno pero decir que jpeg es seguro no estaría tan seguro hace mucho tiempo vale no ahora se descubrió un exploit en la manera en que procesaba las imagenes:
https://technet.microsoft.com/en-us/library/security/ms04-028.aspx

Seguro del todo no lo es. Pero under explico correctamente que no se tratá el error que mencione sobre un error de la imagen en sí sino de un error en una librería que incluye este formato y que utiliza los lectores de pdf y que al abrirlo con uno de esos lectores pues puedes cargar tu payload.

Que jpeg es seguro pues si dice under que si pues vale pero habrá que analizarlo detenidamente, de momento sí lo es. Pero jpg es tremendamente más seguro. Al final los hackers menos experimentados buscan vectores de ataque es decir colartela por otra parte navegador, otros programas , etc.

Y por supuesto es super dificil que con una imagen vayas a poder meter algo y ejecutes algo ya que son datos, como no sea un error gordo como el de 2004.
Estoy en contra del foro libre y la Sección de juegos y consolas (distraen al personal)

Balanegra

Respondo a mi petición despues de haber buscado, aunque me falta mucho por averiguar, espero no decir alguna barbaridad. A un jpg, pdf o doc le puedes ofuscar codigo, generalmente javascript , por lo que no suele ser visible cuando editas el fichero y no lo detectan los antivirus. Normalmente cuando lo abres usando el navegador o el corro ya está el codigo insertado funcionando.

Actualmente estoy buscando programas para desofuscar codigo de esa forma puedo intentar leer si hay algún codigo malicioso insertado en un fichero.
He aqui algunas pero busco más:
http://www.hackplayers.com/2016/07/13-herramientas-para-desofuscar-codigo.html

De todas formas, hacer se hace.

integeroverflow

Cita de: Ragaza en 24 Febrero 2017, 20:31 PM
si solo afecta al servidor pero primero el tema va sobre el formato jpeg e intentando darle una respuesta argumente que hay un técnica que es utilizar un php o un javascript para que hacer que se baje algo(obviamente la respuesta apropiada es la que dio under) o instale algo(como pasa actualmente con los pop-ups en android que te sale una alerta de que tienes un virus y te lo bajas(a parte te lo instala lo cual desconozco el método)). Muchos hosting con poca seguridad te permiten insertar codigo php lo que hace que el usuario vea una imagen y luego a lo mejor le salga una alerta como que se tiene que descargar. Cuando decía eso me refería a que existe código malicioso en paginas para que te descargues ficheros y los instales. Imaginate que yo te mando un enlace de una foto tu ves la foto y te sale un pop para que te descargues un fichero y te pongo petardas y tu estas de morbo al final te lo descargas y ejecutas el fichero con el formato que sea alguien caerá digo yo.


Aqui se explica detenidamente otra manera usando stegosploit imagenes codificadas pero al final tiene que ver con un error en el navegador:
https://www.endgame.com/blog/stop-saying-stegosploit-exploit
http://www.welivesecurity.com/la-es/2015/06/02/stegosploit-imagenes-ejecutar-codigo/

Bueno pero decir que jpeg es seguro no estaría tan seguro hace mucho tiempo vale no ahora se descubrió un exploit en la manera en que procesaba las imagenes:
https://technet.microsoft.com/en-us/library/security/ms04-028.aspx

Seguro del todo no lo es. Pero under explico correctamente que no se tratá el error que mencione sobre un error de la imagen en sí sino de un error en una librería que incluye este formato y que utiliza los lectores de pdf y que al abrirlo con uno de esos lectores pues puedes cargar tu payload.

Que jpeg es seguro pues si dice under que si pues vale pero habrá que analizarlo detenidamente, de momento sí lo es. Pero jpg es tremendamente más seguro. Al final los hackers menos experimentados buscan vectores de ataque es decir colartela por otra parte navegador, otros programas , etc.

Y por supuesto es super dificil que con una imagen vayas a poder meter algo y ejecutes algo ya que son datos, como no sea un error gordo como el de 2004.

en ese caso seria pura ingenieria social no? engañar al usuario para que descargue la "imagen" y la ejecute.

sobre lo otro, segun tengo entendido se deberia explotar alguna vulnerabilidad del navegador para poder descargar y ejecutar archivos con js, o de algun otro programa como el ejemplo que diste del pdf.

"Pero under explico correctamente que no se tratá el error que mencione sobre un error de la imagen en sí sino de un error en una librería que incluye este formato y que utiliza los lectores de pdf y que al abrirlo con uno de esos lectores pues puedes cargar tu payload."

me gustaria obtener mas informacion sobre eso, algun link o algo?

Borito30

Cita de: Balanegra en 24 Febrero 2017, 20:41 PM
Respondo a mi petición despues de haber buscado, aunque me falta mucho por averiguar, espero no decir alguna barbaridad. A un jpg, pdf o doc le puedes ofuscar codigo, generalmente javascript , por lo que no suele ser visible cuando editas el fichero y no lo detectan los antivirus. Normalmente cuando lo abres usando el navegador o el corro ya está el codigo insertado funcionando.

Actualmente estoy buscando programas para desofuscar codigo de esa forma puedo intentar leer si hay algún codigo malicioso insertado en un fichero.
He aqui algunas pero busco más:
http://www.hackplayers.com/2016/07/13-herramientas-para-desofuscar-codigo.html

De todas formas, hacer se hace.
La estanografía no es para nada dañina o peligrosa en el sentido de que puedas insertar código y ejecutarlo más bien se trata de como el navegador controle la ejecución de javascript. En stegosploit que usa la estenografia basicamente ejecuta el codigo por medio de un javascript y un fallo en tu navegador, simplemente codificando no vas a ejecutar nada. No te fies de lo que te encuentres por internet ni mucho menos en youtube ya que hay mucha estafa y nigerianos intentando estafar a gente incredula.
Estoy en contra del foro libre y la Sección de juegos y consolas (distraen al personal)

XKC

Cita de: Ragaza en  9 Febrero 2017, 15:07 PM
Lo que si he visto muy a menudo que hay usuarios que pueden meter en hosting de imagenes un php y cuando tu ejecutas el php pensando que es una imagen es codiglo malicioso q estas ejcutando por lo que al final tendr el control de tu ordenador. o incluso si puedes incluir contenido javascript al dominio etc puede intentar tener algo de control por ejemplo sacando informacion o haciendo una peticion al usuario...
Lo que si que se puede hacer es que en servidores que por ejemplo controlan el tipo de ficheros que subes y solo permiten ciertas extensiones(gif, jpg), es teniendo en cuenta la cabecera del formato que quiere subir crear el arcivo, insertar la cabecera y si tienes suerte y el servidor esta mal configurado y solo comprueba la extension o la extension y la cabecera añadir esta y debajo el payload.
Por ejemplo para atacer un server que admita formato gif:

  • # echo "GIF87a" > evil.gif
  • # cat meterpreter.php >> evil.gif

La verdad es que todavia no consigo comprender del todo el funcionamiento de este tipo de ataque, si alguien sabe el "por que ejecuta un archivo gif o jpeg o lo que sea" que me lo explique por favor.
Aunque si se que funciona.
Saludos.
Para poder atacar y vencer con seguridad, ataca donde ellos no puedan defenderse.
Para defenderte y resistir firme, defiéndete en donde ellos no atacarán.