Limpiar sitios webs infectados por virus

Buscar archivos .php modificados recientemente, en este caso -7 en la última semana.

find . -type f -name ‘*.php’ -mtime -7

Buscar dentro de los archivos php código malicioso:

TIP: The blank space followed by a * means zero or more spaces.

find . -type f -name '*.php' | xargs grep -l "eval *(" --color
find . -type f -name '*.php' | xargs grep -l "base64_decode *(" --color
find . -type f -name '*.php' | xargs grep -l "gzinflate *(" --color
find . -type f -name '*.php' | xargs grep -l "eval *(str_rot13 *(base64_decode *(" --color
find . -type f -name '*.php' | xargs egrep -i "(mail|fsockopen|pfsockopen|stream_socket_client|exec|system|passthru|eval|base64_decode) *\("
find . -type f -name '*.php' | xargs egrep -i "preg_replace *\((['|\"])(.).*\2[a-z]*e[^\1]*\1 *," --color

Checkear que archivos pueden haber cambiado, este truco se hace con dos versiones idénticas de WordPress, la tuya y una descargada, vamos a buscar diferencias en los archivos para ver cuales pueden estar comprometidos:

diff -r wordpress-clean/ wordpress-compromised/ -x wp-content

Tip: asegurase de usar la misma version de WordPress que la que tienes instalada.

Buscar en los directorios con permisos de escritura archivos infectados o que puedan estarlo

search_for_php_in_writable

chmod +x search_for_php_in_writable
find . -type f -name '*.php' > phpfiles.txt
~/search_for_php_in_writable > php_in_writable.txt
find . -type d -perm 0777 > writable_dirs.txt

find_non_php_in_writable

chmod +x find_non_php_in_writable;
~/find_non_php_in_writable;
./find_non_php_in_writable | less
./find_non_php_in_writable > suspicious_files.txt

####Tip. Puedes usar grep -v para excluir de la busqueda resultados que contengan palabras de las búsquedas salvadas anteriormente.

grep -iv 'binary file' suspicious_files.txt | less

find_suspicious_php

chmod +x find_suspicious_php;
~/find_suspicious_php
find . -type d -perm 0770 > writable_dirs.txt

si encuentras archivos maliciosos busca en los logs los accesos a estos archivos para encontrar la ip del hacker que ha hecho la intrusion.

grep -i "ejfyebh\.php" /var/log/apache/access.log | less

TIP: El truco está en encontrar la IP, una vez encuentras la ip, haces búsquedas en tus logs de la ip del hacker que te ha atacado y con ellos puedes llegar a encontrar el truco que ha usado para hackear tu sitio web.

Esto es todo amigos, si necesitáis algún tipo de ayuda no dejéis de escribir unos comentarios.