Realizar ataques de fuerza bruta a volumenes TrueCrypt

Antes que nada debo presentarles TrueCrypt para quienes no lo conozcan, es un Software que nos permite encriptar archivos haciendo uso de diferentes algoritmos de cifrado. Lo que más me gustó de este aplicativo es que nos permite crear volúmenes virtuales (como si se tratase de otro disco más en nuestro computador) que en realidad no es más que es un archivo con extensión .tc el cual después de poner la contraseña correcta se “monta” para poder ser usado y así es mucho más sencillo y rápido administrar los archivos del mismo.

En un reto que vi hace algún tiempo para un Wargame, había que realizar un ataque por diccionario a un volumen TrueCrypt y así fue que di con true.crypt.brute, que también puede ser útil en caso de olvidar la contraseña del .tc con archivos importantes. Eso si hay que tener en cuenta que se necesita un buen diccionario y que no es del todo efectivo el ataque, ya que como he visto en algunos casos de personas que usan 50 o más caracteres en su contraseña, haciendo imposible dar con ella usando un diccionario. Otro detalle es que el proceso es muy lento, hay que tener paciencia.

Descargar true.crypt.brute.

Cracking hash with PHP

PHPCracker: Crackear diferentes tipos de hash con PHP

Últimamente resolviendo algunos retos me ha tocado crackear diferentes hash y aunque existen muchos programas para esa labor (como Cain) estos no ofrecen soporte para realizar fuerza bruta a algunos tipos de hash. Por esta razón hice PHPCracker, un sencillo script que permite realizar ataques por fuerza bruta y ataques por diccionario usando PHP.

<?php

if (defined('STDIN')) {
        if (count($argv) < 2) {
            echo "#########################################################################\n" .
            "#           PHPCracker UrbaN77 www.RedInfoCol.org  - www.BrianUR.info   #\n" .
            "#########################################################################\n" .
            "# Uso: php phpcracker.php [Modo] [Nombre del hash] [Hash] [Opciones]    #\n" .
            "# --------------------------------------------------------------------- #\n" .
            "# Modo: usa -b hacer un brute force o -d para un ataque por diccionario.#\n" .
            "# Nombre del hash: Por ejemplo md5, sha1 o cual sea el nombre.          #\n" .
            "# Hash: Hash a crackear.                                                #\n" .
            "# Opciones: Estas dependen del modo elegido.                            #\n" .
            "#  - Charset: min para minusculas, may para mayusculas   o all para las #\n" .
            "#             anteriores con numeros y simbolos (Solo para el modo -b). #\n" .
            "#  - Diccionario: nombre del fichero de tu wordlist (Solo para modo -d).#\n" .
            "#########################################################################";
            exit;
        }
        $modo = $argv[1];
        $tipoHash = $argv[2];
        $hash = $argv[3];

        function crackear($hash, $tipoHash, $charset) {
            if ($charset == "min") {
                $desde = 97;
                $hasta = 122;
            } elseif ($charset == "may") {
                $desde = 65;
                $hasta = 90;
            } elseif ($charset == "all") {
                $desde = 33;
                $hasta = 126;
            } else {
                echo "Necesitas especificar el Charset: min, may o all.";
                exit;
            }
			echo "Crackeando...\n";
            for ($i = $desde; $i <= $hasta; $i++) {
                for ($j = $desde; $j <= $hasta; $j++) {
                    for ($k = $desde; $k <= $hasta; $k++) {
                        for ($l = $desde; $l <= $hasta; $l++) {
                            $salida = hash($tipoHash, chr($i) . chr($j) . chr($k) . chr($l));
                            if ($hash == $salida) {
                                echo "Password encontrado: " . chr($i) . chr($j) . chr($k) . chr($l)."\n";
                                exit;
                            }
                        }
                    }
                }
            }
        }

        if ($modo == "-d") {
            $wordlist = $argv[4];
            if (file_exists($wordlist)) {
                $diccionario = file($wordlist);
				echo "Crackeando...\n";
                foreach ($diccionario as $rel) {
                    $salida = hash($tipoHash, $rel);
                    if ($salida == $hash) {
                        echo "El password es: " . $rel;
                        exit;
                    }
                }
            } else {
                echo "El archivo " . $wordlist . " no existe.";
                exit;
            }
        } elseif ($modo == "-b") {
            $charset = $argv[4];
            crackear($hash, $tipoHash, $charset);
        }
        echo "Password no encontrado :/ intenta probando con otro tipo de hash, otro charset o diccionario.";
} else {
    echo("Necesitas correr este script desde la consola.");
}
?>

Continuar leyendo…

Herramienta para analisar imaganes

StegSecret: Herramienta para estegoanálisis

Herramienta para analisar imaganesStegSecret es una interesante herramienta para estegoanálisis de imágenes en busca de información oculta, comprobando diferentes tipos de técnicas comunes y patrones usados por programas como camouflage, inThePicture, inPlainView, steghide, dataStealth y entre otros más. Muy útil para wargames cuando necesitas saber rapidamente el tipo de tecnica de un reto de esteganografía antes de ponerte a comprobar manualmente.

Programas y técnicas detectadas

  • camouflage V1.2.1, inThePicture v2, JPEGXv2.1.1, PGE (Pretty Good Envelope) v1.0, appendX v<=4, steganography v1.6.5, inPlainView, DataStash v1.5 y dataStealth v1.0.
  • Programas basados en  técnicas EOF (End Of File).
  • Suporta los formatos BMP, GIF y JPEG.
  • Cuenta con una Base de Datos de Aplicaciones Esteganográficas “bdas v0.1” con más de 40 tipos de técnicas esteganográficas.

En resumen una herramienta que no puede faltar en el repertorio.

Sitio web y descarga de StegSecret.

Cain & Abel: Una herramienta todo en uno

Cain & Abel es una de mis herramientas preferidas en entornos Windows, ya que dentro de una misma aplicación podemos hacer montones de cosas como recuperar contraseñas del sistema donde este instalado, entre ellas contraseñas Wi-Fi, de Internet Explorer, clientes de correo, Microsoft Access y más. También cuenta con sistema de crackeo de múltiples tipos hash, en el que permite usar técnicas como fuerza bruta, ataque por diccionario y ataque por criptoánalisis. Otra de sus características más valoradas es que permite sniffear redes, permitiendo obtener contraseñas en una red, grabar conversaciones VoIP, entre otras. Ademas cuenta con decodificador de Base64, VNC, Cisco VPN Client y otras pequeñas utilidades.

Descargar Cain & Abel también puedes descarga una versión portable.

El manual oficial lo puedes encontrar aquí o este otro en español.

Cryptool

CrypTool: Una herramienta para Criptografía y Criptoanálisis

CrypTool es una de esas herramientas a las que uno les coge cariño rápidamente, yo la llevo usando hace algún buen tiempo para resolver retos de criptografía y me a funcionado de maravilla. Esta herramienta es usada para el aprendizaje de  Criptografía y Criptoanálisis, lamentablemente  solo esta disponible para Windows pero existe una alternativa llamada JCrypTool desarrollada en Java, con la posibilidad de ejecutarse en múltiples sistemas operativos.

Entre las caracterisitcas destacadas de CrypTool podemos encontrar:

  • Numerosos algoritmos criptográficos, clásicos y modernos (cifrado y descifrado, generación de clave, contraseñas seguras, autentificación, protocolos seguros, …)
  • Visualización de varios métodos (p.ej. César, Enigma, RSA, Diffie-Hellman, firmas digitales, AES)
  • Criptoanálisis de ciertos algoritmos (p.ej. Vigenère, RSA, AES)
  • Métodos de medida criptoanalítica  (p.ej. entropía, n-grams, autocorrelación)
  • Métodos auxiliares (p.ej. tests de primalidad, factorización, codificación en base64)
  • Tutorial sobre teoría de números.
  • Ayuda detallada on-line.
  • Script con más información sobre criptografía.

Descargar CrypTool

SQL-PwnZ 1.5 – Herramienta para SQL Injection

Algunos deben recordar que anteriormente les había hablado de esta tool. Hoy me encontré en la web de Login-Root que ya esta disponible la version 1.5.

Las novedades son:

[+] Agregado mod_security Bypass.
[+] Agregado Illegal Mix Of Collations Bypass.
[+] Agregadas más tablas para bruteforce.
[+] Agregadas más columnas para bruteforce.
[+] Código interno mejorado.
[+] Bugs Fixeados.

Pueden descargarla desde aquí.
Continuar leyendo…