Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
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.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
convoC2 — Infrastruttura C2 su Microsoft Teams. | Kitploit
Strumenti/GitHubGitHub/cxnturi0n/convoc2
Meccanismi di PersistenzaEvasione IDS/IPSEsfiltrazione DatiPost-ExploitPenetration TestingCommand and ControlRed TeamingStrumento di Accesso RemotoSviluppo Payload
GitHubcxnturi0n/convoc2

convoC2

Infrastruttura C2 su Microsoft Teams.

7591191 anno 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 →
Vedi Repository
Condividi

convoC2

Indice

  • Introduzione
  • Demo
  • Utilizzo
  • Requisiti
  • Ispirazione
  • Contribuire

Introduzione

Infrastruttura di Command and Control che consente ai Red Teamer di eseguire comandi di sistema su host compromessi tramite Microsoft Teams.
Infiltra dati in tag span nascosti nei messaggi di Microsoft Teams ed esfiltra gli output dei comandi tramite URL di immagini in Adaptive Cards, innescando richieste out-of-bound verso un server C2.
L'assenza di comunicazione diretta tra la vittima e l'attaccante, unita al fatto che la vittima invia solo richieste http ai server Microsoft e che gli antivirus non ispezionano i file di log di MS Teams, rende il rilevamento più difficile.

convoC2-Architecture

Demo

Il seguente video mostra l'utilizzo del server per controllare due host compromessi: uno che esegue il nuovo Teams su Windows 11 e l'altro che esegue il vecchio Teams su Windows 10. Nel primo caso, l'attaccante non appartiene alla stessa organizzazione della vittima.

https://github.com/user-attachments/assets/d9fcccc1-de73-49cd-aaa7-df53303dbc6a

Nota: Nel primo caso la vittima ha già accettato la chat con l'attaccante esterno, ma in uno scenario reale in cui l'attaccante avvia la chat con la vittima per la prima volta, la vittima dovrebbe confermare la chat con l'attaccante (sebbene questo messaggio di avviso possa essere facilmente aggirato, vedi qui). Questo non è un problema: poiché i messaggi vengono comunque memorizzati nella cache del file di log, i comandi vengono ricevuti ed eseguiti anche se la vittima non ha ancora visualizzato o accettato la chat.

Utilizzo

Server

wget https://github.com/cxnturi0n/convoC2/releases/download/v0.1.0-alpha/convoC2_server_amd64.tar.gz
tar -xzvf convoC2_server_amd64.tar.gz --one-top-level
root@convoC2-server-VPS:~# ./convoC2_server_amd64 -h
Usage of convoC2 server:
  -t, --msgTimeout  How much to wait for command output (default 30 s)
  -b, --bindIp      Bind IP address (default 0.0.0.0)

Agente

wget https://github.com/cxnturi0n/convoC2/releases/download/v0.1.0-alpha/convoC2_agent.tar.gz
tar -xzvf convoC2_agent.tar.gz --one-top-level
C:\Windows>convoC2_agent.exe -h
Usage of convoC2 agent:
  -v, --verbose   Verbose logging (default false)
  -s, --server    C2 server URL (i.e. http://10.11.12.13/)
  -t, --timeout   Teams log file polling timeout [s] (default 1)
  -w, --webhook   Teams Webhook POST URL
  -r, --regex     Regex to match command (default "<span[^>]*aria-label=\"([^\"]*)\"[^>]*></span>")

Requisiti

Per farlo funzionare, dovrai configurare alcune cose:

  • Creare un canale Teams con Workflow Incoming Webhook: questo è il luogo in cui verranno ricevute le adaptive card contenenti l'output. È importante mantenere aperta una finestra del browser con questo canale mentre si utilizza il server, altrimenti il server non riceverà i messaggi dagli agenti.

WebhookChannel

  • Recuperare gli Id e l'Auth Token: Teams inizializza una chat con una POST a https://teams.microsoft.com/api/chatsvc/emea/v1/threads con gli id univoci della vittima e dell'attaccante nel body. Nella risposta, il threadId verrà restituito nel path dell'url dell'header Location. Il Bearer token della stessa richiesta viene utilizzato per autenticarsi a https://teams.microsoft.com/api/chatsvc/emea/v1/users/ME/conversations/<threadId>/messages, che è l'endpoint per l'invio dei messaggi. Quindi dobbiamo solo recuperare queste tre cose e il server si occuperà del resto.
  • Assicurati di avere un host esposto pubblicamente che consenta traffico HTTP in ingresso sulla porta 80.
  • Teams deve essere in esecuzione sull'host della vittima, anche in background va bene.

Dopo aver avviato il server puoi ricevere nuovi agenti e controllarli, utilizzando i dati ottenuti in precedenza per l'autenticazione. Consulta la demo per un esempio di utilizzo.

Creare un canale Teams con Workflow Incoming Webhook

Prima di tutto, dovrai creare un canale Teams.

CreateTeams

Fai clic con il tasto destro sui tre puntini, poi clicca su "Workflows".

CreateTeams_1

Nella barra di ricerca digita "Webhook" e clicca su "Post to a channel when a webhook request is received".

CreateTeams_5

Continua con le impostazioni predefinite e infine copia l'url.

Create_Teams_6

Recuperare gli Id e l'Auth Token

Inizia cercando la vittima.

GetOrgIds

Dopo aver selezionato l'account della vittima, con il web proxy che intercetta le richieste, puoi inviare un messaggio di prova.

GetOrgIds_1

Salva i due id presenti nella richiesta api/chatsvc/emea/v1/threads poi DROPpa la richiesta. L'auth token sarà il Bearer token della stessa richiesta.

GetOrgIds_2

Scarica lo strumento