CMS tan conocidos como WordPress, Joomla, Drupal son el punto de mira de CryptoPHP. En la mayoría de los casos el código malicioso es implementado a través de themes y plugins nulled descargados desde sitios web poco fiables, en otras ocasiones el problema (agujero de seguridad) se encuentra en plugins y themes sin actualizar desde hace meses o incluso años.
En cualquiera de los dos casos anteriormente citados, el resultado es el mismo, un WordPress infectado que puede desencadenar diferentes tipos de situaciones:
Envío de SPAM a otros destinatarios de forma masiva y sin control.
Acceso a otros sitios web y datos relevantes dentro del servidor.
Problemas de rendimiento y estabilidad en el sitio web.
El malware en algunos casos extremos puede infectar a los visitantes.
El malware puede hacerte entrar en listas negras de SPAM y malware.
Últimamente muchos sitios web WordPress, Joomla y Drupal (entre otros) se han visto afectados por un tipo de malware llamado CryptPHP, se trata de una puerta trasera que permite al atacante subir malware al servidor para utilizarlo en una botnet.
Finalmente comenzamos a darnos cuenta de que los servidores no habían enviado SPAM y que el problema era otro, fue ahí donde nos dimos cuenta de que algunos sitios web de nuestros clientes estaban infectados.
¿COMO DETECTAR CRYPTPHP-CRYPTOPHP?
Script:
Analizar:
Script en Phyton
Ejecutar:
Podemos detectar CryptPHP de dos formas posibles, la primera es utilizando algún antivirus del servidor y la segunda es dándose cuenta del pésimo rendimiento que puede llegar a tener un sitio web cuando nuestro sitio web esté infectado.
Además, como las “desgracias” normalmente no vienen de una en una, además de tener el servidor infectado posiblemente la dirección IP de tu servidor será añadida a una lista de abusos, malware y spam, las más conocidas son las listas de SpamHaus.
A nivel servidor, podemos utilizar un antivirus o antimalware en nuestro servidor VPS o servidor dedicado para detectar el problema, cuando realizamos un análisis con Maldet para Linux sobre un servidor CentOS podemos ver los siguientes datos:
Si podemos ver lo que sale en la imagen anterior es que Maldet ha detectado CryptPHP en nuestro servidor.
También existe un método manual para encontrar el backdoor, ya que es característico por estar dentro de un archivo llamado “social.png” que realmente es un “social.php” oculto como imagen pero con código malicioso dentro.
Para encontrar el archivo “social.png” infectado en tu servidor puedes utilizar el siguiente comando sobre Linux:
Lo malo es que limpiar correctamente CryptPHP puede ser un proceso bastante difícil, ya que si borramos directamente el archivo “social.png” infectado, nos aparecerá algun error en nuestro WordPress indicándonos que faltan archivos de la instalación, aunque realmente no es así.
CÓMO EVITAR CRYPTPHP
Existe un método muy efectivo para no resultar infectados por el backdoor CryptPHP, el método se basa en seguir estas dos reglas básicas:
No usar ni themes ni plugins nulled.
Actualizar los themes y plugins a la última versión.
Aunque parezca demasiado simple, con estos dos consejos se evitará el 80% de las infecciones de CryptPHP, ya que este backdoor utiliza el software nulled para propagarse y se mantiene oculto e inactivo hasta que se activa e incorpora el servidor a una botnet si no se detecta y bloquea a tiempo.
La gente de FoxitSecurity han publicado una lista de sitios web donde encontraras themes y plugins nulled para WordPress que contienen malware como CryptPHP, de hecho ellos lo definen como la mayor fuente de malware donde puedes acabar infectado con CryptPHP:
CÓMO LIMPIAR UN THEME WORDPRESS CON CRYPTPHP
Lo primero que debemos hacer para limpiar nuestro theme es encontrar y borrar el archivo “social.png”, posteriormente lo que debemos hacer es encontrar la siguiente línea que puede estar una o varias veces en el theme:
La ruta mencionada en el código PHP que puedes ver arriba puede variar dependiendo del tipo de plantilla afectada y de la forma de infección.
Debemos tener en cuenta que si el backdoor o puerta trasera aun sigue abierta, es posible que nuestro sitio web se vuelva a infectar con malware, incluso es posible que vuelva a aparecer CryptPHP.
Análisis de CryptoPHP
Wordpress:
Joomla
Fuente:
https://foxitsecurity.files.wordpres...-foxsrt-v4.pdf
En cualquiera de los dos casos anteriormente citados, el resultado es el mismo, un WordPress infectado que puede desencadenar diferentes tipos de situaciones:
Envío de SPAM a otros destinatarios de forma masiva y sin control.
Acceso a otros sitios web y datos relevantes dentro del servidor.
Problemas de rendimiento y estabilidad en el sitio web.
El malware en algunos casos extremos puede infectar a los visitantes.
El malware puede hacerte entrar en listas negras de SPAM y malware.
Últimamente muchos sitios web WordPress, Joomla y Drupal (entre otros) se han visto afectados por un tipo de malware llamado CryptPHP, se trata de una puerta trasera que permite al atacante subir malware al servidor para utilizarlo en una botnet.
Finalmente comenzamos a darnos cuenta de que los servidores no habían enviado SPAM y que el problema era otro, fue ahí donde nos dimos cuenta de que algunos sitios web de nuestros clientes estaban infectados.
¿COMO DETECTAR CRYPTPHP-CRYPTOPHP?
Script:
Código:
cd /usr/src/
wget http://www.rfxn.com/downloads/maldetect-current.tar.gz -O /usr/src/maldetect-current.tar.gz
tar -xzf maldetect-current.tar.gz
cd maldetect-*
sh install.sh
/usr/local/sbin/maldet -d
/usr/local/sbin/maldet -u
Código:
maldet -a /home/user/public_html/
Código:
wget https://raw.githubusercontent.com/fox-it/cryptophp/master/scripts/check_url.py
chmod +x check_url.py
Código:
./check_url.py --load=/home/domains.list | grep DETECTED
Código:
wget https://raw.githubusercontent.com/fox-it/cryptophp/master/scripts/check_filesystem.py
chmod +x check_filesystem.py
./check_filesystem.py /path/to/file
Código:
$ ./check_filesystem.py --help
Usage: check_filesystem.py [options] directory|file [directory2|file2] [..]
Código:
Options:
-h, --help show this help message and exit
-n, --no-color no color output [default: False]
-p PATTERNS, --patterns=PATTERNS
scan only files matching the patterns (comma
seperated) [default: *.png,*.gif,*.jpg,*.bmp]
Podemos detectar CryptPHP de dos formas posibles, la primera es utilizando algún antivirus del servidor y la segunda es dándose cuenta del pésimo rendimiento que puede llegar a tener un sitio web cuando nuestro sitio web esté infectado.
Además, como las “desgracias” normalmente no vienen de una en una, además de tener el servidor infectado posiblemente la dirección IP de tu servidor será añadida a una lista de abusos, malware y spam, las más conocidas son las listas de SpamHaus.
A nivel servidor, podemos utilizar un antivirus o antimalware en nuestro servidor VPS o servidor dedicado para detectar el problema, cuando realizamos un análisis con Maldet para Linux sobre un servidor CentOS podemos ver los siguientes datos:
Si podemos ver lo que sale en la imagen anterior es que Maldet ha detectado CryptPHP en nuestro servidor.
También existe un método manual para encontrar el backdoor, ya que es característico por estar dentro de un archivo llamado “social.png” que realmente es un “social.php” oculto como imagen pero con código malicioso dentro.
Para encontrar el archivo “social.png” infectado en tu servidor puedes utilizar el siguiente comando sobre Linux:
Código:
find / -type f -name ‘social.png’ | xargs file
find . \( -name \*.jpg -or -name \*.png -or -name \*.jpeg -or -name \*.gif -or -name \*.bmp \) -type f -exec file {} \; | grep “PHP script”
CÓMO EVITAR CRYPTPHP
Existe un método muy efectivo para no resultar infectados por el backdoor CryptPHP, el método se basa en seguir estas dos reglas básicas:
No usar ni themes ni plugins nulled.
Actualizar los themes y plugins a la última versión.
Aunque parezca demasiado simple, con estos dos consejos se evitará el 80% de las infecciones de CryptPHP, ya que este backdoor utiliza el software nulled para propagarse y se mantiene oculto e inactivo hasta que se activa e incorpora el servidor a una botnet si no se detecta y bloquea a tiempo.
La gente de FoxitSecurity han publicado una lista de sitios web donde encontraras themes y plugins nulled para WordPress que contienen malware como CryptPHP, de hecho ellos lo definen como la mayor fuente de malware donde puedes acabar infectado con CryptPHP:
CÓMO LIMPIAR UN THEME WORDPRESS CON CRYPTPHP
Lo primero que debemos hacer para limpiar nuestro theme es encontrar y borrar el archivo “social.png”, posteriormente lo que debemos hacer es encontrar la siguiente línea que puede estar una o varias veces en el theme:
Código:
include('images/social.png'); ?>
Debemos tener en cuenta que si el backdoor o puerta trasera aun sigue abierta, es posible que nuestro sitio web se vuelva a infectar con malware, incluso es posible que vuelva a aparecer CryptPHP.
Análisis de CryptoPHP
Wordpress:
Código:
add_action('wp_head', array( $this, 'JLKCxmYDqGERxDYMhmOj' )); add_action('wp_footer', array( $this, 'JLKCxmYDqGERxDYMhmOj' ));
Joomla
Código:
$NEKXukygfLoADkopeheR = JResponse::getBody(); .. JResponse::setBody($NEKXukygfLoADkopeheR);
Fuente:
https://foxitsecurity.files.wordpres...-foxsrt-v4.pdf