├── 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 | reconMail logo 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 | reconMail logo 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 | --------------------------------------------------------------------------------