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
AtlasC2 — C# C2 Framework, das sich auf Phase-1-Operationen konzentriert | Kitploit
Tools/GitHubGitHub/gr1mmie/atlasc2
Exploit-FrameworksPost-ExploitationCommand and ControlRed TeamingPayload-Entwicklung
GitHubgr1mmie/atlasc2

AtlasC2

C# C2 Framework, das sich auf Phase-1-Operationen konzentriert

Repository anzeigen
21142vor 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 →
Teilen
Webseite

AtlasC2

C# C2-Framework, das auf Phase-1-Operationen ausgerichtet ist

Atlas basiert darauf, einen Fuß in einer Umgebung zu fassen und diesen zu nutzen, um C#-Waffen (derzeit strikt C#) mithilfe eines HTTP-basierten Implantats einzuschleusen. Im aktuellen Zustand ist es nicht wirklich OPSEC-sicher … überhaupt nicht. Es zielt derzeit nur auf Windows-Umgebungen ab.

Hinweis: Die Standardverbindungseinstellungen des Implantats sind so eingestellt, dass eine Verbindung zu localhost auf Port 8080 hergestellt wird. Dies kann hier geändert werden.

Verwendung

Starten des TeamServers

Nachdem eine exe des Clients, des TeamServers und des Implantats erstellt wurde, führen Sie einfach Teamserver.exe aus, um den TeamServer zu starten.

Starten/Verwalten von Listenern

Um einen neuen Listener zu starten, verwenden Sie den Befehl StartListener. Dieser Befehl benötigt zwei Parameter: Listener-Name und den Port, auf dem er laufen soll.

Bild

Der Befehl Listeners listet alle Listener auf, ViewListener gibt Daten zum angegebenen Listener zurück, und RemoveListener kann verwendet werden, um einen Listener aus der Liste zu entfernen.

Bild

Interaktion mit Implantaten

Das Auflisten verbundener Implantate erfolgt mit dem Befehl Implants.

Bild

Die Verbindung zu einem Implantat erfolgt einfach mit Connect <ImplantId>. Verstehen Sie, was ich da gemacht habe? … Okay, ich gehe dann mal. So wie der Befehl Connect verwendet wird, um ein Implantat auszuwählen. Mit ViewImplant können weitere Informationen zum ausgewählten Implantat angezeigt werden. Der Befehl Disconnect hebt die Auswahl des aktuell ausgewählten Implantats auf, wie unten gezeigt.

Bild

Ausführen von Aufgaben

Um eine Aufgabe zu verwenden, muss diese zunächst mit SetTask ausgewählt werden. Optionen können mit TaskOpts angezeigt und mit SetTaskOpt gesetzt werden. Aufgaben werden mit SendTask ausgeführt.

Bild

Anzeigen vorheriger Aufgaben

Es ist möglich, die Ausgabe einer zuvor ausgeführten Aufgabe mit TaskOut anzuzeigen. TasksOut kann verwendet werden, um alle zuvor ausgeführten Aufgaben anzuzeigen, die zum ausgewählten Implantat gehören.

Bild

Shell-Ausführung

Atlas ermöglicht es Betreibern, sowohl PowerShell- als auch Cmd-Befehle mit den Aufgaben PSShell bzw. CMDShell auszuführen. PSShell öffnet einen neuen Runspace und führt den Befehl aus, sodass PowerShell-Befehle auch dann ausgeführt werden können, wenn powershell.exe auf der Blacklist steht. Diese Methode umgeht auch den Constrained Language Mode. CMDShell öffnet einen cmd.exe-Prozess und übergibt den Befehl an den Prozess. Die Ausführung eines PowerShell-Befehls wurde oben gezeigt, daher wird sie hier nicht noch einmal gezeigt. Nebenbei bemerkt: Viele gängige Befehle, die mit CMDShell ausgeführt werden (einschließlich, aber nicht beschränkt auf whoami, ipconfig, pwd und cd), wurden in die Funktionalität der Implantate implementiert, um die Notwendigkeit zu vermeiden, solche Befehle über einen cmd.exe-Prozess auszuführen.

Bild

Laden von C#-Assemblies in den Arbeitsspeicher

Das Laden von Assemblies erfordert einige Schritte, anders als bei CobaltStrike, das alles mit execute-assembly erledigt. Zunächst muss ein Betreiber das Hilfsprogramm ByteConvert verwenden (ByteConvert muss mitgeteilt werden, ob die Datei lokal oder remote ist), um eine lokal gespeicherte oder entfernte Datei in ein Byte-Array zu konvertieren und dieses in der Variable assemBytes zu speichern. Sobald dies erledigt ist, wird die Aufgabe Load verwendet, um die Assembly in den Implantatprozess zu laden.

Bild

Anzeigen geladener Assemblies

Um die in den Implantatprozess geladenen Assemblies anzuzeigen, können Betreiber die Aufgaben AssemQuery und AssemMethodQuery verwenden. Ersteres gibt alle geladenen Assemblies zurück, während letzteres alle öffentlichen Methoden einer geladenen Assembly zurückgibt.

Bild

Der Screenshot bestätigt, dass die Assembly TestAssem tatsächlich in den Prozess des Implantats geladen wurde.

AssemMethodQuery kann dann verwendet werden, um Informationen zu TestAssem zurückzugeben, die ein Betreiber nutzen kann, um Informationen zur Ausführung öffentlicher Methoden zu erhalten.

Bild

Ausführen geladener Assemblies

Atlas bietet die Möglichkeit, eine Assembly von ihrem Einstiegspunkt oder einer bestimmten exponierten Methode aus auszuführen. ExecuteAssem kann verwendet werden, um vom Einstiegspunkt aus auszuführen. Diese Aufgabe benötigt nur den Namen der Assembly. ExecuteAssemMethod ermöglicht die Ausführung anderer Methoden unter Verwendung von Informationen, die von AssemMethodQuery abgerufen wurden.

Bild

Eine vollständige Liste der Funktionen finden Sie im Wiki.

Kompilierung

Öffnen Sie die .sln-Datei und erstellen Sie alle 3 Komponenten im Release-Modus. Konsolenfenster und exe-Dateien sollten im \bin\debug-Ordner jeder Komponente generiert werden. Ich muss hierfür noch etwas Besseres entwickeln.

To-Do

  • Authentifizierung
  • PowerShell-Befehle codieren
  • Admin-Hilfsprogramme hinzufügen:
    • cp
    • upload/download
  • Keylogger (wahrscheinlich als eigenständiges Programm zum Laden in das Implantat)
  • Einige grundlegende Persistenzbefehle (keine Ahnung, etwas wie das Erstellen eines Benutzers über ADSI, WMI-Abonnementerstellung. Wahrscheinlich als eigenständige Assemblies zum Laden in das Implantat)
  • Ermöglichen der Änderung des Schlaf-Timings auf dem Implantat und Implementierung von Jitter
  • Dem Betreiber ermöglichen, den Port, auf dem der TeamServer startet, über die CLI zu ändern
  • Verschlüsselte Kommunikation (jaja, ich weiß)
  • AppDomain-Manipulation – Ermöglichen der Erstellung/Entfernung von AppDomains und dem Betreiber die Möglichkeit geben, auszuwählen, in welche AppDomain Assemblies geladen werden sollen
  • Bessere Erweiterbarkeitsmöglichkeiten
  • Implementierung einer Art Profiling-System
  • Automatisierte Kompilierung:
    • Implantat
    • Dropper/Loader/Stager
  • Shellcode-Generierung über Donut
  • BOFs wären cool

Haftungsausschluss

Atlas wurde ausschließlich für Bildungs-/ethische Zwecke entwickelt. Ich befürworte keine Handlungen von Benutzern von Atlas und bin nicht für diese verantwortlich.

Tool herunterladen