Entradas etiquetadas con “joomla”

Buscar y eliminar código malicioso en PHP v.2

Basándome en la 1ª versión del buscador-eliminador de código malicioso he re-programado el script para que sea más sencillo el poder añadir los diferentes códigos que nos vayamos encontrando.

Actualizaciones:

17/01/2014: Añadida nueva expresión regular para encontrar código malicioso “document.write(…” en .js
17/01/2014: Añadida revisión de ficheros .js

Antes de nada quiero agradecer a Victor el aporte de uno de los códigos maliciosos encontrados.

En la versión anterior, todo el código de búsqueda y eliminación se centraba en buscar el código eval(base64_decode(“…==”)) para el borrado de dicho código y por el camino buscar algunas posibles vulnerabilidades (como la inclusión de iframes, scripts que cargaban php externos, etc); todo ello gestionando linea a linea cada fichero desde la función aplicar_eval(). El gestionarlo línea a línea se hacía para que llegado el momento pudiésemos saber donde había que hacer la revisión manual o donde se había borrado, pero realmente el borrado era algo indiferente, ya que al borrarlo daba igual que fuéramos a buscar dicha linea. Por lo tanto lo que he hecho en un primer momento ha sido separar la eliminación directa del código conocido de la búsqueda por lineas del posible código a revisar manualmente. Por otro lado, en lugar de tener que ir añadiendo condiciones y comprobaciones a la función, he sacado las expresiones regulares a un array externo, de manera que cada vez que se encuentren nuevos códigos se podrán añadir fácilmente al comienzo del fichero.

Sigue leyendo

Buscar y eliminar código malicioso en wordpress

Se ha creado una nueva versión de este script de borrado.

Ir a la nueva versión
“Buscar y eliminar código malicioso en PHP v.2″

Esta última semana ha sido un caos en el trabajo, nos llegaron varias webs en la que se había inyectado código malicioso que había que limpiar cuanto antes, ya que aparte de los problemas obvios de posibles infecciones en los ordenadores de los visitantes, estaba influyendo en las búsquedas ya que google lo etiquetaba como web con software malintencionado y no permitía el acceso.

Investigando un poco internet se pueden encontrar multitud de páginas que te indican cómo eliminarlo, pero lo que realmente te están diciendo es como encontrarlo (existen sitios gratuitos como http://sitecheck.sucuri.net/scanner/ para buscar código malicioso en los archivos) pero no te dan la posibilidad de eliminarlo sin editar los ficheros manualmente.

Los ficheros más comunes en los que se puede alojar son el malware son : index.php, wp-config.php y los ficheros alojados en  “wp-content/themes/” y “wp-content/plugins/“. Pero el problema no es saber cuales son o encontrarlos, sino el eliminar ese código malicioso; en la última web que tuve que revisar el código malicioso se había alojado en todos los ficheros, y no solamente al comienzo (el lugar mas común también) sino tras todas las aperturas de php “<?php” por lo que había ficheros en los cuales existían hasta 50 códigos maliciosos que había que eliminar a mano uno a uno. Nota: aquí tenemos que ser cuidadosos de borrar solo el código malicioso por lo que esta tarea puede acabar llevando horas y horas (yo lo he sufrido).

En fin, como la mejor forma de hacer algo es hacerlo tu mismo, me he preparado un script que recorre el directorio en el que está alojado (y todos los subdirectorios) en busca de códigos susceptibles de ser malware; entre los que hemos encontrado hasta el momento tenemos:

  • - eval(base64_decode(“chorrazo de caracteres sin sentido acabado en ==”)); // la mayoría de de los casos
  • - carga de php mediante  ficheros javascript  <script src=”ruta/nombre-fichero.js.php”></script>
  • - iframes a urls con código malicioso
  • - código en los .htaccess e inserción de nuevos ficheros con llamadas a $_POST
  • Y aunque no lo hemos encontrado hasta el momento en ninguna de las webs, este también puede ejecutar código malicioso: gzinflate();

Vamos a ver por pasos como podemos detectar y eliminar en la mayoría de los casos el malware de una web.

Sigue leyendo