├── images
├── reconMail.png
└── reconMailAPP.png
├── README.md
└── reconMail.sh
/images/reconMail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/e1abrador/reconMail/main/images/reconMail.png
--------------------------------------------------------------------------------
/images/reconMailAPP.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/e1abrador/reconMail/main/images/reconMailAPP.png
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | #
2 |
3 |
7 |
8 |
9 | **reconMail** es una Herramienta OSINT para recolectar correos electrónicos de una organización, ideal para **BugBountys**, **Pentesting**, **Hackers Éticos**, **REDTEAM**, etc.
10 |
11 | Además puede utilizarse junto con otras herramientas, como h8mail, para detectar si los correos recolectados por reconMail tienen algún Leak de información.
12 |
13 | **IMPORTANTE**: Dado que se utiliza el servicio Gratuito de PhoneBook (intelX.io) el numero de busquedas queda limitado diariamente.
14 | **El creador de esta herramienta no se hace responsable del mal uso de la misma.**
15 |
16 | Instalación
17 | ======
18 |
19 | ```git clone https://github.com/oski02/reconMail.git ```\
20 | ```cd reconMail``` \
21 | ```chmod +x reconMail.sh``` \
22 | ```./reconMail.sh```
23 |
24 | ¿Cómo funciona?
25 | ======
26 | La herramienta nos preguntará por el dominio que queremos buscar los correos, una vez introducido nos mostrará por pantalla los mails encontrados y nos generará un fichero con todos ellos.
27 |
28 |
29 |
32 |
33 |
34 | Encontrar mails que tengan algún Leak
35 | ======
36 |
37 | Combinando con la herramienta h8mail podremos ser capaces de detectar si los correos que hemos buscado presentan algún leak de informacion.
38 |
39 | Pasos a seguir:
40 |
41 | 1. instalamos h8mail
42 |
43 | ```pip3 install h8mail```
44 |
45 | Mas info: https://github.com/khast3x/h8mail
46 |
47 | 2. Ejecutamos reconMail
48 |
49 | ```./reconMail```
50 |
51 | 3. Pasamos la salida de reconMail a h8mail
52 |
53 | ```cat mails-xxx.xx.txt | xargs h8mail -t```
54 |
55 | *** HAPPY HUNTING ***
56 |
--------------------------------------------------------------------------------
/reconMail.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | clear
3 | source /dev/stdin <<< "$(wget -qO- raw.githubusercontent.com/hschne/spinny/master/spinny.sh)" ; home="$(pwd)"
4 |
5 | SPINNY_FRAMES=(. .. ... .... ..... " ...." " ..." " .." " ." " " . .. ... .... ..... " ...." " ..." " .." " ." " ")
6 | SPINNY_DELAY=0.1
7 | printf "\033[1;31m\n\n"
8 | printf "\033[1;37m ██████╗░███████╗░█████╗░░█████╗░███╗░░██╗███╗░░░███╗░█████╗░██╗██╗░░░░░\n"
9 | printf "\033[1;37m ██╔══██╗██╔════╝██╔══██╗██╔══██╗████╗░██║████╗░████║██╔══██╗██║██║░░░░░\n"
10 | printf "\033[1;36m ██████╔╝█████╗░░██║░░╚═╝██║░░██║██╔██╗██║██╔████╔██║███████║██║██║░░░░░\n"
11 | printf "\033[1;36m ██╔══██╗██╔══╝░░██║░░██╗██║░░██║██║╚████║██║╚██╔╝██║██╔══██║██║██║░░░░░\n"
12 | printf "\033[1;31m ██║░░██║███████╗╚█████╔╝╚█████╔╝██║░╚███║██║░╚═╝░██║██║░░██║██║███████╗\n"
13 | printf "\033[1;31m ╚═╝░░╚═╝╚══════╝░╚════╝░░╚════╝░╚═╝░░╚══╝╚═╝░░░░░╚═╝╚═╝░░╚═╝╚═╝╚══════╝\n"
14 | printf "\033[1;37m\n\n"
15 | printf ' █▄▄ █▄█ ▀▄▀ ▀█ █▀ █▀\n'
16 | printf ' █▄█ ░█░ █░█ █▄ ▄█ ▄█\n'
17 | printf '\n'
18 | printf '\n'
19 | printf '\n'
20 | printf "\033[1;30m ReconMail es una tool para recolectar correos de una organizacion para ayudar en las tareas de Pentesting.\n"
21 | printf "\033[1;30m El creador de esta herramienta no se hace responsable del mal uso de la misma.\n"
22 | printf '\n'
23 | printf "\033[0;31m NOTA: Dado que se utiliza la API Gratuita de PhoneBook hay un limite de busquedas al dia.\n"
24 | printf "\033[0m\n\n" ; homedir="$(pwd)"
25 |
26 | #ApiKey PhoneBook
27 | key="c7ca2255-89d1-4b9f-bc88-97fe781dd631"
28 |
29 | trap ctrl_c INT
30 | function ctrl_c(){
31 | printf "\033[0;31m\n\n Saliendo...\n"
32 | exit 0
33 | }
34 |
35 | printf "\033[1;36m\n\nComprobando acceso\n"
36 | spinny::start
37 | sleep 1
38 | spinny::stop
39 | printf '\033[1;32m'" 🆁🅴🅲🅾🅽🅼🅰🅸🅻 ✔ \n"'\033[0m\n'
40 | printf '\033[1;37m'
41 | read -p "[*] Introduce el dominio para buscar los correos: " dominio
42 | file="mails-$dominio.txt"
43 |
44 | #Para Debug
45 | #export {http,https,ftp}_proxy='http://127.0.0.1:8080'
46 |
47 | function CorreosPhoneBook(){
48 | consulta=$(curl -s -k -X 'POST' \
49 | -H 'Host: public.intelx.io' \
50 | -H 'Content-Length: 123' \
51 | -H 'Sec-Ch-Ua: \"Chromium\";v=\"92\", \" Not A;Brand\";v=\"99\", \"Google Chrome\";v=\"92\"' \
52 | -H 'Accept: */*' \
53 | -H 'Sec-Ch-Ua-Mobile: ?0' \
54 | -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36' \
55 | -H 'Content-Type: application/x-www-form-urlencoded; charset=UTF-8' \
56 | -H 'Origin: https://phonebook.cz' \
57 | -H 'Sec-Fetch-Site: cross-site' \
58 | -H 'Sec-Fetch-Mode: cors' \
59 | -H 'Sec-Fetch-Dest: empty' \
60 | -H 'Referer: https://phonebook.cz/' \
61 | -H 'Accept-Encoding: gzip, deflate' \
62 | -H 'Accept-Language: es-ES,es;q=0.9' \
63 | --data-binary "{"'"term"'":"'"'$dominio'"'","'"maxresults"'":10000,"'"media"'":0,"'"target"'":2,"'"timeout"'":20}" \
64 | "https://public.intelx.io/phonebook/search?k=$key" | jq '.id' | sed 's/"//g' )
65 | if [ -z "$consulta" ];
66 | then
67 | spinny::start
68 | sleep 2
69 | clear
70 | printf '\n'
71 | printf "\033[1;36m .---------.\n"
72 | printf "\033[1;36m |.-------.|\n"
73 | printf "\033[1;36m ||>Error#||\n"
74 | printf "\033[1;36m || ||\n"
75 | printf "\033[1;36m |'-------'|etf\n"
76 | printf "\033[1;36m .-^---------^-.\n"
77 | printf "\033[1;36m | ---~ AMiGA|\n"
78 | printf "\033[1;36m '-------------'\n"
79 | printf "\033[0;31mGuru meditation: Se ha finalizado por hoy el número máximo de busquedas gratuitas diarias, intentalo mañana.\n"
80 | spinny::stop
81 | exit 0;
82 | else
83 | salida=$(curl -s -k -X 'GET' \
84 | -H 'Host: public.intelx.io' \
85 | -H 'Sec-Ch-Ua: "Chromium";v="92", " Not A;Brand";v="99", "Google Chrome";v="92"' \
86 | -H 'Accept: */*' \
87 | -H 'Sec-Ch-Ua-Mobile: ?0' \
88 | -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36' \
89 | -H 'Origin: https://phonebook.cz' \
90 | -H 'Sec-Fetch-Site: cross-site' \
91 | -H 'Sec-Fetch-Mode: cors' \
92 | -H 'Sec-Fetch-Dest: empty' \
93 | -H 'Referer: https://phonebook.cz/' \
94 | -H 'Accept-Encoding: gzip, deflate' \
95 | -H 'Accept-Language: es-ES,es;q=0.9' \
96 | "https://public.intelx.io/phonebook/search/result?k=$key&id=$consulta&limit=10000" | jq | grep "Email" -A 1 | grep "selectorvalue" | awk '{print $2}' | tr '",' '\r' | tee $file)
97 | fi
98 | }
99 |
100 | CorreosPhoneBook
101 |
102 | printf "\033[1;36m\nObteniendo correos de $dominio \n"
103 | spinny::start
104 | sleep 2
105 | cat $file
106 | spinny::stop
107 | printf '\n\n'
108 | printf "\033[0,33mRESULTADO:\n"
109 | printf "\033[1,36m------------------------------------------------------------------------------\n"
110 | printf "\033[0;32m Se han encontrado un total de $(wc -l $file | awk '{print $1}') correos. ✔ \033[0m\n"
111 | printf "\033[0;32m Fichero Guardado en $file ✔ \033[0m\n"
112 | printf "\033[1,36m------------------------------------------------------------------------------\n"
113 | printf '\n\n'
114 |
115 | exit 0;
116 |
117 |
--------------------------------------------------------------------------------