Pedro Sánchez de Miguel Seguridad Informática 2017/2018 ESTEGANOGRAFÍA COMPUTARIZADA ¿Que es la esteganografía? La esteganografía trata el estudio y aplicación de técnicas que permiten ocultar mensajes u objetos, dentro de otros, llamados portadores, de modo que no se perciba su existencia. Es decir, procura ocultar mensajes dentro de otros objetos y de esta forma establecer un canal encubierto de comunicación, de modo que el propio acto de la comunicación pase inadvertido para observadores que tienen acceso a ese canal. Esteganografía Computarizada En esta ocasión nos centraremos en la esteganografía computarizada o esteganografía digital, la cual consiste en la ocultación de información mediante el medio digital, es decir, se encarga de la ocultación de los datos en ficheros, imágenes, videos o audio. La historia de la esteganografía computarizada comienza en los años ochenta con la aparición del ordenador personal. En esta nueva etapa las técnicas esteganográficas se han hecho mucho más diversas y sofisticadas, impulsando un renovado interés por la esteganografía. Esta ciencia ha suscitado mucho interés en los últimos años, especialmente en el área de seguridad informática, debido a que ha sido utilizada por organizaciones criminales y terroristas. No obstante, no se trata de nada nuevo, pues se lleva empleando desde la antigüedad, y tradicionalmente la han utilizado las instituciones policíacas, militares y de inteligencia, y también criminales o civiles que desean evadir el control gubernamental, especialmente en regímenes tiránicos. Pedro Sánchez de Miguel Seguridad Informática 2017/2018 Noticias Destacadas Vuelve la esteganografía como herramienta de ciberataques (Julio 2017) La esteganografía digital es usada por los cibercriminales para evitar la detección por parte de los sistemas de seguridad. Los sectores de salud, administraciones públicas y educación, principales objetivos para los ciberdelincuentes, según McAfee. McAfee Inc. ha dado a conocer su informe de amenazas McAfee Labs Threats Report: June 2017, que examina el origen y el funcionamiento interno del ladrón de contraseñas Fareit, analiza los 30 años de historia de las técnicas de evasión utilizadas por los autores de malware, explica el concepto esteganografía como técnica de evasión, evalúa los ataques en diferentes industrias y, por último, revela las tendencias en crecimiento del malware, ransomware, malware móvil y otras amenazas acaecidas en el primer trimestre de 2017. El informe de McAfee Labs de junio 207 analiza alguna de las técnicas de evasión más potentes, el sólido mercado oscuro de la tecnología de evasión, cómo las nuevas familias de malware aprovechan estas técnicas y las perspectivas de futuro, incluyendo la evasión del ‘machine learning’ y de hardware. Enlace a la noticio original: https://diarioti.com/vuelve-la-esteganografia-como-herramienta-deciberataques/104742 Los ciberdelincuenes usan cada vez más la técnica de la esteganografía (Agosto 2017) La firma de seguridad Kaspersky Lab advierte sobre la versión digital de esta técnica. Los ciberdelincuentes la están utilizando cada vez más para ocultar su actividad maliciosa. Ya sea para temas de ciberespionaje como para hacerse con información financiera. El caso es que la tendencia es “preocupante” porque al carro de la esteganografía no se suman sólo los hackers más avanzados, sino también criminales comunes. Kaspersky Lab ha encontrado su rastro en versiones actualizadas de troyanos como Zerp, ZeusVM, Kins o Triton. Hasta ahora”, dice Shulmin, “la industria de seguridad no ha encontrado una manera de detectar de forma fiable la exfiltración de datos realizada de esta manera”. La información robada se inserta dentro del código de una imagen o vídeo para enviarla al servidor de comando y control. A pesar de la modificación sufrida, la imagen no varía visualmente y la mayoría de los parámetros se mantienen. Este experto añade que “es relativamente fácil identificar una imagen ‘cargada’ con datos confidenciales robados con la ayuda del análisis manual. Sin embargo”, matiza, “este método tiene limitaciones, ya que un analista de seguridad sólo sería capaz de analizar un número muy limitado de imágenes por día”. Enlace a la noticia original: http://www.silicon.es/ciberdelincuenes-esteganografia-2348976 Pedro Sánchez de Miguel Seguridad Informática 2017/2018 Tipos / técnicas de esteganografía A lo largo del tiempo se han ido creando nuevas técnicas de esteganografía para ocultar la información. Habitualmente se suele asociar la esteganografía a la ocultación de información en imagenes, sin embargo existen muchas tecnicas: -Técnicas anti-seguridad. Se utilizan para evitar la detección por parte de motores antimalware, contención de aplicaciones u otras herramientas que protegen el entorno. -Técnicas anti-sandbox. Se utilizan para detectar el análisis automático y esquivar a los motores que informan sobre el comportamiento del malware. La detección de las claves del registro, archivos o procesos relacionados con entornos virtuales permite al malware saber si se está ejecutando en un sandbox. -Técnicas anti-analista. Se utilizan para detectar y engañar a los analistas de malware. Por ejemplo, detectando herramientas de monitorización como ‘Process Explorer’ o ‘Wireshark’. -Esteganografía pura. No existe estego-clave, y por tanto, se presupone que el guardían es incapaz de reconocer una información oculta mediante estego de un mensaje normal. -Esteganografía de clave secreta. En este caso, la estego-función depende de una clave que deben conocer tanto el emisor como el receptor. Un ejemplo sencillo sería un texto oculto bajo otro texto generado aleatoriamente a partir de un capítulo de un libro que los dos (emisor y receptor) conozcan y una contraseña que dictará el cómo descifrar el mensaje camuflado. -Esteganografía en texto. Ofuscar información en texto, de manera que algunas (o todas) las palabras del mismo, sirvan para descifrar el mensaje. Hay varias técnicas, pero la mayoría se basan en aplicar algún algoritmo que permita elegir diferentes estados (por ejemplo, un 0 o un 1) según diferentes palabras (coche = 0, gato=1), en un orden específico. -Esteganografía en sistema operativos y ficheros. Consiste en ofuscar información apoyándose en las restricciones propias del canal utilizado. Un ejemplo muy utilizado hace algunos años y sencillo de aplicar era el de dividir el disco duro de un ordenador en bloques por ejemplo de 256, cuando Windows como mínimo permitía 512. Al hacerlo de esta manera, se le engañaba, por lo que para cada bloque, Windows utilizaba 256, y el emisor tenía otros 256 para ocultar información. -Esteganografía en formato de ficheros. Ofuscamos información en las limitaciones propias del fichero, o de los elementos de control de los sistemas encargados de leer el fichero. La más conocida y sencilla es la Técnica de Final de Fichero (EOF), que aprovecha el poco control a la hora de leer un fichero para ocultar información al final del mismo. -Esteganografía hardware. Aprovechar, de nuevo, las limitaciones (o fallos de seguridad) de un elemento físico para ofuscar información dentro de él. Y aquí el mejor ejemplo es el uso de malware en BIOS (BadBIOS) que sacudió internet entera hace relativamente poco, para disgusto de los amantes de la conspiración mundial Pedro Sánchez de Miguel Seguridad Informática 2017/2018 Casos Prácticos OpnePuff OpenPuff Steganography and Watermarking, a veces abreviado en OpenPuff o Puff, es una herramienta libre de esteganografía para Microsoft Windows creada por Cosimo Oliboni y todavía desarrollada como software independiente. El objetivo que me he propuesto es esconder un fichero txt en una imagen. Este proceso lo realizaré en una maquina virtual con un sistema Windows 7. Este software lo he descargado desde el siguiente enlace “http://embeddedsw.net/OpenPuff_Steganography_Home.html” para descargarlo simplemente pulsamos en “Download direct link” Antes de empezar el proceso de ocultación, prepararé el fichero que voy a ocultar, en mi caso lo crearé en el Escritorio y lo he denominado “Prueba” dentro de este he escrito una frase, para comprobar después que efectivamente es el mismo fichero. Pedro Sánchez de Miguel Seguridad Informática 2017/2018 Con todo preparado podemos ejecutar el programa “OpenPuff” el cual no se instalará en nuestro equipo, ya que es portable. Un detalle que me ha gustado de este programa es que no solo nos permite ocultar la información, si no que también podemos analizar una imagen o fichero para comprobar si tiene información oculta. Primero utilizaremos la opción que nos permite ocultar, a ella accederemos pulsando en “Hide” Una vez tenemos ejecutado OpenPuff veremos que tenemos 4 fases para ocultar la información: -1a Fase: Aquí deberemos introducir la contraseña que vamos a utilizar, es importante que el receptor tambien la conozca, ya que con esta misma contraseña analizará el fichero para extraer la información. Este programa nos da la opción de usar tres contraseñas por seguridad, sin embargo para este ejemplo la deshabilitaremos. -2a Fase: Aquí deberemos escoger el fichero (en este caso txt) que deseamos ocultar, para hacerlo es muy sencillo, pulsamos en “Browse” y buscamos el fichero en cuestión. Pedro Sánchez de Miguel Seguridad Informática 2017/2018 -3a Fase: En esta fase, buscaremos un archivo donde ocultar la información, es decir, en el fichero que introduzcamos es donde estará la información. El procedimiento es muy similar a la fase anterior, pulsamos en “Add” y seleccionamos el archivo en cuestión. -4a Fase: En esta última fase deberemos escoger el formato del archivo donde vamos a ocultar la información, en este caso “Jpg” y escogemos “Minimum” Pedro Sánchez de Miguel Seguridad Informática 2017/2018 Pulsamos en “Hide Data” para iniciar el proceso de estganografía. Cuando finalice nos mostrará un mensaje de confirmación de que todo ha salido correctamente. Tras esto nos situaremos en el directorio donde hallamos indicado que guarde el archivo en cuestión (en mi caso Documentos) y nos fijaremos que nos habrá creado un archivo “aparentemente” idéntico al original. Para comprobar que realmente esa imagen contiene información oculta, realizaremos el proceso inverso, es decir, un análisis de dicho archivo. Esto lo haremos con el mismo programa, en lugar de entrar en “Hide” pulsaremos en “Unhide” Pedro Sánchez de Miguel Seguridad Informática 2017/2018 En esta ocasión tenemos tres en lugar de cuatro fases: -En la primera fase debemos introducir la misma contraseña que se utilizó a la hora de ocultar la información, deshabilitando las otras dos. -En la segunda fase seleccionamos el archivo (la imagen en este caso) que contiene la información oculta. -En la tercera y última fase escogemos el formato del fichero que se escogió a la hora de ocultar la información. Pulsamos en “Unhide” y comenzará el análisis del archivo que hemos escogido. Una vez terminado, volvemos al directorio donde hemos indicado que se guarde el fichero oculto (Documentos en mi caso) y veremos que se ha creado un fichero txt idéntico al que se ocultó. También puedes seguir este tutorial en forma de video a través de este enlace: https://www.youtube.com/watch?v=m6V6YnblFqI Pedro Sánchez de Miguel Seguridad Informática 2017/2018 Steghide Steghide es un programa de estenografía que permite ocultar datos en varios tipos de imagen- y archivos de audio. Sus características incluyen el compactado y el encriptado de los datos adjuntos, y revisión automática de integridad usando un checksum. Se reconocen los formatos de archivo JPEG, BMP, WAV y AU para usar como archivos de portada. No existen restricciones en el formato de los datos ocultos. Este software está enfocado para sistemas operativos Linux. Para instalarlo utilizaremos el comando “apt-get install steghide” y lo haremos con permisos de super usuario, ya sea mediante sudo o su. Este programa cuenta con distintas variables a la hora de ejecutarse, algunas de las que podemos utilizar son: -ef: especifica la ruta del archivo que desea ocultar. Puede incrustar cualquier tipo de archivo dentro del archivo de “portada”. -cf: es el archivo en el que están incrustados los datos (le llamamos “portada”), esto está restringido a archivos BMP, JPEG, WAV, AU. -sf: es un argumento opcional que especifica el archivo de salida; si se omite, el nuevo archivo esteganográfico sobrescribirá al archivo de portada original. -z: especifica el nivel de compresión, entre 1 y 9. Si prefiere no comprimir su archivo, utilice el argumento -Z en su lugar. -e: especifica el tipo de encriptación. Steghide admite una multitud de esquemas de cifrado, y si este argumento se omite por defecto, Steghide utilizará el cifrado AES de 128 bits. Si prefiere no usar cifrado, simplemente escriba -e none. Puedes seguir un tutorial en video a través de este enlace: https://www.youtube.com/watch? v=eQ9-H9hysTY&feature=youtu.be Pedro Sánchez de Miguel Seguridad Informática 2017/2018 Enlaces de Interés https://es.wikipedia.org/wiki/Esteganograf%C3%ADa#T%C3%A9cnicas_digitales http://www.securitybydefault.com/2010/12/herramientas-de-esteganografia.html https://es.wikipedia.org/wiki/Estegoan%C3%A1lisis https://www.pabloyglesias.com/mundohacker-esteganografia/ https://www.youtube.com/watch?v=eQ9-H9hysTY&feature=youtu.be https://www.youtube.com/watch?v=m6V6YnblFqI http://embeddedsw.net/OpenPuff_Steganography_Home.html