Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
cs2modrewrite — Convierte perfiles de Cobalt Strike a scripts modrewrite | Kitploit
Herramientas/GitHubGitHub/threatexpress/cs2modrewrite
Proxies Web e InterceptaciónEvasión de IDS/IPSSeguridad de RedesPruebas de PenetraciónComando y ControlRed Teaming
GitHubthreatexpress/cs2modrewrite

cs2modrewrite

Convierte perfiles de Cobalt Strike a scripts modrewrite

Ver Repositorio
6081165hace 3 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Genera Automáticamente Reglas para Apache mod_rewrite o Nginx para Redirección Inteligente de C2 por HTTP

Python application Este proyecto convierte un perfil de Cobalt Strike en un archivo funcional de mod_rewrite .htaccess o de configuración de Nginx para soportar la redirección por proxy inverso HTTP hacia el teamserver de Cobalt Strike. El uso de proxies inversos proporciona protección a los servidores C2 de backend frente a la elaboración de perfiles, la investigación y la radiación general de fondo de Internet.

Nota: Debes probar y ajustar la salida según sea necesario antes de implementarla, pero estos scripts deberían encargarse del trabajo pesado.

Características

  • Ahora requiere Python 3.0+
  • Soporta las funciones de URI personalizadas de Cobalt Strike a partir de CS 4.0
  • Reglas de reescritura basadas en URI C2 válidas (HTTP GET, POST y Stager) y en la cadena de User-Agent especificada.
    • Resultado: de forma predeterminada, solo las solicitudes a endpoints C2 válidos con una cadena UA especificada se enviarán por proxy al teamserver.
  • Utiliza un perfil Malleable C2 personalizado para crear un archivo .htaccess con las reglas mod_rewrite correspondientes
  • Utiliza un perfil Malleable C2 personalizado para crear una configuración de Nginx con las reglas proxy_pass correspondientes
  • Proxy HTTP o HTTPS hacia el teamserver de Cobalt Strike
  • Redirección HTTP 302 a un sitio legítimo para solicitudes que no coinciden
  • Inicio rápido

    El ejemplo havex.profile se incluye para una prueba rápida.

    1. Ejecuta el script contra un perfil
    2. Guarda la salida en .htaccess o /etc/nginx/nginx.conf en tu redireccionador
    3. Modifica según sea necesario
    4. Recarga o reinicia el servidor web

    Ejemplo de uso de Apache mod_rewrite con un archivo de inclusión remota

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

    Ejemplo de configuración de Apache

    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>
    

    Considera actualizar la cabecera del servidor Apache, ServerTokens y el registro de eventos con algo como lo siguiente.

    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
    

    Ejemplo de uso de Apache mod_rewrite con un archivo .htaccess

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

    Configuración y consejos para la reescritura en Apache

    Habilitar Rewrite y 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 señaló en los comentarios siguientes que si tu perfil Malleable C2 de Cobalt Strike contiene una cabecera Accept-Encoding para gzip, tu instalación de Apache puede comprimir ese tráfico de forma predeterminada y hacer que tu Beacon no responda o funcione incorrectamente. Para superar esto, desactiva mod_deflate (mediante a2dismod deflate) y añade el indicador No Encode ([NE]) a tus reglas de reescritura. (¡Gracias, e0x70i!)"

    Habilitar soporte SSL

    Asegúrate de que las siguientes entradas estén en el archivo de configuración del sitio (p. ej. /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

    Si planeas usar mod_rewrite en archivos .htaccess (en lugar del archivo de configuración del sitio), también necesitas habilitar el uso de archivos .htaccess cambiando AllowOverride None a AllowOverride All. Para todos los sitios web, edita /etc/apache2/apache.conf

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

    Finalmente, reinicia apache una vez más para asegurarte.

    service apache2 restart

    Solución de problemas

    Si necesitas depurar el comportamiento de las reglas de redirección, habilita el rastreo detallado de errores en el archivo de configuración de tu sitio añadiendo la siguiente línea.

    LogLevel alert rewrite:trace5

    A continuación, recarga apache y supervisa /var/log/access.log /var/log/error.log para ver qué reglas coinciden.


    Ejemplo de uso con Nginx

    Instalar Nginx

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

    Nota: nginx-extras es necesario para las cabeceras de servidor personalizadas. Si no puedes obtener este paquete, comenta la línea de la cabecera del servidor en el archivo de configuración resultante.

    Crear reglas de redirección

    Guarda la salida de cs2nginx.py en /etc/nginx/nginx.conf y modifícala según sea necesario (parámetros 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

    Finalmente, reinicia nginx después de modificar el archivo de configuración del servidor.

    service nginx restart

    Reflexiones finales

    Una vez que la redirección esté configurada y funcionando, asegúrate de que tus servidores C2 solo permitan el tráfico entrante desde el redireccionador y tus IPs de confianza (VPN, rangos de oficina, etc.).

    Considera añadir protecciones adicionales al redireccionador mediante restricciones GeoIP (mod_maxmind) y listas negras de user agents e IPs maliciosos. Gracias a @curi0usJack por las ideas.

    Referencias

    • Joe Vest and Andrew Chiles - cs2modrewrite.py blog post

    • @bluescreenofjeff - Cobalt Strike HTTP C2 Redirectors with Apache mod_rewrite

    • Adam Brown - Resilient Red Team HTTPS Redirection Using Nginx

    • Apache - Apache mod_rewrite Documentation

    Descargar herramienta