
एक Python उपकरण जो HTML को इन्जेस्ट करता है और फिशिंग अभियानों के लिए उपयुक्त HTML स्रोत उत्पन्न करता है।
(यह "बैरल में मछली" वाला मज़ाक है। मुझे श्लेष पसंद हैं!)
एक Python टूल जो HTML को इनजेस्ट करता है और फिशिंग अभियानों के लिए उपयुक्त HTML स्रोत तैयार करता है।
Cooper किसी लक्ष्य वेबसाइट या ईमेल को फिशिंग अभियान में उपयोग के लिए क्लोन करने की प्रक्रिया को सरल बनाता है। बस एक URL खोजें या किसी ईमेल की कच्ची सामग्री डाउनलोड करें जिसे आप उपयोग करना चाहते हैं और इसे Cooper को फीड करें। Cooper सामग्री को क्लोन करेगा और फिर इसे आपके अभियान में उपयोग के लिए स्वचालित रूप से तैयार करेगा। स्क्रिप्ट, चित्र और CSS को सीधे लिंक का उपयोग करने के लिए संशोधित किया जा सकता है, लिंक आपके फिशिंग सर्वर की ओर इंगित करने के लिए बदल दिए जाते हैं, और फॉर्म आपको डेटा भेजने के लिए अपडेट किए जाते हैं - यह सब सेकंडों में। Cooper क्रॉस-प्लेटफ़ॉर्म है और macOS, Linux और Windows के साथ काम करना चाहिए।
wget का उपयोग करके साइट लाने के बाद लिंक और फॉर्म को मैन्युअल रूप से संपादित करने की अब कोई आवश्यकता नहीं है। आप विस्तृत कार्य पर ध्यान केंद्रित कर सकते हैं।
Cooper विभिन्न उद्देश्यों वाले कई मॉड्यूल प्रदान करता है:
src विशेषता सेट करने के लिए आवश्यक पूरा टेक्स्ट आउटपुट करेगा। आउटपुट (शायद बहुत बड़ा) टेक्स्ट का एक ब्लॉब होता है जैसे ``। यही कारण है कि आसान कॉपी/पेस्ट के लिए आउटपुट को किसी फ़ाइल में पाइप करना अक्सर एक अच्छा विचार है।Page Cooper का प्राथमिक मॉड्यूल है। एकमात्र आवश्यक तर्क लक्ष्य URL निर्दिष्ट करने के लिए -t है। फिर आप वैकल्पिक रूप से Requests के बजाय Selenium का उपयोग करने के लिए --selenium जोड़ सकते हैं। मूल रूप से, यदि आउटपुट गलत दिखता है या अधूरा है (उदाहरण के लिए केवल एक पृष्ठभूमि और कुछ स्टाइलिंग), तो --selenium का उपयोग करने का प्रयास करें।
कुछ वेबसाइटों को HTML सामग्री उत्पन्न करने के लिए JavaScript की आवश्यकता होती है। यदि आउटपुट गलत दिखता है या अधूरा है, तो --selenium का उपयोग करने का प्रयास करें।
इसके अतिरिक्त, आप चित्रों, स्क्रिप्ट और स्टाइल शीट के लिए बेस URL के रूप में उपयोग करने के लिए -u के साथ एक URL जोड़ सकते हैं। Cooper आपके लिए सापेक्ष लिंक (जैसे /wp-content/images/foo.bar) को पूर्ण URL से बदल देगा।
-t और -u के लिए हमेशा सही प्रोटोकॉल (यानी http://www.example.com) के साथ मान्य URL प्रदान करें।
सेटिंग्स की पूरी सूची नीचे है:
ईमेल मॉड्यूल तब उपयोगी होता है जब आप किसी ईमेल को नए फ़िश के आधार के रूप में उपयोग करना चाहते हैं। एन्कोडिंग और मल्टी-पार्ट MIME संदेशों को मैन्युअल रूप से संभालना कष्टप्रद हो सकता है, इसलिए Cooper को यह आपके लिए करने दें। यह मॉड्यूल संदेश सामग्री को पार्स करेगा, अनावश्यक भागों (जैसे अटैचमेंट) को हटा देगा, और मुख्य ईमेल बॉडी का पूरी तरह से डीकोड किया गया संस्करण प्राप्त करेगा - वे plain/text या text/html भाग जिनकी आपको परवाह है।
सेटिंग्स की पूरी सूची नीचे है:
जैसा कि ऊपर उल्लेख किया गया है, यह मॉड्यूल एक बार का है। आवश्यक और एकमात्र तर्क एन्कोड करने के लिए चित्र फ़ाइल प्रदान करने के लिए -i है। यह उपयोगी है यदि आप अपना स्वयं का लैंडिंग पेज बना रहे हैं या किसी पेज को संपादित कर रहे हैं और एक चित्र जोड़ने की आवश्यकता है। यदि आप इसे एम्बेड करने का निर्णय लेते हैं, तो इस मॉड्यूल को आज़माएं। यह प्रदान की गई फ़ाइल को Base64 एन्कोड करेगा और चित्र को एम्बेड करने के लिए आवश्यक टेक्स्ट तैयार करेगा।
Cooper को वेबसाइटों को स्क्रैप करने और HTML को पार्स करने के लिए कई लाइब्रेरीज़ की आवश्यकता होती है। सब कुछ इंस्टॉल करने के लिए pip या pipenv का उपयोग करें। pip के लिए एक requirements.txt और pipenv वर्चुअल एनवायरनमेंट के लिए एक Pipfile है। यदि आप pip का उपयोग करते हैं, तो अपने सिस्टम पर Python 3.9 के लिए सही का उपयोग करना सुनिश्चित करें (जैसे, pip3 या pip3.9)।
आप अपने Python संस्करण के साथ pip को कॉल करके सुनिश्चित कर सकते हैं कि सही संस्करण का उपयोग किया गया है:
python3 -m pip install -r requirements.txt
एक वर्चुअल एनवायरनमेंट उपयोग करना और भी आसान है:
pipenv installpipenv shellहेडलेस ब्राउज़र के लिए Selenium का उपयोग करने के लिए Google Chrome स्थापित होना चाहिए और इससे मेल खाने वाली Chromewebdriver फ़ाइल डाउनलोड करनी होगी: https://chromedriver.chromium.org/downloads
वेबड्राइवर को डाउनलोड करें और इस प्रोजेक्ट की रूट में निकालें। आप इसे कहीं और भी रख सकते हैं, लेकिन सुनिश्चित करें कि आप कॉन्फ़िग अपडेट करें (अगला भाग देखें)।
फिर आपको अपनी कॉन्फ़िग फ़ाइल सेट करनी होगी। इस रेपो के साथ प्रदान की गई cooper.config फ़ाइल GoPhish के साथ उपयोग के लिए पूर्व-सेटअप है (URL को {{.URL}} में बदलने के लिए सेट किए गए हैं)। डिफ़ॉल्ट कॉन्फ़िग यह भी मानता है कि आप डायरेक्टरी की रूट में एक Chrome वेबड्राइवर रखेंगे।
कॉन्फ़िग फ़ाइल इस तरह दिखती है:
[Replacement URLs]
landing_page_url_replacement: {{.URL}}
landing_page_form_action: {{.URL}}
email_replacement_url: {{.URL}}
[Browser]
driver_path: ./chromedriver
user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.87 Safari/537.36
आवश्यकतानुसार बदलाव करें। आप विभिन्न फिशिंग प्लेटफ़ॉर्म, अतिरिक्त अटैक सर्वर, या वैकल्पिक उपयोगकर्ता-एजेंट के लिए कई कॉन्फ़िग फ़ाइलें बना सकते हैं। विभिन्न कॉन्फ़िग फ़ाइलों का उपयोग आपकी वैकल्पिक फ़ाइल के साथ -c या --config तर्क शामिल करके किया जा सकता है। अन्यथा, cooper.config फ़ाइल डिफ़ॉल्ट रूप से उपयोग की जाएगी।
[Replacement URLs] सेक्शन में वे सभी URLs हैं जिनका उपयोग Cooper लिंक और फॉर्म एक्शन को बदलते समय करेगा।
landing_page_url_replacement लैंडिंग पेज के लिए उपयोग किया जाने वाला URL है। आप चाह सकते हैं कि यह फिशिंग सर्वर के IP पर सेट हो ताकि आगंतुक वापस लैंडिंग पेज पर रीडायरेक्ट हो जाएं या उन्हें कहीं और भेजा जाए।
landing_page_form_action वह URL है जहाँ आप फॉर्म डेटा भेजना चाहते हैं जब कोई फॉर्म सबमिट किया जाता है।
email_replacement_url ईमेल के लिए उपयोग किया जाने वाला URL है और इसे आपके फिशिंग सर्वर के डोमेन या IP पते पर सेट किया जाना चाहिए।
यदि इनमें से कोई भी URL कुछ भी सेट नहीं है, तो Cooper उन URLs को नहीं बदलेगा। यह landing_page_url_replacement के लिए सबसे व्यावहारिक है जहाँ आप चाह सकते हैं कि लैंडिंग पेज वास्तविक लिंक की ओर इशारा करता रहे। हालाँकि, चेतावनी दी जाती है कि लक्ष्य वेबपेज सीधे लिंक के बजाय सापेक्ष लिंक (जैसे /home.php) का उपयोग कर सकता है, जिसका अर्थ होगा कि आपका लैंडिंग पेज टूटे हुए लिंक से भरा होगा।
[Browser] सेक्शन केवल वेब ब्राउज़िंग से संबंधित सेटिंग्स के लिए है। यदि आप एक अलग ड्राइवर फ़ाइल या स्थान का उपयोग करना चुनते हैं, तो Selenium और Cooper को अपने ब्राउज़र वेबड्राइवर की ओर इंगित करने के लिए इस सेक्शन का उपयोग करें। वेब ब्राउज़िंग के लिए उपयोग किया जाने वाला उपयोगकर्ता-एजेंट भी यहाँ परिभाषित किया गया है। Cooper का एक डिफ़ॉल्ट उपयोगकर्ता-एजेंट है जिसे आप कॉन्फ़िग फ़ाइल के साथ ओवरराइड कर सकते हैं।
चित्रों को टेम्पलेट में एम्बेड करने से पहले Base64 में एन्कोड किया जा सकता है। ऐसा इसलिए किया जाता है ताकि टेम्पलेट वेबसाइट के उपलब्ध होने/चित्रों को उनके स्थान पर रखने पर निर्भर न हों। वेबसाइट के लिए अतिरिक्त आकार (सबसे अधिक संभावना) नगण्य है, लेकिन ईमेल के लिए इस विकल्प का उपयोग करना समस्याग्रस्त हो सकता है। कुछ ईमेल क्लाइंट, जैसे Outlook(!), Base64 चित्रों का समर्थन नहीं करते। लक्ष्य के ईमेल क्लाइंट को ध्यान में रखें।
HTTP सर्वर विकल्प वहां है ताकि आप 127.0.0.1:PORT पर हिट करके Cooper के आउटपुट की आसानी से समीक्षा कर सकें। आप बस HTML फ़ाइल खोल सकते हैं, लेकिन यह उतना साफ-सुथरा नहीं है।
img टैग इस प्रकार दिखते हैं: <img src="https://raw.githubusercontent.com/chrismaddalena/cooper/HEAD/static1.squarespace.com/static/52ebedcae4b0ad4aad060b4a/t/533b687ae4b01d79d0ae12a3/1437187699809/?format=1500w"\>इस परियोजना में उनकी सहायता के लिए Ninjasl0th और Hagbard को विशेष धन्यवाद!