
TCP पोर्ट पुनर्निर्देशन उपयोगिता
PortBender एक TCP पोर्ट रीडायरेक्शन उपयोगिता है जो रेड टीम ऑपरेटर को एक TCP पोर्ट (जैसे, 445/TCP) पर आने वाले ट्रैफ़िक को दूसरे TCP पोर्ट (जैसे, 8445/TCP) पर रीडायरेक्ट करने की अनुमति देती है। PortBender में एक एग्रेसर स्क्रिप्ट शामिल है जिसका उपयोग ऑपरेटर Cobalt Strike के साथ टूल को एकीकृत करने के लिए कर सकते हैं। हालाँकि, चूंकि यह टूल एक रिफ्लेक्टिव DLL के रूप में लागू किया गया है, यह किसी भी C2 फ्रेमवर्क के साथ एकीकृत हो सकता है जो "ReflectiveLoader" इंटरफ़ेस [1] के माध्यम से मॉड्यूल लोड करने का समर्थन करता है। यह टूल ऑपरेटरों को Duqu 2.0 खतरे वाले अभिनेता (threat actor) द्वारा उपयोग की जाने वाली "PortServ.sys" क्षमता में लीवरेज किए गए बैकडोर/परसिस्टेंस (persistence) तंत्र का अनुकरण करने की भी अनुमति देता है।
PortBender विंडोज फ़िल्टरिंग प्लेटफ़ॉर्म (WFP) का उपयोग करके नेटवर्क ट्रैफ़िक को इंटरसेप्ट करने के लिए WinDivert लाइब्रेरी का लाभ उठाता है। PortBender का डिज़ाइन DivertTCPConn उपयोगिता से काफी प्रभावित है, जो WinDivert लाइब्रेरी [1] का भी लाभ उठाती है।
PortBender के दो ऑपरेशन मोड हैं। पहला "रीडायरेक्टर मोड" (redirector mode) है, और दूसरा "बैकडोर मोड" (backdoor mode) है। "रीडायरेक्टर मोड" में, लक्षित गंतव्य पोर्ट (जैसे, 445/TCP) से कोई भी कनेक्शन वैकल्पिक पोर्ट (जैसे, 8445/TCP) पर रीडायरेक्ट हो जाता है। "बैकडोर मोड" में, हम केवल ट्रैफ़िक को रीडायरेक्ट करते हैं यदि कोई हमलावर लक्ष्य पोर्ट (जैसे, 443/TCP) पर विशेष रूप से फ़ॉर्मेट किया गया TCP पैकेट भेजता है। PortBender तब उस क्लाइंट IP पते को बैकडोर क्लाइंट की सूची में जोड़ता है और उस लक्ष्य पोर्ट के सभी ट्रैफ़िक को वैकल्पिक पोर्ट (जैसे, 3389/TCP) पर रीडायरेक्ट करता है। एक ऑपरेटर इस तंत्र का उपयोग Duqu 2.0 खतरे वाले अभिनेता द्वारा Kaspersky से समझौता करते समय उपयोग की जाने वाली परसिस्टेंस तकनीक का अनुकरण करने के लिए कर सकता है।
PortBender को निष्पादित करने के लिए हमें पहले Cobalt Strike में "PortBender.cna" स्क्रिप्ट आयात करनी होगी और ऑपरेटिंग सिस्टम आर्किटेक्चर के आधार पर "PortBender.zip" में शामिल WinDivert32.sys या WinDivert64.sys बाइनरी को लक्ष्य होस्ट पर अपलोड करना होगा। PortBender के लिए उदाहरण उपयोग के साथ हेल्प मेनू नीचे दिखाया गया है:
beacon> help PortBender
Redirect Usage: PortBender redirect FakeDstPort RedirectedPort
Backdoor Usage: PortBender backdoor FakeDstPort RedirectedPort Password
Examples:
PortBender redirect 445 8445
PortBender backdoor 443 3389 praetorian.antihacker
उदाहरण के लिए, हम एक समझौता किए गए विंडोज सिस्टम से SMB रिले हमला (SMB relay attack) करने के लिए PortBender को रीडायरेक्टर मोड में निष्पादित करना चाह सकते हैं। इसे सुविधाजनक बनाने के लिए, हम PortBender को 445/TCP पर सभी ट्रैफ़िक को वैकल्पिक पोर्ट 8445/TCP पर रीडायरेक्ट करने का निर्देश दे सकते हैं जहाँ एक हमलावर SMB सेवा चल रही है। इस उदाहरण में, हम इसे प्राप्त करने के लिए "PortBender redirect 445 8445" कमांड चलाते हैं। अपेक्षित आउटपुट नीचे है:
इस उदाहरण में, हम एक समझौता किए गए इंटरनेट-फेसिंग IIS वेबसर्वर पर गुप्त परसिस्टेंस तंत्र (covert persistence mechanism) को तैनात करना चाहते हैं। यहाँ हम "PortBender backdoor 443 3389 praetorian.antihacker" चलाते हैं ताकि बैकडोर सेवा को समझौता किए गए होस्ट पर किसी भी IP पते से 443/TCP से 3389/TCP पर कनेक्शन रीडायरेक्ट करने का निर्देश दिया जा सके जो निर्दिष्ट "praetorian.antihacker" कीवर्ड प्रदान करता है। अपेक्षित आउटपुट नीचे दिखाया गया है:
[1] https://github.com/Arno0x/DivertTCPconn
[2] https://github.com/stephenfewer/ReflectiveDLLInjection
[3] https://github.com/basil00/Divert
[4] https://diablohorn.com/2018/08/25/remote-ntlm-relaying-through-meterpreter-on-windows-port-445