Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
उपकरण/GitHubGitHub/icecubesandwich/caddysmith
भेद्यता परीक्षण फ्रेमवर्कवेब प्रॉक्सी और अवरोधनआईडीएस/आईपीएस से बचनाकमांड एंड कंट्रोलरेड टीमिंगपेलोड डेवलपमेंट
GitHubicecubesandwich/caddysmith

CaddySmith

Cobalt Strike या Sliver C2 प्रोफाइल से Caddy redirector configs जनरेट करें।

रिपॉजिटरी देखें
23142 महीने पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

CaddySmith

CaddySmith एक छोटा Python स्क्रिप्ट है जो Cobalt Strike या Sliver C2 प्रोफ़ाइल को पढ़ता है और उससे Caddy वेब सर्वर कॉन्फ़िगरेशन बनाता है। उत्पन्न Caddyfile एक सामान्य Linux बॉक्स को रीडायरेक्टर में बदल देता है: वैध बीकन ट्रैफ़िक को आपके टीम सर्वर पर रिवर्स-प्रॉक्सी किया जाता है, और बाकी सब कुछ (स्कैनर, सर्च बॉट, ब्लू टीम प्रोब, रैंडम कर्ल) को एक डिकॉय URL पर भेज दिया जाता है।

मैंने इसे इसलिए लिखा क्योंकि Caddy Apache की तुलना में तेज़ी से खड़ा करने के लिए बहुत ही अनुकूल वेब सर्वर है — एकल स्थिर बाइनरी, स्वचालित Let's Encrypt प्रमाणपत्र, कोई a2enmod डांस नहीं।

केवल अधिकृत अभियान। यह आक्रामक सुरक्षा उपकरण है। इसे केवल उन परिवेशों के विरुद्ध चलाएँ जिनके परीक्षण के लिए आपके पास लिखित अनुमति है।

समर्थित प्रोफ़ाइल प्रारूप

CaddySmith फ़ाइल सामग्री से स्वचालित रूप से प्रारूप का पता लगाता है:

  • Cobalt Strike — क्लासिक टेक्स्ट फ़ॉर्मेट जिसमें set uri "/foo" निर्देश होते हैं। प्रत्येक HTTP-GET / HTTP-POST URI अपने स्वयं के सटीक-पथ मार्ग में बदल जाता है जिसमें प्रोफ़ाइल के क्लाइंट हेडर लागू होते हैं।
  • Sliver — JSON इम्प्लांट कॉन्फ़िगरेशन जो Sliver से निर्यात किया गया है। Sliver में निश्चित URIs नहीं होते हैं; वे बीकन-बिल्ड समय पर path / file / extension सूचियों से उत्पन्न होते हैं। CaddySmith इससे निपटने के लिए शीर्ष-स्तरीय पथ उपसर्गों को glob के रूप में मैच करता है (जैसे path /api* /static* /resources*) और UA से Chrome बिल्ड नंबर पर सबस्ट्रिंग मैच करता है (जो Sliver के प्रति-प्लेटफ़ॉर्म UA पुनर्लेखन में भी जीवित रहता है)।

आप --profile-type cobaltstrike या --profile-type sliver के साथ विशिष्ट पार्सर को भी मजबूर कर सकते हैं।

यह क्या करता है

प्रोफ़ाइल फ़ाइल दिए जाने पर, स्क्रिप्ट निम्नलिखित निकालता है:

  • User-Agent स्ट्रिंग
  • URIs (CS) या पथ उपसर्ग (Sliver)
  • क्लाइंट-साइड हेडर (केवल CS — Sliver विशिष्ट हेडर निर्धारित नहीं करता)
  • Host हेडर (रीडायरेक्टर के डोमेन नाम के रूप में उपयोग किया जाता है यदि आप --server-name पास नहीं करते हैं)
  • क्या स्टेजिंग सक्षम है (केवल CS — set host_stage)

फिर यह एक Caddyfile बनाता है जो:

  1. (वैकल्पिक) सादे HTTP ट्रैफ़िक को 403 लौटाता है
  2. ~15 ज्ञात बुरे user-agent को ब्लॉक करता है (curl, nmap, sqlmap, Googlebot, आदि)
  3. डायरेक्ट-IP एक्सेस और किसी भी HTTP विधि को ब्लॉक करता है जो GET/POST नहीं है
  4. केवल प्रोफ़ाइल के URIs (या Sliver के लिए उपसर्ग) को रिवर्स-प्रॉक्सी करता है, मैचिंग User-Agent पर गेट किया गया
  5. सामान्य स्कैनर प्रोब पथों को ब्लॉक करता है (.env, /wp-admin, .php, आदि)
  6. बाकी सब कुछ आपके डिकॉय URL पर रीडायरेक्ट करता है

आवश्यकताएँ

  • Python 3.7+ (केवल मानक पुस्तकालय का उपयोग करता है, कोई pip install आवश्यक नहीं)
  • रीडायरेक्टर पर ही Caddy 2.x (इंस्टॉल गाइड)

त्वरित प्रारंभ

python3 caddysmith.py my.profile \
    --backend https://teamserver.internal:443 \
    --decoy   https://www.example.com/ \
    --server-name redirector.example.com \
    --email   [email protected] \
    --forbid-http \
    -o redirector.caddy

यह उत्पन्न कॉन्फ़िगरेशन को redirector.caddy में लिखता है और stderr पर इसने क्या किया इसका सारांश प्रिंट करता है।

उत्पन्न कॉन्फ़िगरेशन को तैनात करना

विकल्प A: Caddyfile को सीधे चलाएँ

उत्पन्न फ़ाइल को रीडायरेक्टर पर कॉपी करें और Caddy को इसके विरुद्ध चलाएँ। --adapter caddyfile फ़्लैग की आवश्यकता है क्योंकि Caddy डिफ़ॉल्ट रूप से JSON कॉन्फ़िग का उपयोग करता है:

caddy run --config /etc/caddy/redirector.caddy --adapter caddyfile

अपडेटेड कॉन्फ़िग के साथ चल रहे इंस्टेंस को रीलोड करने के लिए:

caddy reload --config /etc/caddy/redirector.caddy --adapter caddyfile

यदि Caddy फ़ॉर्मेटिंग असंगतियों के बारे में चेतावनी देता है, तो उन्हें इससे साफ़ करें:

caddy fmt --overwrite /etc/caddy/redirector.caddy

विकल्प B: मुख्य Caddyfile से आयात करें

फ़ाइल को /etc/caddy/ में डालें और अपने मुख्य Caddyfile से इसे आयात करें:

# /etc/caddy/Caddyfile
import /etc/caddy/redirector.caddy

यदि आपने --email पास किया (अनुशंसित), तो उत्पन्न स्निपेट में पहले से ही ग्लोबल विकल्प ब्लॉक होता है, इसलिए मुख्य Caddyfile को केवल import लाइन की आवश्यकता है। यदि आपने नहीं किया, तो आयात के ऊपर { } ब्लॉक में ईमेल मैन्युअल रूप से जोड़ें।

फिर मान्य करें और रीलोड करें:

sudo caddy validate --config /etc/caddy/Caddyfile
sudo systemctl reload caddy

Caddy स्वचालित रूप से --server-name में डोमेन के लिए Let's Encrypt प्रमाणपत्र प्रदान करेगा जब तक A रिकॉर्ड रीडायरेक्टर की ओर इशारा करता है।

सभी फ़्लैग्स

फ़्लैगडिफ़ॉल्टक्या करता है
profile(आवश्यक).profile फ़ाइल का पथ
--backendhttps://teamserver.local:443मैच किए गए ट्रैफ़िक को कहाँ प्रॉक्सी करना है
--decoyhttps://www.example.com/अमैच किए गए ट्रैफ़िक को कहाँ रीडायरेक्ट करना है
--server-namec2.example.comआपके रीडायरेक्टर का डोमेन नाम
--policystrictstrict, lax, या none
--profile-typeautocobaltstrike या sliver को बल दें (डिफ़ॉल्ट: ऑटो-डिटेक्ट)
--extra-uri PATH—प्रॉक्सी करने के लिए अतिरिक्त URI (UA जाँच के साथ)। दोहराया जा सकता है।
--lax-uri PATH—प्रॉक्सी करने के लिए अतिरिक्त URI (कोई जाँच नहीं)। दोहराया जा सकता है।
--allow-ua STRING—--extra-uri मार्गों पर अनुमत अतिरिक्त UA। दोहराया जा सकता है।
--forbid-httpबंदसादे HTTP पर 403 लौटाएँ
--email EMAIL—Let's Encrypt पंजीकरण और नवीनीकरण सूचनाओं के लिए ईमेल
-o, --output FILEstdoutकॉन्फ़िगरेशन को एक फ़ाइल में लिखें

पॉलिसी मोड

  • strict (डिफ़ॉल्ट) — User-Agent, सभी क्लाइंट हेडर, डायरेक्ट-IP, HTTP विधि, और प्रोब पथों की जाँच करता है
  • lax — केवल बुरे user-agent को ब्लॉक करता है, कोई प्रति-मार्ग हेडर मैचिंग नहीं
  • none — प्रोफ़ाइल URI पर किसी भी अनुरोध को प्रॉक्सी करता है, कोई फ़िल्टरिंग नहीं

Strict वह है जो आप सामान्यतः चाहते हैं। Lax तब उपयोगी होता है जब आप डिबग कर रहे हों कि असली बीकन क्यों कनेक्ट नहीं हो रहा है।

एक काम किया उदाहरण

मान लें कि आपके पास एक प्रोफ़ाइल है जो Amazon एंडपॉइंट की नकल करती है और आप इसे redirector.0xtb.sh पर तैनात करना चाहते हैं:

python3 caddysmith.py amazon.profile \
    --backend https://10.1.1.10:443 \
    --decoy   https://www.amazon.com/ \
    --server-name redirector.0xtb.sh \
    --forbid-http \
    --policy strict \
    -o /etc/caddy/redirector.caddy

सारांश आपको दिखाता है कि वास्तव में कौन से मार्ग बनाए गए, जैसे:

Routes built:   2
  - [profile-get] /broadcast
  - [profile-post] /1/events/com.amazon.csm.csa.prod

यदि आप पुनर्जीवित करते हैं और कोई मार्ग नहीं देखते हैं, तो स्क्रिप्ट शायद आपकी प्रोफ़ाइल को पार्स करने में विफल रही — stderr पर चेतावनियाँ जाँचें।

Sliver उदाहरण

Sliver इम्प्लांट कॉन्फ़िग (JSON) के लिए:

python3 caddysmith.py sliver-implant.json \
    --backend https://10.1.1.10:443 \
    --decoy   https://www.amazon.com/ \
    --server-name redirector.0xtb.sh \
    --email   [email protected] \
    --forbid-http \
    --policy strict \
    -o /etc/caddy/redirector.caddy

सारांश आपको बताएगा कि Sliver का पता चला और उपसर्ग मार्ग दिखाएगा:

Profile type:   sliver
Routes built:   1
  - [sliver] /api /public /resources /services /static (prefix)

टूल डाउनलोड करें