Lamento informarle que es muy probable que su contraseña se encuentre en algunas de las cientos de bases de datos que contienen credenciales filtradas. Lo sé porque allí he encontrado algunos passwords que he estado buscando en mis investigaciones Osint. Tal vez usted nunca haya sido hackeado, pero algunos de los servicios que usa sí.
LeakSearch.
La herramienta que les voy a presentar se llama LeakSearch. Es un pequeño programa 100% escrito en Python. LeakSearch busca contraseñas en texto plano utilizando ProxyNova COMB. Podemos usar una palabra única o pasarle un archivo con credenciales filtradas y LeakSearch buscará los datos que le pidamos. Además, también podemos definir cuántos resultados queremos mostrar en el terminal y exportarlos en formatos JSON y/o TXT.
Su instalación y uso son muy sencillos. Yo la instalé en una máquina Kali Linux. Vamos a su página de Github y descargamos la herramienta. Los pasos a seguir son los siguientes:
git clone https://github.com/JoelGMSec/LeakSearch cd LeakSearch pip3 install -r requirements.txt
Y eso es todo. Ya tenemos la herramienta. Podemos ver sus opciones con el comando python3 LeakSearch.py -h
. Veremos que son pocas y muy concretas. Para su funcionamiento básico nos interesan las opciones: -k
o --keyword
, la palabra clave que vamos a buscar; -d
o --database
, la base de datos en la que buscaremos; -n
o --number
, la cantidad de resultados que queremos en pantalla y, -o
u --output
si queremos exportar los resultados en formato json o txt. La otra opción es -p
o --proxy
que por ahora no nos interesa.
Buscando su contraseña.
Pongamos a prueba la herramienta buscando algunas contraseñas al azar. Primero, hagámoslo con una única palabra clave, por ejemplo: juanperez. Este podría ser un nombre de usuario en cualquier servicio de correo electrónico. Veamos qué nos dice LeakSearch sobre Juan utilizando el comando: python3 LeakSearch.py -k juanperez -n 12
.
Estupendo. La herramienta encontró 756 registros pero nos mostró 12 porque así lo solicité en el comando. Ahora hagamos el ejercicio con un archivo (de pruebas) que contiene cuentas de usuarios y contraseñas filtradas. El comando aquí sería: python3 LeakSearch.py -k net -n 10 -d /home/zcrunch/keywords
.
Con el comando anterior le estoy diciendo a LeakSearch que busque solo dominios net (-k net
), que me muestre máximo 10 resultados (-n 10
) y que la base de datos (-d
) en la que vamos a buscar es el archivo keywords cuya ruta le estoy proporcionando. Veamos qué encontró la herramienta.
La herramienta encontró algunos registros para el TLD .net. Esa lista me la inventé porque, por obvias razones, no puedo usar cuentas reales (al menos no en público). Lo importante era enseñar a usar la herramienta. Ya cada uno verá qué hace con ella.
Lo más seguro es que esas contraseñas filtradas ya no den acceso a las cuentas. Sin embargo, una contraseña anterior nos dice mucho de la persona que estamos investigando. Una cuenta con una contraseña robusta nos dirá que ese persona es cuidadosa y no sería realista esperar que su nueva clave de acceso sea fácil de obtener. Lo opuesto con alguien que haya usado como contraseña el nombre de su perro.
También suele suceder, muy a menudo, que las personas cambian sus contraseñas por nuevas pero relacionadas a la anterior. Algo así como cambiar chihuahua2022 por 2022chihuahua. Es cuestión de seguir halando el hilo. A veces se llega, a veces no, pero siempre se aprende. Hasta la próxima.