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
PHP-8.1.0-dev-Backdoor — Backdoor User-Agentt de PHP 8.1.0-dev: Ejecución Remota de Código (RCE) | Kitploit
Herramientas/GitHubGitHub/k3ystr0k3r/php-8.1.0-dev-backdoor
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebSeguridad WebSeguridad de Cadena de SuministroDesarrollo de Payloads
GitHubk3ystr0k3r/php-8.1.0-dev-backdoor

PHP-8.1.0-dev-Backdoor

Backdoor User-Agentt de PHP 8.1.0-dev: Ejecución Remota de Código (RCE)

Ver Repositorio
119hace 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

PHP 8.1.0-dev User-Agentt Backdoor de Ejecución Remota de Código (RCE)

Severidad: Crítico (Equivalente CVSS: 10.0)

Tipo de Vulnerabilidad: Backdoor de Cadena de Suministro / Ejecución Remota de Código (RCE)

Software Afectado: PHP 8.1.0-dev (Solo Build de Desarrollo)

Vector de Ataque: Remoto (Sin Autenticación)

Autenticación Requerida: No

Interacción del Usuario: Ninguna

Impacto: Compromiso Total del Sistema


Resumen

El Backdoor User-Agentt de PHP 8.1.0-dev es uno de los compromisos de cadena de suministro más infames en la historia del software de código abierto. A diferencia de las vulnerabilidades tradicionales que surgen de errores de programación, este problema fue el resultado de código malicioso insertado intencionalmente en el repositorio oficial del código fuente de PHP.

El backdoor apareció en los snapshots de desarrollo de PHP 8.1.0-dev durante marzo de 2021, después de que los atacantes comprometieran con éxito la infraestructura Git de PHP. Los commits maliciosos suplantaron a mantenedores de confianza de PHP e introdujeron un mecanismo oculto capaz de ejecutar código PHP arbitrario siempre que se recibiera una cabecera HTTP especialmente manipulada.

Aunque el backdoor estuvo presente solo brevemente antes de ser descubierto y eliminado, cualquier servidor que implementara uno de los builds de desarrollo comprometidos se volvió instantáneamente vulnerable a la Ejecución Remota de Código (RCE) sin autenticación.

Este incidente cambió fundamentalmente el flujo de trabajo de desarrollo de PHP y finalmente condujo a la migración del repositorio fuente de PHP fuera de su infraestructura Git autogestionada. :contentReference[oaicite:0]{index=0}


Por Qué Esta Vulnerabilidad Es Única

La mayoría de las vulnerabilidades de Ejecución Remota de Código se originan en:

  • Desbordamientos de búfer
  • Errores de validación de entrada
  • Corrupción de memoria
  • Fallos lógicos

Esta vulnerabilidad fue diferente.

No era un bug de código.

Era un backdoor plantado deliberadamente oculto dentro del código fuente legítimo de PHP.

En lugar de explotar una debilidad existente, los atacantes modificaron el propio PHP para ejecutar código PHP arbitrario suministrado por cualquier persona que realizara una solicitud HTTP.

Eso convierte este incidente en uno de los ejemplos más conocidos de un ataque a la cadena de suministro de software.


Antecedentes

El 28 de marzo de 2021, aparecieron dos commits sospechosos en el repositorio Git de PHP.

Ambos commits parecían provenir de mantenedores conocidos de PHP.

Inicialmente parecían inofensivos.

Los mensajes de los commits se asemejaban a correcciones ordinarias de erratas.

Sin embargo, los investigadores notaron rápidamente código sospechoso añadido al intérprete de PHP.

El código insertado buscaba en las solicitudes HTTP entrantes una cabecera personalizada:

User-Agentt

Observe la "t" adicional.

Esta sutil diferencia ortográfica ayudó a ocultar el backdoor durante revisiones casuales.

Si la cabecera comenzaba con la cadena de activación:

zerodium

PHP ejecutaba inmediatamente todo lo que venía después usando:

zend_eval_string()

Esto efectivamente permitía a cualquier persona ejecutar código PHP arbitrario de forma remota.

Los commits maliciosos fueron eliminados en cuestión de horas después de su descubrimiento. La investigación indicó posteriormente que los atacantes habían comprometido la infraestructura Git de PHP en lugar de obtener legítimamente las claves de firma de los mantenedores. :contentReference[oaicite:1]{index=1}


Causa Raíz

El código insertado realizaba aproximadamente la siguiente lógica:

Incoming HTTP Request
          │
          ▼
Read User-Agentt Header
          │
          ▼
Does header start with "zerodium"?
          │
      Yes ▼
Execute remaining text as PHP
          │
          ▼
Attacker gains Remote Code Execution

En lugar de tratar la cabecera como metadatos inofensivos, PHP la evaluaba directamente como código PHP ejecutable.


Desglose Técnico

Normalmente, una solicitud HTTP contiene cabeceras similares a:

GET / HTTP/1.1

Host: example.com

User-Agent: Mozilla Firefox

La versión comprometida de PHP procesaba adicionalmente:

User-Agentt:

Si su valor comenzaba con:

zerodium

PHP llamaba a:

zend_eval_string()

El contenido restante se convertía en PHP ejecutable.

Conceptualmente:

User-Agentt:

zerodium
        │
        ▼
zend_eval_string(payload)
        │
        ▼
Remote Code Execution

Flujo del Ataque

Attacker
    │
    │ HTTP Request
    ▼

GET /

User-Agentt: zerodiumsystem("id");

    │
    ▼

PHP 8.1.0-dev

    │
    ▼

Backdoor Triggered

    │
    ▼

system("id")

    │
    ▼

Command Executed

    │
    ▼

Output Returned

Sin autenticación.

Sin sesión.

Sin credenciales.

Una sola solicitud HTTP era suficiente.


¿Por Qué "User-Agentt"?

Los atacantes eligieron intencionalmente

User-Agentt

en lugar de

User-Agent

porque:

  • parecía casi idéntico
  • evadía la revisión casual
  • la mayoría de los desarrolladores ignoran las cabeceras HTTP desconocidas
  • las aplicaciones existentes seguirían funcionando con normalidad

Esta pequeña errata ocultaba un backdoor completo de ejecución remota de código.


Versiones Afectadas

Solo:

PHP 8.1.0-dev

Específicamente los snapshots de desarrollo comprometidos publicados durante el incidente de marzo de 2021.

Las versiones estables como:

  • PHP 7.x
  • PHP 8.0
  • PHP 8.1 Stable

nunca se vieron afectadas.


Requisitos del Ataque

El atacante solo necesitaba:

  • Acceso a la red
  • Conectividad HTTP
  • Un servidor vulnerable con PHP 8.1.0-dev

Sin autenticación.

Sin fuerza bruta.

Sin inicio de sesión.

Sin acceso previo.


Impacto

Una explotación exitosa permite a los atacantes:

  • Ejecutar comandos arbitrarios del sistema operativo
  • Ejecutar código PHP arbitrario
  • Leer archivos sensibles
  • Modificar aplicaciones web
  • Subir webshells
  • Instalar backdoors persistentes
  • Volcar bases de datos
  • Robar credenciales
  • Escalar privilegios
  • Pivotar hacia redes internas más profundas
  • Comprometer completamente el host afectado

En la práctica, esta vulnerabilidad resulta en el compromiso total del servidor.


Mapeo MITRE ATT&CK

TécnicaDescripción
T1195Compromiso de la Cadena de Suministro
T1059Intérprete de Comandos y Scripts
T1505Componente de Software de Servidor
T1105Transferencia de Herramientas de Entrada
T1071Protocolo de Capa de Aplicación
T1106API Nativa
T1055Inyección de Procesos (posible post-explotación)
T1027Archivos o Información Ofuscados

Detección

Los administradores deben investigar inmediatamente los sistemas que expongan:

PHP/8.1.0-dev

dentro de las cabeceras de respuesta como:

X-Powered-By:

PHP/8.1.0-dev

Los registros HTTP también deben examinarse en busca de solicitudes sospechosas que contengan:

User-Agentt

o

zerodium

Muchos sistemas de detección de intrusiones y productos IPS ahora incluyen firmas específicas para este patrón de ataque. :contentReference[oaicite:2]{index=2}


Indicadores de Compromiso (IOCs)

Los posibles indicadores incluyen:

  • Solicitudes que contienen User-Agentt
  • Valores de cabecera que comienzan con zerodium
  • Ejecución inesperada de comandos
  • Archivos PHP desconocidos
  • Nuevas webshells
  • Procesos hijo sospechosos generados por PHP
  • Conexiones de red salientes inexplicables

Complejidad de Explotación

PropiedadValor
AutenticaciónNinguna
Interacción del UsuarioNinguna
ComplejidadMuy Baja
Privilegios RequeridosNinguno
RemotoSí
Descargar herramienta