
एक OSINT टूल जो लीक हुए क्रेडेंशियल्स वाली कंपनी के सदस्यों का पता लगाने में मदद करता है
EmploLeaks एक OSINT (ओपन सोर्स इंटेलिजेंस) टूल है जिसमें CLI इंटरफ़ेस है, जो लक्ष्य कंपनी के कर्मचारियों के बारे में जानकारी खोजने और सहसंबंधित करने के लिए डिज़ाइन किया गया है। यह LinkedIn प्रोफाइल एकत्र करने, संभावित कॉर्पोरेट ईमेल उत्पन्न करने, लीक डेटाबेस (आंतरिक रूप से ClickHouse) में फ़िल्टर किए गए क्रेडेंशियल्स खोजने, HaveIBeenPwned के माध्यम से ज्ञात उल्लंघनों की पुष्टि करने, कंपनी के बुनियादी ढांचे की खोज करने और सोशल मीडिया पर कर्मचारियों का प्रोफाइल बनाने में सक्षम बनाता है। सभी जानकारी बाद के विश्लेषण के लिए SQLite में स्थानीय रूप से संग्रहीत की जाती है।
emploleaks/ ├── emploleaks.py # Script principal (CLI interactiva con cmd2) ├── telegram_sync.py # Daemon userbot de Telegram (Telethon, standalone) ├── requirements.txt # Dependencias de Python ├── README.md ├── .gitignore ├── plugins/ │ ├── linkedin.py # Plugin de LinkedIn (scraping de empleados) │ ├── github.py # Plugin de GitHub (repos, stalk, secrets) │ └── hibp.py # Plugin de HaveIBeenPwned (brechas) ├── utils/ │ ├── logging_format.py # Configuración de logging con colores │ ├── ai_classifier.py # Clasificación de roles con IA (OpenAI/Ollama) │ ├── leak_parser.py # Parser de leaks 100% agéntico (loop de IA, sin regex) │ ├── email_lookup.py # Búsqueda de emails en redes sociales (Holehe) │ ├── profile_lookup.py # Búsqueda de usernames en redes sociales (Maigret) │ └── discovery.py # Enumeración de subdominios (assetfinder + SecurityTrails opcional) ├── clickhouse-docker/ # Docker Compose para levantar ClickHouse │ ├── docker-compose.yml │ └── config/ │ └── users.xml ├── leaks_data/ # Carpeta para archivos de leaks a importar (no en git) ├── config/ # Configuración (autogenerado) │ └── tokens.ini # Tokens y credenciales de plugins (no en git) ├── data/ # Base de datos local (autogenerado) │ └── emploleaks.db # SQLite con toda la información recopilada ├── webapp/ # Webapp administrativa │ ├── backend/ # FastAPI (Python) │ └── frontend/ # Next.js (React/TypeScript) └── logs/ # Archivos de log (autogenerado) └── log.txt
## आवश्यकताएँ
- Python 3.10+
- pip
- इंटरनेट कनेक्शन
- **वैकल्पिक:** Docker और Docker Compose (स्थानीय रूप से ClickHouse चलाने के लिए)
- **वैकल्पिक:** [gitleaks](https://github.com/gitleaks/gitleaks) (रिपॉजिटरी में सीक्रेट स्कैनिंग के लिए)
- **वैकल्पिक:** [HaveIBeenPwned](https://haveibeenpwned.com/API/Key) API कुंजी
- LinkedIn प्लगइन के लिए LinkedIn सत्र कुकीज़ (`JSESSIONID` और `li_at`)
## स्थापना
1. रिपॉजिटरी को क्लोन करें:```bash
git clone https://github.com/yourusername/emploleaks.git
cd emploleaks
3. (वैकल्पिक) लीक्स डेटाबेस के लिए Docker के साथ ClickHouse प्रारंभ करें:```bash
cd clickhouse-docker
docker compose up -d
cd ..
टूल को चलाएँ:```bash python emploleaks.py
डीबग मोड के साथ:```bash
python emploleaks.py -d
| कमांड | विवरण |
|---|---|
help | सामान्य सहायता दिखाता है |
help <comando> | किसी विशिष्ट कमांड की सहायता दिखाता है |
quit | एप्लिकेशन से बाहर निकलता है |
| कमांड | विवरण |
|---|---|
add_company --name <nombre> | एक नई कंपनी जोड़ता है |
select_company --name <nombre> | काम करने के लिए एक कंपनी चुनता है |
list_companies | सभी कंपनियों को दिखाता है |
delete_company --name <nombre> | एक कंपनी और उसके सभी डेटा को हटाता है |
| कमांड | विवरण |
|---|---|
use --plugin <nombre> | एक प्लगइन सक्रिय करता है (linkedin, github, hibp) |
deactivate | वर्तमान प्लगइन को निष्क्रिय करता है |
show options | सक्रिय प्लगइन के विकल्प दिखाता है |
setopt <opción> [valor] | प्लगइन के एक विकल्प को कॉन्फ़िगर करता है (यदि मान नहीं दिया जाता है, तो छिपे हुए प्रॉम्प्ट से पूछा जाता है) |
autosave --enable / --disable | config/tokens.ini में स्वचालित कॉन्फ़िगरेशन सेव को सक्षम/अक्षम करता है |
autoload --enable / --disable | config/tokens.ini से स्वचालित कॉन्फ़िगरेशन लोड को सक्षम/अक्षम करता है |
| कमांड | विवरण |
|---|---|
connect_leaks | tokens.ini में सहेजी गई कॉन्फ़िगरेशन का उपयोग करके ClickHouse से कनेक्ट करें |
connect_leaks --host <host> --port <port> --save | विशिष्ट पैरामीटर के साथ कनेक्ट करें और भविष्य के सत्रों के लिए सहेजें |
disconnect_leaks | ClickHouse डेटाबेस से डिस्कनेक्ट करें |
import_leaks [directorio] | क्रेडेंशियल फ़ाइलों को ClickHouse में आयात करें (डिफ़ॉल्ट: leaks_data/) |
import_leaks --no-ai | IA का उपयोग किए बिना केवल ज्ञात प्रारूप वाली फ़ाइलें आयात करें |
create_db --user <user> --passwd <pass> --dbname <db> [--import-data <dir>] | मैन्युअल रूप से ClickHouse डेटाबेस बनाएं (पुराना) |
ClickHouse से कनेक्शन config/tokens.ini में कॉन्फ़िगर किया गया है:```ini
[clickhouse]
host = localhost
port = 9000
user = default
passwd =
dbname = credentials_db
अगर ClickHouse को `tokens.ini` में कॉन्फ़िगर किया गया है, तो प्रारंभ होने पर कनेक्शन स्वचालित रूप से स्थापित हो जाता है।
### क्रेडेंशियल्स और उल्लंघनों की खोज
| कमांड | विवरण |
|---------|-------------|
| `find_passwords <mode>` | ClickHouse + [ProxyNova COMB](https://www.proxynova.com/tools/comb/) (3.2B क्रेडेंशियल्स) में क्रेडेंशियल्स खोजता है। मोड: `find_all`, `only_usernames`, `only_emails` |
| `find_passwords <mode> --no-proxynova` | केवल स्थानीय ClickHouse में खोजता है |
| `find_passwords <mode> --no-clickhouse` | केवल ProxyNova COMB में खोजता है (ClickHouse की आवश्यकता नहीं) |
| `find_passwords <mode> --email <email>` | किसी विशिष्ट ईमेल के लिए क्रेडेंशियल्स खोजता है |
| `find_breaches` | कंपनी के सभी ईमेल के लिए HIBP में उल्लंघन खोजता है (सक्रिय `hibp` प्लगइन आवश्यक) |
**ProxyNova COMB** एक सार्वजनिक डेटाबेस है जिसमें 3.2 अरब लीक किए गए क्रेडेंशियल्स (Combination Of Many Breaches) हैं। इसके लिए API key की आवश्यकता नहीं है और प्रत्येक खोज में स्वचालित रूप से पूछताछ की जाती है। इसे निष्क्रिय करने के लिए `--no-proxynova` का उपयोग करें।
### बुनियादी ढांचे की खोज