Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
AtlasC2 — Framework C2 in C# incentrato sulle operazioni di Stage 1 | Kitploit
Strumenti/GitHubGitHub/gr1mmie/atlasc2
Framework di ExploitPost-ExploitCommand and ControlRed TeamingSviluppo Payload
GitHubgr1mmie/atlasc2

AtlasC2

Framework C2 in C# incentrato sulle operazioni di Stage 1

Vedi Repository
211424 anni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
Sito web

AtlasC2

Framework C# C2 incentrato sulle operazioni Stage 1

Atlas si basa sull'acquisizione di un punto d'appoggio in un ambiente e sul suo ulteriore utilizzo per introdurre armi C# (attualmente solo C#) tramite un impianto basato su HTTP. Al momento non è molto sicuro dal punto di vista OPSEC... per niente. Attualmente è mirato solo ad ambienti Windows

Nota: Le impostazioni di connessione predefinite sull'impianto sono impostate per connettersi a localhost sulla porta 8080; è possibile modificarle qui

Utilizzo

Avvio del TeamServer

Dopo aver generato un eseguibile del client, del teamserver e dell'impianto, basta eseguire Teamserver.exe per avviare il teamserver

Avvio/Gestione dei Listener

Per avviare un nuovo listener, usa il comando StartListener. Questo comando richiede due parametri: il nome del listener e la porta su cui eseguirlo

image

Il comando Listeners elenca tutti i listener, ViewListener restituisce i dati sul listener specificato e RemoveListener può essere usato per rimuovere un listener dall'elenco

image

Interfacciarsi con gli Impianti

L'elenco degli impianti connessi può essere visualizzato usando il comando Implants

image

Connettersi a un impianto è semplice come Connect <ImpiantoId>. Avete colto il gioco di parole?... ok, adesso mi tolgo di mezzo. Così come il comando Connect viene usato per selezionare un impianto, ViewImplant può essere usato per visualizzare maggiori informazioni sull'impianto selezionato. Il comando Disconnect deseleziona l'impianto attualmente selezionato, come mostrato di seguito.

image

Esecuzione di Attività

Per usare un'attività, questa deve prima essere selezionata usando SetTask. Le opzioni possono essere visualizzate usando TaskOpts e impostate usando SetTaskOpt. Le attività vengono eseguite usando SendTask

image

Visualizzazione delle Attività Precedenti

È possibile visualizzare l'output di un'attività eseguita in precedenza usando TaskOut. TasksOut può essere usato per visualizzare tutte le attività eseguite in precedenza relative all'impianto selezionato.

image

Esecuzione Shell

Atlas permette agli operatori di eseguire comandi sia PowerShell che Cmd usando rispettivamente le attività PSShell e CMDShell. PSShell apre un nuovo runspace ed esegue il comando, quindi anche se powershell.exe è nella lista nera, i comandi PowerShell possono comunque essere eseguiti. Questo metodo bypassa anche la Modalità Linguaggio Vincolato. CMDShell apre un processo cmd.exe e passa il comando al processo. L'esecuzione di un comando PowerShell è stata mostrata sopra, quindi non verrà ripetuta. Nota a margine su CMDShell, molti comandi comuni (inclusi, ma non limitati a, whoami, ipconfig, pwd e cd) sono stati implementati nella funzionalità dell'impianto per evitare la necessità di eseguire tali comandi tramite un processo cmd.exe.

image

Caricamento di assembly C# in memoria

Il caricamento degli assembly richiede alcuni passaggi, a differenza di qualcosa come CobaltStrike che fa tutto con execute-assembly. Innanzitutto, un operatore deve usare l'utilità ByteConvert (a ByteConvert va detto se il file è locale o remoto) per convertire un file archiviato localmente o remoto in un array di byte e memorizzarlo nella variabile assemBytes. Fatto ciò, l'attività Load viene usata per caricare l'assembly nel processo dell'impianto.

image

Visualizzazione degli Assembly Caricati

Per visualizzare gli assembly caricati nel processo dell'impianto, gli operatori possono usare le attività AssemQuery e AssemMethodQuery. La prima restituisce tutti gli assembly caricati, mentre la seconda restituisce tutti i metodi pubblici relativi a un assembly caricato.

image

Lo screenshot conferma che l'assembly TestAssem è stato effettivamente caricato nel processo dell'impianto.

AssemMethodQuery può quindi essere usato per restituire informazioni su TestAssem che un operatore può utilizzare per restituire dati utili all'esecuzione di metodi pubblici.

image

Esecuzione degli Assembly Caricati

Atlas offre l'opzione di eseguire un assembly dal suo punto di ingresso o da un metodo esposto specifico. ExecuteAssem può essere usato per eseguire dal punto di ingresso. Questa attività richiede solo il nome dell'assembly. ExecuteAssemMethod permette l'esecuzione di altri metodi usando le informazioni recuperate da AssemMethodQuery.

image

Per un elenco completo delle funzionalità, visita il wiki

Compilazione

Apri il file .sln e compila tutti e 3 i componenti in modalità Release; le console di uscita e gli eseguibili dovrebbero essere generati in \bin\debug di ogni componente. Devo migliorare questo aspetto.

Da fare

  • Autenticazione
  • Codificare i comandi PowerShell
  • Aggiungere utilità di amministrazione:
    • cp
    • upload/download
  • Keylogger (probabilmente creare uno standalone da caricare nell'impianto)
  • Comandi di persistenza minimi (non so, qualcosa come creare un utente tramite ADSI, creazione di sottoscrizione WMI. Probabilmente creare questi assem standalone da caricare nell'impianto)
  • Consentire la modifica del timing del sonno sull'impianto e implementare jitter
  • Consentire all'operatore di cambiare la porta su cui il TeamServer si avvia tramite CLI
  • Comunicazioni crittografate (uffa, lo so)
  • Manipolazione di AppDomain - Consentire la creazione/rimozione di AppDomain e permettere all'operatore di selezionare in quale AppDomain caricare gli assembly
  • Migliori capacità di estensione
  • Implementare una sorta di sistema di profilazione
  • Compilazione automatizzata:
    • impianto
    • dropper/loader/stager
  • Generazione di shellcode tramite Donut
  • Sarebbe bello avere BOF

Dichiarazione di non responsabilità

Atlas è stato progettato esclusivamente per scopi educativi/etici. Non approvo né sono responsabile per le azioni intraprese dagli utenti di Atlas.

Scarica lo strumento