¿Discourse envió 18K+ correos? O, mi servidor fue hackeado

Voy a ser honesto: no tengo ni idea de cómo redactar este hilo ni de qué información necesito proporcionar para recibir ayuda. Todo lo que sé es que Discourse envió más de 18 000 correos electrónicos y falló al enviar más de 7 000 (después de que mi cuenta de Amazon SES se congelara debido a una tasa de rebote tan alta, alrededor del 20 %). También parece que aún está intentando enviar más de 500 correos.

discorsesk1

EDITO: Mi foro solo tiene 8 miembros.

Conclusión: el puerto 53 estaba abierto, aunque nunca instalé un servidor de nombres. Supongo que fue hackeado (incluso si Sidekiq mostraba todos los procesos, sigo convencido de que fue hackeado).

Mi suposición es que el correo electrónico o Redis estuvieron rotos durante mucho tiempo y hoy se solucionó el problema, enviando un montón de correos encolados.

Puedes revisar en Administración, Correo electrónico, para ver qué se envió.

Solo se han enviado 23 correos electrónicos en total cuando voy allí.

EDITO: El día en que esto ocurrió fue el 10 de abril (acabo de descubrir que fue Discourse quien envió los correos), y no hay ni un solo correo electrónico de ese día.

Entonces, algo más envió los correos electrónicos.

Esa es la mejor explicación.

¿Qué podría haber pasado? No ejecuto nada más en el servidor aparte de Discourse. ¿Podría haber sido atacado o algo así?

También acabo de encontrar esto, en la pestaña de reintentos del panel de Sidekiq, los argumentos son todos algo así:
{"type"=>"digest", "user_id"=>11, "current_site_id"=>"default"}

¿Quizás alguien obtuvo tu contraseña SMTP y envió correos desde otro lugar? ¿Quizás hackearon tu servidor (¿está protegido por contraseña y no tienes fail2ban?)? Algo así.

Hay prácticamente cero probabilidad de que Discourse tenga algo que ver con ello.

Probablemente deberías configurar un nuevo servidor y migrar Discourse allí.

Eso es lo que pensé, así que fui a revisar el último inicio de sesión y fue realizado por mí en marzo.

Puede resultar sorprendente, pero no es difícil editar los registros. O instalar un rootkit que lo haga. Las direcciones a las que estás enviando no existen en Discourse, ¿verdad? Por lo tanto, los mensajes no se enviaron.

Es casi seguro que has sido hackeado.

¿Inicias sesión con una contraseña? ¿Tienes fail2ban?

Busca en Google cómo ver qué puertos están abiertos y verifica si hay alguno abierto además de los 22, 80 y 443.

El único otro puerto abierto además de los 22, 80 y 443 es el 53. No sé qué es fail2ban, pero lo investigaré e intentaré aumentar la seguridad. Supongo que debería proceder a cerrar el puerto 53.

Puedes ver qué lo tiene abierto. No instalaste un servidor de nombres, así que probablemente sea el culpable.

Necesitas crear un nuevo servidor y mudarte allí. No puedes saber qué hay en el servidor. Todo es sospechoso.

¿Qué pasa con los archivos de respaldo? ¿Son seguros para importar allí?

Tus archivos de respaldo de Discourse deberían estar seguros. Incluso podrías crear un nuevo respaldo ahora mismo para asegurarte de tener todos tus datos.

¡Genial, gracias por tu ayuda!

¿Alguna vez publicaste tu app.yml en algún lugar o compartiste alguna captura de pantalla para solucionar problemas?

No, nunca publiqué mi app.yml en ningún lado ni capturas de pantalla.

La captura de pantalla en tu primer mensaje se parece mucho a Sidekiq, que procesa trabajos para todo tipo de cosas además de correos electrónicos. ¿Es esa captura de pantalla de donde obtienes el recuento de 18.000 correos electrónicos?

Sí, pero es exactamente la misma cantidad de correos electrónicos que Amazon SES indica que fueron enviados.

Si te han hackeado, es MUY improbable que los hackers hayan robado tus credenciales y luego hayan enviado los correos a través de Sidekiq.

Si revisas tus registros de correos enviados en /admin/email/sent, ¿ves alguna pista allí sobre por qué hubo tal gran cantidad?

Ya he apagado el servidor, pero si te refieres a los correos electrónicos enviados por Discourse, entonces,