
Sammlung von Offensive-C#-Tooling
Dies ist eine Sammlung von C#-Tools und POCs, die ich für den Einsatz bei Operationen erstellt habe. Jedes Projekt ist so konzipiert, dass es keine externen Bibliotheken verwendet. Öffnen Sie die .SLN-Datei jedes Projekts in Visual Studio und kompilieren Sie als "Release".
| Projekt | Beschreibung | Minimale .NET-Version |
|---|---|---|
| AbandonedCOMKeys | Zählt verlassene COM-Schlüssel (insbesondere InprocServer32) auf. Nützlich für Persistenz, da Sie in einigen Fällen an den fehlenden Speicherort schreiben und mit rundll32.exe -sta {CLSID} aufrufen können. Technik referenziert in diesem Beitrag von @bohops | 4.0 |
| COMHunter | Zählt COM-Server auf, die in LocalServer32- und InProc32-Schlüsseln auf einem System mit WMI festgelegt sind | 4.0 |
| CredPhisher | Fordert den aktuellen Benutzer zur Eingabe seiner Anmeldeinformationen mithilfe der WinAPI-Funktion CredUIPromptForWindowsCredentials auf. Unterstützt ein Argument, um den Nachrichtentext bereitzustellen, der dem Benutzer angezeigt wird. | 3.5 |
| DriverQuery | Sammelt Details zu Treibern auf dem System und filtert optional, um nur solche zu finden, die nicht von Microsoft signiert sind | 3.5 |
| EncryptedZIP | Komprimiert ein Verzeichnis oder eine Datei und verschlüsselt dann die ZIP-Datei mit einem bereitgestellten Schlüssel unter Verwendung von AES256 CFB. Diese Assembly löscht den Schlüssel auch mit RtlZeroMemory aus dem Speicher. Verwenden Sie das enthaltene Decrypter-Programm, um das Archiv zu entschlüsseln. | 3.5 |
| ETWEventSubscription | Ähnlich wie WMI-Ereignisabonnements, nutzt aber die Ereignisablaufverfolgung für Windows. Wenn das Ereignis auf dem System eintritt, derzeit entweder wenn ein Benutzer sich anmeldet oder ein angegebener Prozess gestartet wird, wird die Methode DoEvil() ausgeführt. | 4.6 |
| GPSCoordinates | Verfolgt die GPS-Koordinaten des Systems (derzeit auf 1 km genau), wenn die Standortdienste aktiviert sind. Funktioniert derzeit unter Windows 10, es wird jedoch gehofft, alle Versionen 7+ abzudecken. | 4.0 |
| HijackHunter | Analysiert den PE-Header eines Ziels, um verknüpfte DLLs zu finden, die für Hijacking anfällig sind. Liefert Begründungen und Missbrauchstechniken für jede erkannte Hijacking-Möglichkeit | 4.0 |
| HookDetector | Erkennt gehookedte Native-API-Funktionen im aktuellen Prozess, was auf das Vorhandensein von EDR hinweist | 4.0 |
| ImplantSSP | Installiert eine vom Benutzer bereitgestellte DLL des Security Support Providers (SSP) auf dem System, die beim Systemstart von LSA geladen wird. Die DLL muss SpLsaModeInitialize exportieren. Inspiriert von Install-SSP von @mattifestation. | 3.5 |
| InspectAssembly | Untersucht das CIL einer Ziel-.NET-Assembly auf Aufrufe von Deserialisierern und .NET-Remoting-Nutzung, um bei der Triage potenzieller Privilegieneskalationen zu helfen. | 4.0 |
| JunctionFolder | Erstellt einen Verzeichnisverbindungspunkt im Ordner 'Windows-Zubehör Autostart', wie in den Vault-7-Enthüllungen beschrieben. Beim Start oder wenn ein Benutzer das Verzeichnis durchsucht, wird die referenzierte DLL von verclsid.exe mit mittlerer Integrität ausgeführt. | 3.5 |
| MockDirUACBypass | Erstellt ein simuliertes vertrauenswürdiges Verzeichnis C:\Windows \System32\ und verschiebt eine sich automatisch erhöhende ausführbare Windows-Datei in das simulierte Verzeichnis. Eine vom Benutzer bereitgestellte DLL, die die entsprechenden Funktionen exportiert, wird abgelegt, und wenn die ausführbare Datei ausgeführt wird, wird die DLL geladen und mit hoher Integrität ausgeführt. Technik entdeckt von @ce2wells und beschrieben in diesem Beitrag. | 3.5 |
| PhantomService | Sucht nach und entfernt Nicht-ASCII-Dienste, die mit eingebauten Windows-Tools nicht einfach entfernt werden können. Referenz | 4.0 |
| SessionSearcher | Durchsucht alle verbundenen Laufwerke nach PuTTY-privaten Schlüsseln und RDP-Verbindungsdateien und analysiert sie auf relevante Details. Basiert auf SessionGopher von @arvanaghi. | 4.0 |
| UnquotedPath | Gibt eine Liste von Dienstpfaden ohne Anführungszeichen aus, die sich nicht in System32/SysWow64 befinden, um eine PE darin zu platzieren. ATT&CK-Referenz | 3.5 |