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
cs2modrewrite — Convertire i profili Cobalt Strike in script modrewrite | Kitploit
Strumenti/GitHubGitHub/threatexpress/cs2modrewrite
Proxy Web e IntercettazioneEvasione IDS/IPSSicurezza di RetePenetration TestingCommand and ControlRed Teaming
GitHubthreatexpress/cs2modrewrite

cs2modrewrite

Convertire i profili Cobalt Strike in script modrewrite

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

Genera automaticamente ruleset per Apache mod_rewrite o Nginx per il reindirizzamento intelligente di C2 HTTP

Python application Questo progetto converte un profilo Cobalt Strike in un file di configurazione mod_rewrite .htaccess o Nginx funzionante per supportare il reindirizzamento HTTP tramite reverse proxy verso un teamserver Cobalt Strike. L'uso dei reverse proxy fornisce protezione ai server C2 backend da profilazione, indagini e radiazione di fondo generale di Internet.

Nota: dovresti testare e ottimizzare l'output come necessario prima della distribuzione, ma questi script dovrebbero occuparsi del lavoro pesante.

Caratteristiche

  • Ora richiede Python 3.0+
  • Supporta le funzionalità URI personalizzate di Cobalt Strike a partire da CS 4.0
  • Regole di riscrittura basate su URI C2 validi (HTTP GET, POST e Stager) e sulla stringa User-Agent specificata.
    • Risultato: per impostazione predefinita, solo le richieste verso endpoint C2 validi con una stringa UA specificata verranno inoltrate al teamserver.
  • Utilizza un profilo Malleable C2 personalizzato per creare un file .htaccess con le corrispondenti regole mod_rewrite
  • Utilizza un profilo Malleable C2 personalizzato per creare una configurazione Nginx con le corrispondenti regole proxy_pass
  • Proxy HTTP o HTTPS verso il teamserver Cobalt Strike
  • Reindirizzamento HTTP 302 verso un sito legittimo per richieste non corrispondenti

Avvio rapido

L'esempio havex.profile è incluso per un test rapido.

  1. Esegui lo script su un profilo
  2. Salva l'output in .htaccess o /etc/nginx/nginx.conf sul tuo redirector
  3. Modifica come necessario
  4. Ricarica\riavvia il server web

Esempio di utilizzo di Apache mod_rewrite con un file include remoto

root@kitploit:~
python3 cs2modrewrite.py -i havex.profile -c https://TEAMSERVER -r https://GOHERE -o /etc/apache2/redirect.rules

Configurazione Apache di esempio

root@kitploit:~
<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html
    RemoteIPHeader X-Forwarded-For

    ErrorLog /var/log/apache2/redirector_error.log
    CustomLog /var/log/apache2/redirector_access.log combined
    ErrorDocument 401 " "
    ErrorDocument 403 " "
    ErrorDocument 404 " "
    ErrorDocument 500 " "
    ErrorDocument 503 " "

    # Include redirect.rules
    Include /etc/apache2/redirect.rules
</VirtualHost>

Valuta di aggiornare l'header del server Apache, ServerTokens e il logging con qualcosa di simile al seguente.

root@kitploit:~
## Update Apached Server Header, ServerTokens, and logging
echo "Update Update Apached Server Header, ServerTokens, and logging"
sed -i -e 's/\(ServerTokens\s\+\)OS/\1Prod/g' /etc/apache2/conf-enabled/security.conf
sed -i -e 's/\(ServerSignature\s\+\)On/\1Off/g' /etc/apache2/conf-enabled/security.conf
echo "SecServerSignature Server" >> /etc/apache2/conf-enabled/security.conf
echo "LogLevel alert rewrite:trace2" >> /etc/apache2/conf-enabled/security.conf

## Update Apached remoteip.conf
echo "Update Apached remoteip.conf"
echo "RemoteIPHeader X-Forwarded-For" >> /etc/apache2/conf-enabled/remoteip.conf

## Restart apache server
echo "Restart apache server"
systemctl restart apache2

Esempio di utilizzo di Apache mod_rewrite con un file .htaccess

root@kitploit:~
python3 cs2modrewrite.py -i havex.profile -c https://TEAMSERVER -r https://GOHERE -o /var/www/html/.htaccess

Configurazione e suggerimenti per Apache Rewrite

Abilita Rewrite e Proxy

root@kitploit:~
apt-get install apache2
a2enmod rewrite headers proxy proxy_http ssl cache
a2dismod -f deflate
service apache2 reload

Nota: https://bluescreenofjeff.com/2016-06-28-cobalt-strike-http-c2-redirectors-with-apache-mod_rewrite/ "e0x70i ha sottolineato nei commenti qui sotto che se il tuo profilo Malleable C2 di Cobalt Strike contiene un header Accept-Encoding per gzip, la tua installazione Apache potrebbe comprimere quel traffico per impostazione predefinita e causare un Beacon non reattivo o con funzionamento errato. Per superare questo problema, disabilita mod_deflate (tramite a2dismod deflate) e aggiungi il flag No Encode ([NE]) alle tue regole di riscrittura. (Grazie, e0x70i!)"

Abilita il supporto SSL

Assicurati che le seguenti voci siano presenti nella configurazione del sito (es. /etc/apache2/available-sites/*.conf)

root@kitploit:~
# Enable SSL
SSLEngine On
# Enable SSL Proxy
SSLProxyEngine On
# Trust Self-Signed Certificates generated by CobaltStrike
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
SSLProxyCheckPeerExpire off

.HTACCESS

Se hai intenzione di usare mod_rewrite nei file .htaccess (invece che nel file di configurazione del sito), devi anche abilitare l'uso dei file .htaccess cambiando AllowOverride None in AllowOverride All. Per tutti i siti web, modifica /etc/apache2/apache.conf

root@kitploit:~
<Directory /var/www/>
    Options FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    allow from all
</Directory>

Infine, riavvia Apache ancora una volta per sicurezza.

service apache2 restart

Risoluzione dei problemi

Se devi diagnosticare il comportamento delle regole di reindirizzamento, abilita il tracciamento dettagliato degli errori nel file di configurazione del tuo sito aggiungendo la seguente riga.

LogLevel alert rewrite:trace5

Quindi, ricarica Apache e monitora /var/log/access.log /var/log/error.log per vedere quali regole corrispondono.


Esempio di utilizzo di Nginx

Installa Nginx

root@kitploit:~
apt-get install nginx nginx-extras

Nota: nginx-extras è necessario per gli header server personalizzati. Se non riesci a ottenere questo pacchetto, commenta la riga dell'header server nel file di configurazione risultante.

Crea le regole di reindirizzamento

Salva l'output di cs2nginx.py in /etc/nginx/nginx.conf e modificalo come necessario (parametri SSL).

python3 ./cs2nginx.py -i havex.profile -c https://127.0.0.1 -r https://www.google.com -H mydomain.local >/etc/nginx/nginx.conf

Infine, riavvia nginx dopo aver modificato il file di configurazione del server.

service nginx restart

Considerazioni finali

Una volta configurato e funzionante il reindirizzamento, assicurati che i tuoi server C2 consentano l'ingresso solo dal redirector e dai tuoi IP fidati (VPN, range dell'ufficio, ecc.).

Prendi in considerazione l'aggiunta di ulteriori protezioni per il redirector utilizzando restrizioni GeoIP (mod_maxmind) e blacklist di user agent e intervalli IP dannosi. Grazie a @curi0usJack per le idee.

Riferimenti

  • Joe Vest e Andrew Chiles - post del blog su cs2modrewrite.py

  • @bluescreenofjeff - Redirectori HTTP C2 di Cobalt Strike con Apache mod_rewrite

  • Adam Brown - Reindirizzamento HTTPS resiliente per Red Team con Nginx

  • Apache - Documentazione di Apache mod_rewrite

Scarica lo strumento