Cloakify conjunto de herramientas
Evadir dispositivos DLP / MLS; Ingeniería social de los analistas; Evadir la detección AV
CloakifyFactory transforma cualquier tipo de archivo (por ejemplo,
.zip, .exe, .xls, etc.) en una lista de cadenas de aspecto inofensivo.
Esto le permite ocultar el archivo a la vista, y transferir el archivo
sin activar las alertas. El término para esto es “esteganografía basado
en texto”, ocultar datos al hacer que se vea como otros datos. Por
ejemplo, puede transformar un archivo .zip en una lista de criaturas
Pokémon o los 100 mejores sitios web. A continuación, transferir el
archivo envuelta sin embargo que elija, y luego decloak el archivo
exfiltraron de nuevo en su forma original.
Con su carga envuelta,
puede transferir datos a través del perímetro de una red segura sin
activar las alertas. También puede derrotar a los controles de lista
blanca de datos - no es un dispositivo de seguridad que sólo permite que
las direcciones IP para salir o entrar en una red? Dé vuelta a su carga
útil en direcciones IP, problema resuelto. Adicionalmente, puede
descarrilar opinión del analista de seguridad a través de ataques de
ingeniería social contra sus flujos de trabajo. Y como premio final,
archivos encapuchadas derrotar herramientas de detección de malware
basado en firmas.
Los sistemas de cifrado de pre-envasados
están diseñados para aparecer como listas inofensivos / ignorables,
aunque algunos (como hashes de contraseñas MD5) están diseñadas
específicamente como cebo de distracción.
CloakifyFactory es
también una gran manera de introducir a la gente a los conceptos de
criptografía y esteganografía. Es muy sencillo de usar, guía al usuario a
través del proceso, y de acuerdo con nuestros hijos también es
divertido!
CloakifyFactory es una herramienta basada en menús que
aprovecha los guiones Cloakify conjunto de herramientas. Cuando se
elige a Cloakify un archivo, los guiones primero en Base64 codificar la
carga útil, a continuación, se aplican un sistema de cifrado para
generar una lista de cadenas que codifica la carga útil Base64. A
continuación, transferir el archivo como desee a su destino deseado. Una
vez exfiltraron, elija Decloakify con el mismo sistema de cifrado para
descifrar la carga útil.
NOTA: Cloakify no es un esquema de
cifrado seguro. Es vulnerable a los ataques de análisis de frecuencia.
Utilice la opción 'Añadir ruido' para añadir entropía cuando una carga
útil de camuflaje para ayudar a degradar los ataques de análisis de
frecuencia. Asegúrese de cifrar el archivo antes de encubrimiento si es
necesario el secreto.
Las secuencias de comandos de apoyo
(cloakify.py y decloakify.py) pueden ser usados como procesos
independientes. Muy pequeño, sencillo, limpio y portátil. Para los
escenarios donde infiltrarse en el conjunto de herramientas completo es
poco práctica, puede escribir rápidamente el independiente sobre la masa
local de un objetivo, generar un sistema de cifrado en su lugar, y
cloakify -> exfiltrate.
Utilice py2exe si carece de destino Windows Python. ( Http://www.py2exe.org/ )
sistemas de cifrado preenvasados incluyen listas de:
Anfibios (nombres científicos)
Cervezas belgas
Postres en Inglés, árabe, tailandés, ruso, hindi, chino, persa y Muppet (sueco Chef)
Emoji
evadeAV (el más pequeño espacio de cifrado, tamaño x3 carga útil)
GeoCoords Capitales Mundiales (Lat / Lon)
Coordenadas GeoCaching (w / nombres de sitio)
Las direcciones IPv4 de los sitios web más populares
Los valores hash MD5 contraseña
PokemonGo Monsters
Estaciones de esquí
Códigos de estado (genérico)
personajes de Star Trek
100 Mejores Sitios Web
Playas mundo
Los equipos de la Copa Mundial
guiones previamente embalados para añadir ruido / entropía a sus cargas útiles encapuchadas:
Cervezas belgas
Postres en Inglés, árabe, tailandés, ruso, hindi, chino, persa y Muppet (sueco Chef)
Emoji
evadeAV (el más pequeño espacio de cifrado, tamaño x3 carga útil)
GeoCoords Capitales Mundiales (Lat / Lon)
Coordenadas GeoCaching (w / nombres de sitio)
Las direcciones IPv4 de los sitios web más populares
Los valores hash MD5 contraseña
PokemonGo Monsters
Estaciones de esquí
Códigos de estado (genérico)
personajes de Star Trek
100 Mejores Sitios Web
Playas mundo
Los equipos de la Copa Mundial
guiones previamente embalados para añadir ruido / entropía a sus cargas útiles encapuchadas:
prependEmoji.py: añade un emoji randomize a cada línea
prependID.py: añade una etiqueta de ID aleatorio a cada línea
prependLatLonCoords.py: Agrega al azar coordenadas LatLong a cada línea
prependTimestamps.py: Añade marcas de tiempo (estilo de archivo de registro) para cada línea
Ver comentarios en cada secuencia de comandos para obtener detalles sobre cómo adaptar los generadores de ruido para sus propias necesidades
prependID.py: añade una etiqueta de ID aleatorio a cada línea
prependLatLonCoords.py: Agrega al azar coordenadas LatLong a cada línea
prependTimestamps.py: Añade marcas de tiempo (estilo de archivo de registro) para cada línea
Ver comentarios en cada secuencia de comandos para obtener detalles sobre cómo adaptar los generadores de ruido para sus propias necesidades
Crear su propio Cipers
Cloakify fábrica está en su mejor cuando se está utilizando sus propios
sistemas de cifrado personalizadas. Los sistemas de cifrado por defecto
pueden trabajar para la mayoría de las necesidades, pero en un
escenario exfiltración única que puede necesitar para construir su
propia. Por lo menos, puede copiar un sistema de cifrado y envasados
aleatoriamente el orden.
La creación de un sistema de cifrado:
Generar una lista de al menos 66 palabras / frases / símbolos únicos (Unicode aceptada)
Eliminar todas las entradas duplicadas y todas las líneas en blanco
Aleatorizar el orden de la lista
Colocar en el “/ cifrados” subdirectorio
Vuelva a ejecutar CloakifyFactory y cargará automáticamente el nuevo sistema de cifrado como una opción
Prueba de camuflaje / destape con el nuevo sistema de cifrado antes de usar operacionalmente
Descargar: https://github.com/trycatchhcf/cloakifyEliminar todas las entradas duplicadas y todas las líneas en blanco
Aleatorizar el orden de la lista
Colocar en el “/ cifrados” subdirectorio
Vuelva a ejecutar CloakifyFactory y cargará automáticamente el nuevo sistema de cifrado como una opción
Prueba de camuflaje / destape con el nuevo sistema de cifrado antes de usar operacionalmente
En alguna ocasión hemos hablado de la prueba de Data Exfiltration que en un proceso de Ethical Hacking se debe realizar en algunas ocasiones. La tarea siempre es divertida, ya que te pones en el lugar un empleado o persona con acceso a la información privada e intentas crear un camino para saltarse los mecanismos de protección como pueden ser los sistemas de DLP (Data Loss Prevention), los servicios que usando Machine Learning analizan las actividades de usuario con las herramientas de Human Behavior Analytics o los mismos antimalware que vigilan el end-point.
Figura 1: Cloakify. "Exfiltrar datos usando Pokemos, Emojis o StarTrek" |
Para muchos, es más divertido romper cristales que ponerlos, y en este caso se trata de romper cristales sin que nos vean. De todos modos, hoy en día, el atacante tendrá cierta parte de ventaja, ya que se disponen de muchos canales y formas de extraer información de una organización. Hoy hablaremos de Cloakify, una herramienta que todo pentester debe llevar en su mochila para este tipo de pruebas.
Figura 2: Cloakify en GitHub |
La herramienta aporta una curiosa forma de cifrar y ocultar información para que analistas y sistemas de detección no lo vean como algo de interés. Además, cualquier puede generarse su payload, entendiendo payload como la forma para cifrar y descifrar. Una de las cosas curiosas de Cloakify es que te permite generar ficheros de texto con emojis, pokemons o ubicaciones de pokemons y códigos de StarTrek. Por supuesto, para poder sacar dicha información quizá debamos añadir alguna técnica como la encapsulación a través de DNS, utilizar un canal encubierto, como por ejemplo Gmail, o cualquier otro medio.
Punto de partida
Para el ejemplo de partida, queremos cifrar el fichero ideas de desarrollo.docx, para que pase desapercibido ante los ojos de otros usuarios. Para ello existen diversos ciphers, pero como dije antes, me llamó mucho la atención los emojis, los pokemons y StarTrek. En la imagen, se puede ver cómo se ha cifrado con los ciphers comentados anteriormente. El tamaño del fichero crece considerablemente, y deberá ir acompañado con un canal de filtrado de datos, como se comentó anteriormente.
Figura 3: Cifrado del fichero con emoji, Pokemon y StarTrek |
Las posibilidades que Cloakify ofrece son bastantes, como se puede ver en la siguiente imagen. Además, se dispone de la posibilidad de crear nuestro propio cipher, incluso dotándolo de entropía. A continuación, mostramos los diferentes ciphers con los que se puede jugar.
Figura 4: Todos los ciphers disponibles en Cloakify |
Podemos resumir que Cloakify es un conjunto de herramientas que proporcionan técnicas para evadir DLP/MLS, al analista, los controles de aplicaciones o la detección de AV. Todo está basado en cifrado utilizando listas. La herramienta puede convertir cualquier tipo de fichero, ejecutables, zip, imágenes, etcétera, en una lista de cadenas, difíciles de detectar o de imaginar qué son.
Cloakify: Acción!
Para llegar a cabo la transformación de los datos reales en una lista de strings, simplemente hay que ejecutar archivo, escrito en Python, cloakify.py. La sintaxis de ejecución es la siguiente:
cloakify.py [fichero a convertir] [cipher] > [fichero resultante]Por ejemplo:
python cloakify.py ideas.docx ciphers/pokemonGo.ciph > pokemon.txt.¿Cómo está funcionando Cloakify?
En primer lugar, codifica en Base64 el payload. Después, aplica el cipher para generar un listado de strings. Una vez, se extrae la información de dónde se requiera, utilizando el medio o vía que se quiera, se puede utilizar Decloakify para hacer el proceso inverso y obtener el fichero original.
Figura 5: fichero codificado como lista de pokemons |
Como bien indican los desarrolladores de la herramienta, Cloakify no tiene un esquema seguro de cifrado, ya que es vulnerable a ataques de análisis de frecuencia (vease critografía y criptoanálisis al uso). Por esta razón, se recomienda utilizar noiseTools, es decir, herramientas que generen ruido, en este caso scripts que añadan entropía al proceso de cifrado. Para la generación de entropía Cloakify proporciona diferentes scripts:
• PrependID.py.Cada uno añade información distinta y “pseudo-aleatoría” con el objetivo de mejorar la resistencia a los ataques para detectar y descifrar el mensaje. Para crear nuestro propio cipher debemos:
• PrependLatLonCoords.py.
• PrependTimestamps.py.
• Generar un listado de al menos 66 palabras únicas, pueden ser frases o símbolos.
• Generar el listado de forma aleatoria.
• Eliminar duplicados.
Figura 6: Listado de palabras para hacer un cipher |
En la imagen superior vemos como creamos un fichero denominado Luca.ciph, con el que metemos nombres, frases, números, etcétera. Cuando utilizamos el cipher con Cloakify, obtenemos el fichero ideas.docx original en un listado de strings en un fichero de texto, con las palabras que hemos utilizado anteriormente para crear el cipher, tal y como se puede ver en la siguiente imagen.
Figura 7: Fichero cifrado con el cipher creado |
Para generar la entropía utilizamos, en este caso, el script PrepentTimeStamps.py. Tal y como se puede ver en la imagen, se añade entropía de marcas de tiempo, aunque sean la misma palabra al final.
Figura 8: Generando entropia |
Para volver a obtener el fichero original utilizamos Decloakify de la siguiente manera:
python decloakify [fichero cifrado] [cipher] > [nombre fichero descifrado]El resultado es la obtención del mismo fichero que se cifró al principio. Lógicamente, el proceso de Decloakify, debería realizarse una vez se ha exfiltrado la información de la organización, en el modo auditoría o hacking ético.
Figura 9: Decodificación del fichero |
Como se puede ver, esta herramienta tiene un uso sencillo y potente, y merece estar en la mochila de cara a un hacking ético. De todos modos, la suma de herramientas y técnicas será más eficiente, y podrá aportarnos un mayor valor en este tipo de pruebas, por lo que se recomienda la utilización de canales encubierto y ofuscación o cifrado mediante textos “sin valor” como emojis o nombres y ubicaciones de pokemons. Disfruta de tu exfiltración.
No hay comentarios:
Publicar un comentario