Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
RefleXXion — RefleXXion ist ein Dienstprogramm, das die Umgehung von User-Mode-Hooks unterstützt, die von AV/EPP/EDR usw. verwendet werden. Um die User-Mode-Hooks zu umgehen, sammelt es zunächst die Syscall-Nummern der Funktionen NtOpenFile, NtCreateSection, NtOpenSection und NtMapViewOfSection aus dem LdrpThunkSignature-Array. | Kitploit
Tools/GitHubGitHub/hlldz/reflexxion
DefensivwerkzeugePrivilege EscalationPersistenzmechanismenIDS/IPS-UmgehungPost-ExploitationRed TeamingArchived
GitHubhlldz/reflexxion

RefleXXion

Repository anzeigen
499108vor 4 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →

Über

RefleXXion ist ein Dienstprogramm, das die Umgehung von User-Mode-Hooks unterstützt, die von AV/EPP/EDR usw. verwendet werden. Um die User-Mode-Hooks zu umgehen, sammelt es zunächst die Syscall-Nummern der Funktionen NtOpenFile, NtCreateSection, NtOpenSection und NtMapViewOfSection aus dem LdrpThunkSignature-Array.

Teilen

RefleXXion

Einleitung

RefleXXion ist ein Dienstprogramm, das dabei helfen soll, User-Mode-Hooks zu umgehen, die von AV/EPP/EDR usw. verwendet werden. Um die User-Mode-Hooks zu umgehen, sammelt es zunächst die Syscall-Nummern von NtOpenFile, NtCreateSection, NtOpenSection und NtMapViewOfSection, die im LdrpThunkSignature-Array gefunden werden. Danach gibt es zwei Techniken, die der Benutzer wählen kann, um die User-Mode-Hooks zu umgehen.

Technik 1 liest die NTDLL als Datei aus C:\Windows\System32\ntdll.dll. Nach dem Parsen wird der .TEXT-Abschnitt der bereits geladenen NTDLL (in der die Hooks durchgeführt werden) im Speicher durch den .TEXT-Abschnitt der sauberen NTDLL ersetzt.

Bei Technik 2 liest NTDLL als Abschnitt aus KnownDlls, \KnownDlls\ntdll.dll. (weil DLL-Dateien in KnownDlls als Abschnitt zwischengespeichert werden.) Nach dem Parsen wird der .TEXT-Abschnitt der bereits geladenen NTDLL (in der die Hooks durchgeführt werden) im Speicher durch den .TEXT-Abschnitt der sauberen NTDLL ersetzt.

Der detaillierte Ablauf der Methodik und aller Techniken ist unten dargestellt.

RefleXXion Ablauf

Verwendung

Sie können das Projekt mit Visual Studio öffnen und kompilieren. Das gesamte Projekt unterstützt die x64-Architektur sowohl für den Debug- als auch für den Release-Modus.

Die RefleXXion-EXE-Lösung generiert die EXE zu PoC-Zwecken. Wenn Sie verstehen möchten, wie das Projekt Schritt für Schritt funktioniert, wird es Ihre Arbeit erleichtern. Die Hauptfunktion enthält die Definitionen der Funktionen Technique1 und Technique2. Kommentieren Sie eine davon aus und kompilieren Sie. Verwenden Sie nicht beide Funktionen gleichzeitig.

Die RefleXXion-DLL-Lösung generiert die DLL, die Sie in den Prozess injizieren, für den Sie die User-Mode-Hooks für NTDLL umgehen möchten. Am Anfang der Datei main.cpp gibt es Definitionen, welche Technik verwendet werden soll. Sie können eine davon auswählen und kompilieren. Setzen Sie nicht alle Werte gleichzeitig, sondern nur die gewünschte Technik. Ein Beispielkonfiguration ist unten angegeben.

root@kitploit:~
// Techniques configuration section
#define FROM_DISK 1 // If you set it to 1, the Technique-1 will be used. For more information; https://github.com/hlldz/RefleXXion
#define FROM_KNOWNDLLS 0 // If you set it to 1, the Technique-2 will be used. For more information; https://github.com/hlldz/RefleXXion

Hinweise zur praktischen Verwendung & OPSEC-Bedenken

  • RefleXXion unterstützt derzeit nur die x64-Architektur.

  • RefleXXion ent-hooked nur NTDLL-Funktionen. Möglicherweise müssen Sie auch andere DLLs (kernel32.dll, advapi32.dll usw.) ent-hooken. Dazu können Sie einfach die erforderlichen Stellen im Projekt bearbeiten.

  • RefleXXion verwendet nur den RWX-Speicherbereich, wenn der Vorgang des Überschreibens des .TEXT-Abschnitts beginnt. Für diesen Vorgang wird kein neuer Speicherbereich erstellt, der vorhandene Speicherbereich (der .TEXT-Abschnitt der bereits geladenen NTDLL) wird auf RWX gesetzt und dann wieder auf RX gesetzt.

    root@kitploit:~
    ULONG oldProtection;
    ntStatus = NtProtectVirtualMemory(NtCurrentProcess(), &lpBaseAddress, &uSize, PAGE_EXECUTE_READWRITE, &oldProtection);
    memcpy()...
    ntStatus = NtProtectVirtualMemory(NtCurrentProcess(), &lpBaseAddress, &uSize, oldProtection, &oldProtection);
    

    P.S. RefleXXion ruft die NtProtectVirtualMemory-API über die sauber installierte NTDLL auf. Es verwendet dafür die Funktion CustomGetProcAddress, da die saubere NTDLL nicht in der InLoadOrderModuleList steht, obwohl sie in den Speicher geladen ist. Daher wird eine Lösung wie hier (https://stackoverflow.com/questions/6734095/how-to-get-module-handle-from-func-ptr-in-win32) nicht funktionieren. Aus diesem Grund existiert und wird die benutzerdefinierte GetProcAddress-Funktion verwendet.

  • Sie können die RefleXXion-DLL von der Festplatte in den Zielprozess laden. Für sensible Arbeiten wie eine Red-Team-Operation werden Sie einen solchen Lauf möglicherweise nicht bevorzugen. Daher können Sie die RefleXXion-DLL mit dem sRDI-Projekt in Shellcode umwandeln oder den RefleXXion-Code in Ihren eigenen Loader oder Ihr eigenes Projekt integrieren.

  • Selbst wenn NTDLL (als Datei oder als Abschnitt) in den injizierten Prozess neu geladen wird, bleibt es nicht geladen. RefleXXion schließt alle geöffneten Handles (Datei- und Abschnittshandles) für eigene Prozesse.

Besonderer Dank & Danksagungen

  • Forschung & PoC zum Sammeln sauberer Systemaufrufe mit LdrpThunkSignature von Peter Winter-Smith, @peterwintrsmith. EDR Parallel-asis through Analysis, https://www.mdsec.co.uk/2022/01/edr-parallel-asis-through-analysis/
  • Windows 10 Parallel Loading Breakdown von Jeffrey Tang. https://blogs.blackberry.com/en/2017/10/windows-10-parallel-loading-breakdown
  • https://stackoverflow.com/questions/42789199/why-there-are-three-unexpected-worker-threads-when-a-win32-console-application-s
  • Shellycoat von Upayan, @slaeryan. https://github.com/slaeryan/AQUARMOURY/tree/master/Shellycoat
Tool herunterladen