www-data está enviando correos fraudulentos a través de sendmail. ¿Cómo encuentro la fuente?

2

Así que tengo un servidor Ubuntu que aloja un sitio web basado en PHP para mí. Algunos de los servicios se basan en la configuración de sendmail . Lo he configurado para enviar a través de mi cuenta de Gmail.

A partir de ayer ~ 19: 00 CET, mi carpeta de "correo enviado" de GMail de repente se vio abrumada con los informes de entrega de correo devuelto de Subsistema de entrega de correo . Pude ver que alguien está intentando enviar correos electrónicos salientes (spam) desde mi sistema usando www-data . Por suerte para mí, también intentaron alterar el campo de campo, que fue rechazado por (AFAIK) Google. Aquí hay una transcripción (sensored) de mail.log :

Feb  4 18:58:10 ip-xxxxx sendmail[740]: s14IwAHQ000740: Authentication-Warning: ip-xxxxx.ec2.internal: www-data set sender to [email protected] using -f
Feb  4 18:58:10 ip-xxxxx sendmail[740]: s14IwAHQ000740: [email protected], size=464, class=0, nrcpts=1, msgid=<[email protected]>, relay=www-data@localhost

He "cerrado" sendmail enviando el ejecutable a 000.

Por lo tanto, me gustaría que Sendmail vuelva a funcionar mientras se cierra el agujero de seguridad. Estoy un poco perdido por dónde empezar. No soy un experto en Linux, aunque he logrado configurar este sistema.

Estoy ejecutando un total de 5 sitios web (hosts virtuales) en el sistema, y estoy bastante seguro de que uno de ellos, y cuál uno de ellos, está comprometido. En el registro anterior, he cambiado el dominio real de uno de mis 5 sitios con "mydomain.com". Así que estoy bastante seguro de que es ese dominio particular el que es atacado. Sin embargo, no puedo encontrar ninguna actividad sospechosa en el registro de acceso de apache. ¿A dónde voy desde aquí?

edit1: ¿Alguien recibió consejos sobre cómo puedo averiguar si un usuario obtuvo el control total de mi cuenta de www-data o si pasa por las llamadas HTTP a un archivo PHP?

Edit2: Encontré este nugget de un archivo al buscar archivos PHP modificados las últimas 48 horas ( había modificado personalmente el cero).

System:

  • Ubuntu 12.04 LTS se ejecuta en Amazon EC2
  • Versión de PHP: 5.3.10-1ubuntu3.2 con Suhosin-Patch (cli) (construido: 13 de junio de 2012 17:19:58)
  • Versión Apache2: 2.2.22
  • Sitio web que ejecuta el sistema PHP Fusion CMS v7.01.01
pregunta Nilzor 04.02.2014 - 20:34
fuente

2 respuestas

3

Por su actualización, supongo que la fusión de PHP es el problema aquí. Parece que hay una amplia gama de vulnerabilidades para versiones más nuevas que la que incluye Inyección de SQL y otras cosas de alto riesgo (información de muestra aquí ), por lo que es razonable suponer que el que está utilizando también es vulnerable ...

Por lo tanto, es probable que sus atacantes tengan acceso a su servidor de esa manera con al menos los privilegios del usuario del servidor web.

En este punto, realmente necesitas ver la reconstrucción del servidor, ya que es muy difícil limpiar a alguien de tu sistema de manera efectiva sin saber exactamente lo que han hecho (por ejemplo, poner rootkits en el sistema)

Si tiene copias de seguridad antes de que comenzara el problema, podría trabajar con eso, aunque podría ser difícil saber exactamente cuándo obtuvieron acceso.

El punto clave sería asegurarte de que tienes versiones actualizadas de todo el software que utilizas y de mantener actualizado el CMS, ya que pueden ser puntos comunes de ataque.

También parece que hay algunos consejos sobre las páginas php fusion ( aquí ) al recuperarse de este tipo de ataque

    
respondido por el Rоry McCune 04.02.2014 - 20:56
fuente
1

Logré rastrear los archivos sin reconstruir todo el servidor, que son  enviando correos spam Esto probablemente está sucediendo debido a cualquier script PHP que es corriendo en su servidor. Por lo general, los hackers están implementando estos scripts que son utilizando métodos eval () para ejecutar el código de correo php de forma aleatoria.

Encontré archivos con un nombre como

  • db.php
  • functions90.php
  • page35.php
  • start.pgp
  • system31.php
  • template.php
  • title.php

¿Cómo encontré estos archivos? Habilité la opción de depuración para ssmtp agregando una línea en el archivo ssmtp.config DEBUG = YES . Luego fui a /var/logs/mail.log y encontré contenido como:

<[email protected]>
Jun 21 10:22:54 megatron sSMTP[19726]: To: [email protected]
Jun 21 10:22:54 megatron sSMTP[19726]: Subject: I've been thinking of you
Jun 21 10:22:54 megatron sSMTP[19726]: X-PHP-Originating-Script: 1002:db.php(1965) : eval()'d code
Jun 21 10:22:54 megatron sSMTP[19726]: Date: Tue, 21 Jun 2016 10:22:54 +0100
Jun 21 10:22:54 megatron sSMTP[19726]: Message-ID: <[email protected]>
Jun 21 10:22:54 megatron sSMTP[19726]: X-Priority: 3
Jun 21 10:22:54 megatron sSMTP[19726]: MIME-Version: 1.0
Jun 21 10:22:54 megatron sSMTP[19726]: Content-Type: multipart/alternative;#015#012#011boundary="b1_a27900aabf9e492a7f0f180afaa7902f"
Jun 21 10:22:54 megatron sSMTP[19726]: Content-Transfer-Encoding: 8bit
Jun 21 10:22:54 megatron sSMTP[19726]: 
Jun 21 10:22:54 megatron sSMTP[19726]: --b1_a27900aabf9e492a7f0f180afaa7902f
Jun 21 10:22:54 megatron sSMTP[19726]: Content-Type: text/plain; charset=us-ascii
Jun 21 10:22:54 megatron sSMTP[19726]: 
Jun 21 10:22:54 megatron sSMTP[19726]: Wanna play with my vibrator in my bedroom?
Jun 21 10:22:54 megatron sSMTP[19726]: 
Jun 21 10:22:54 megatron sSMTP[19726]: Don't break my heart, sweetie!
Jun 21 10:22:54 megatron sSMTP[19726]: 
Jun 21 10:22:54 megatron sSMTP[19726]: Aren't you going to ignore me?
Jun 21 10:22:54 megatron sSMTP[19726]: 

Ahora, si observa detenidamente la cuarta línea del registro de depuración X-PHP-Originating-Script: , se muestra que db.php está ejecutando este script usando eval()'d code .

Solución:
Anoté todos los archivos encontrados en los registros y luego los encontré usando %código% y eliminar todos los archivos mediante una copia de seguridad. Después de eliminar los archivos en el registro de búsqueda de archivos, volví a verificar todos los permisos de mis carpetas.

Debe verificar todos los permisos de la carpeta www nuevamente y mantener la mayoría de ellos en 755 o 644. Si está cargando cualquier archivo utilizando el sitio web, no permita la carga de archivos ejecutables de php, sh o del lado del servidor.

    
respondido por el Engr. Wahab Ahmed 21.06.2016 - 14:04
fuente

Lea otras preguntas en las etiquetas