
अधिकृत सुरक्षा परीक्षण के लिए पूर्ण क्रेडेंशियल हमला सुइट — SSH, FTP, वेब लॉगिन, ब्रूटफोर्स, डिक्शनरी हमले
⚠️ कानूनी नोटिस — केवल अधिकृत सुरक्षा परीक्षण।
इस टूल का उपयोग उन सिस्टमों के विरुद्ध करना जिनके आप स्वामी नहीं हैं या जिनके परीक्षण के लिए आपके पास स्पष्ट लिखित अनुमति नहीं है, कंप्यूटर फ्रॉड एंड एब्यूज़ एक्ट (अमेरिका), कंप्यूटर मिसयूज़ एक्ट (यूके) और दुनिया भर के समकक्ष कानूनों के तहत अवैध है। देखें SECURITY.md।
CredAttack एक मॉड्यूलर, उत्पादन-ग्रेड क्रेडेंशियल परीक्षण सुइट है जो अधिकृत पैठ परीक्षण अभियानों के लिए है। यह पूर्ण क्रेडेंशियल-अटैक जीवनचक्र को कवर करता है:
| चरण | CredAttack क्षमता |
|---|---|
| टोह | डिफ़ॉल्ट क्रेड्स DB (200+ जोड़े), स्मार्ट उपयोगकर्ता-व्युत्पन्न पैटर्न जनरेशन |
| अटैक | 17 प्रोटोकॉल अटैकर, 6 अटैक मोड, बहु-लक्ष्य अभियान |
| चोरी-छिपे | लॉकआउट पहचान, कॉन्फ़िगर करने योग्य दर सीमा, जिटर, प्रॉक्सी रोटेशन |
| रिपोर्टिंग | JSONL ऑडिट लॉग, Jinja2 HTML रिपोर्ट, मिले-क्रेड्स बैनर + फ़ाइल डंप |
| मोड | कमांड | विवरण |
|---|---|---|
| डिक्शनरी | ssh, ftp, smb, … | एक उपयोगकर्ता के विरुद्ध वर्डलिस्ट |
| स्प्रे | spray | उपयोगकर्ता सूची में एक पासवर्ड (लॉकआउट-सुरक्षित) |
| कॉम्बो | combo | हर उपयोगकर्ता × हर पासवर्ड |
| स्मार्ट | smart | उपयोगकर्ता/कंपनी-व्युत्पन्न पैटर्न जनरेशन |
| डिफ़ॉल्ट्स | defaults | 200+ ज्ञात सेवा डिफ़ॉल्ट आज़माएँ |
| बहु-लक्ष्य | multi | होस्ट की सूची में समान अटैक |
| पूर्ण पाइपलाइन | full | सभी प्रोटोकॉल, एक रिपोर्ट |
| # | प्रोटोकॉल | मॉड्यूल | डिफ़ॉल्ट पोर्ट | नोट्स |
|---|---|---|---|---|
| 1 | SSH | ssh.py | 22 | paramiko, कुंजी/पासवर्ड प्रमाणीकरण |
| 2 | FTP | ftp.py | 21 | सक्रिय और निष्क्रिय मोड |
| 3 | HTTP फ़ॉर्म | http_form.py | 80/443 | स्वचालित CSRF टोकन पहचान |
| 4 | HTTP बेसिक | http_basic.py | 80 | RFC 7617 |
| 5 | HTTP डाइजेस्ट | http_digest.py | 80 | RFC 7616 |
| 6 | SMB | smb.py | 445 | impacket, NTLM |
| 7 | RDP | rdp.py | 3389 | impacket NLA |
| 8 | SMTP | smtp.py | 587 | STARTTLS |
| 9 | POP3 | pop3.py | 110 | APOP समर्थन |
| 10 | IMAP | imap.py | 143 | STARTTLS |
| 11 | MySQL | mysql.py | 3306 | mysql-connector-python |
| 12 | MSSQL | mssql.py | 1433 | pymssql |
| 13 | Redis | redis_proto.py | 6379 | AUTH कमांड |
| 14 | MongoDB | mongodb.py | 27017 | pymongo |
| 15 | WinRM | winrm.py | 5985 | NTLM, pywinrm |
| 16 | LDAP | ldap_proto.py | 389 | ldap3, rootDSE स्वचालित पहचान |
| 17 | Telnet | telnet.py | 23 | रॉ TCP |
| 18 | VNC | vnc.py | 5900 | रॉ DES चैलेंज-रिस्पॉन्स |
credattack.py ← पतला शिम: `python credattack.py ...` एक चेकआउट से
│
├── credattack/cli.py ← CLI (Typer) — 8 अटैक-मोड उपकमांड; साथ ही
│ `credattack` कंसोल स्क्रिप्ट जब pip-स्थापित हो
├── credattack/core/
│ ├── config.py ← Pydantic v2 Settings, CREDATTACK_* env-var ओवरराइड
│ ├── engine.py ← AttackEngine (ThreadPoolExecutor + Rich प्रगति UI)
│ ├── lockout.py ← LockoutDetector (स्लाइडिंग-विंडो, थ्रेड-सुरक्षित)
│ ├── proxy.py ← ProxyRotator (राउंड-रॉबिन, स्वास्थ्य-जाँच, पदावनति)
│ ├── mutator.py ← PasswordMutator (leet, मौसमी, प्रत्यय, कीबोर्ड-वॉक…)
│ ├── result.py ← AttemptResult + SessionReport डेटाक्लास
│ ├── report.py ← Jinja2 HTML रिपोर्ट जनरेटर
│ └── logger.py ← Rich लॉगिंग + JSONL ऑडिट लेखक
│
├── credattack/protocols/
│ └── *.py ← 18 ProtocolAttacker कार्यान्वयन
│
├── credattack/data/
│ ├── default_creds.json ← 200+ वास्तविक डिफ़ॉल्ट क्रेडेंशियल जोड़े
│ ├── smart_patterns.json ← 140+ उद्यम पासवर्ड टेम्पलेट
│ └── wordlists/ ← प्रति-सेवा डिफ़ॉल्ट पासवर्ड सूचियाँ
│
└── tests/ ← 50+ pytest परीक्षण (यूनिट + प्रोटोकॉल मॉक)
# क्लोन करें और सेट अप करें
git clone https://github.com/amibhai/credential-attacks-toolkit.git
cd credential-attacks-toolkit
python -m venv .venv && source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
# संस्करण जाँचें
python credattack.py --version
# ड्राई-रन (कोई कनेक्शन नहीं — अपनी वर्ड सूचियाँ सत्यापित करें)
python credattack.py ssh -t 192.168.1.100 -u admin -P wordlists/common_passwords.txt --dry-run
# वास्तविक SSH डिक्शनरी अटैक
python credattack.py ssh -t 192.168.1.100 -u admin -P /path/to/rockyou.txt
# पासवर्ड स्प्रे (दर-सीमित, लॉकआउट-सुरक्षित)
python credattack.py spray -t 192.168.1.100 --protocol ssh -U users.txt -p "Summer2024!" --delay 30
# स्मार्ट मोड — उपयोगकर्ता + कंपनी से पैटर्न उत्पन्न करें
python credattack.py smart -t 192.168.1.100 --protocol ssh -u john.doe --company ACME
# सेवा डिफ़ॉल्ट आज़माएँ
python credattack.py defaults -t 192.168.1.100 --protocol mysql
# बहु-लक्ष्य अभियान
python credattack.py multi --targets hosts.txt --protocol ssh -U users.txt -P passes.txt
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install --upgrade pip
pip install -r requirements.txt
make install # मुख्य निर्भरताएँ
make install-dev # + pytest-cov, ruff, mypy
pip install -e . # केवल मुख्य निर्भरताएँ
pip install -e .[full] # + SMB/RDP/MySQL/MSSQL/Redis/MongoDB/WinRM/LDAP
pip install -e .[dev] # + pytest/ruff/mypy
credattack --version # कंसोल स्क्रिप्ट, `python credattack.py` के समतुल्य
docker build -t credattack -f docker/Dockerfile .
docker run --rm credattack --help
# अपनी वर्डलिस्ट माउंट करें और आउटपुट एकत्र करें
docker run --rm \
-v $(pwd)/wordlists:/app/wordlists:ro \
-v $(pwd)/output:/app/output \
credattack ssh -t 192.168.1.100 -u admin -P wordlists/common_passwords.txt
python credattack.py [OPTIONS] COMMAND [ARGS]...
Options:
-V, --version संस्करण दिखाएँ और बाहर निकलें।
--help सहायता दिखाएँ।