Problème d'intrusion postfix debian

Comment trouver la faille ?

a marqué ce sujet comme résolu.

Bonjour,

Je dispose d'un serveur dédié hébergé chez OVH. J'ai reçu aujourd'hui un email m'indiquant que le port 25 de mon serveur avait temporairement été fermé à cause de la détection de plusieurs emails spam en provenance de mon serveur.

Ce n'est bien sur pas moi qui ai envoyé ces messages, je suis donc entrain de vérifié les logs de mon serveur afin de détecter la faille qui a pu permettre cette intrusion. Le problème est que je n'y connais pas grand chose et en cherchant j'ai trouvé que les premiers messages envoyé date du 8 février à 22h59.

Dans les logs je voie qu'à cette heure-ci j'ai ce qui semble être une connexion smtp ainsi que l'envoi d'un message :

1
2
3
4
5
6
7
8
Feb  8 22:59:38 *** postfix/smtpd[17072]: connect from unknown[93.171.*.*]
Feb  8 22:59:42 *** postfix/smtpd[17072]: warning: unknown[93.171.*.*]: SASL LOGIN authentication failed: UGFzc3dvcmQ6
Feb  8 22:59:47 *** postfix/smtpd[17316]: warning: 186.190.*.*: hostname 186-190-*-*.accesshaiti.net verification failed: Name or service not known
Feb  8 22:59:47 *** postfix/smtpd[17316]: connect from unknown[186.190.*.*]
Feb  8 22:59:54 *** postfix/smtpd[17316]: D80169C00D6: client=unknown[186.190.*.*], sasl_method=LOGIN, sasl_username=nom@monDomaine.fr
Feb  8 22:59:59 *** postfix/cleanup[17320]: D80169C00D6: message-id=<4FB5FA7B15C1EF7CA0A5EC52967F0654@monDomaine.fr>
Feb  8 23:00:00 *** postfix/qmgr[4147]: D80169C00D6: from=<nom@monDomaine.fr>, size=21248, nrcpt=1 (queue active)
Feb  8 23:00:02 *** postfix/smtpd[17316]: disconnect from unknown[186.190.*.*]

Je n'arrive pas à déchiffrer correctement ces logs, est-ce que ceci correspond bien à l'envoi avec succès d'un email depuis mon adresse email ?

Si je regarde mes logs Queue mail j'ai un bon nombre de messages de ce type :

1
2
3
6D2899C007B 12469 Tue Feb 9 03:56:17 nom@monDomaine.fr
(delivery temporarily suspended: connect to alt4.gmail-smtp-in.l.google.com[173.194.*.*]:25: Connection timed out)
mashenkovlad1@gmail.com

D'après ce que j'ai compris les Queue Mail correspondraient aux messages en attentes d'envoi, j'y vois apparaître mon adresse email ainsi que des adresses emails inconnues, est-ce bien des tentative d'envoi interrompu était donné que l'envoi est temporairement désactivé ? (la désactivation a été faite le 09 février à 00h30.

Pouvez-vous m'aider à trouver d'où peut venir cette intrusion ? me dire si je regarde bien au bon endroit ?

J'attend d'avoir correctement sécurisé mon serveur avant de relancer les services défaillants. Je me renseignerait davantage pour sécuriser plus fortement les accès.

Merci d'avance à vous.

Bonjour,

Je dispose d'un serveur dédié hébergé chez OVH. J'ai reçu aujourd'hui un email m'indiquant que le port 25 de mon serveur avait temporairement été fermé à cause de la détection de plusieurs emails spam en provenance de mon serveur.

Il faut savoir que les règles pour envoyer un mail vers de gros fournisseurs de mail, (gmail, yahoo, etc…) sont particulièrement strictes, avec, parmi d'autres, la présence d'openDKIM qui permet d'identifier les machines émettrices de mail.

Je te conseille cette vidéo qui date un peu mais qui parle de tout ça.

Ensuite en mesure immédiate, je te conseille de vérifier ta configuration, en particulier de vérifier si tu sers de relais de mail.

Ce n'est bien sur pas moi qui ai envoyé ces messages, je suis donc entrain de vérifié les logs de mon serveur afin de détecter la faille qui a pu permettre cette intrusion.

Je ne suis pas spécialiste, mais tes logs semblent bien indiquer une connexion SASL échouée, puis une réussie. SASL est-il correctement configuré ? Un mot de passe est-il exigé pour l'envoi de mails ? Ce mot de passe est-il solide ?

D'après ce que j'ai compris les Queue Mail correspondraient aux messages en attentes d'envoi, j'y vois apparaître mon adresse email ainsi que des adresses emails inconnues,

Donc il y a des chances que tu fasses relais de mails (s'il y a des adresses inconnues) : c'est open-bar pour les spammeurs, voir la solution donnée plus haut. L'envoi de mail ne doit être permis que depuis les adresses de ton domaine, et seulement si elles existent.

Sinon, dernière solution : paramétrer postfix pour qu'il n'envoie pas plus de X mails sur un temps donné : si on lui demande d'envoyer 10 000 mails en une minute, il refuse. Je ne sais plus où c'est dans le master.cf, mais c'est dans la vidéo dont je t'ai donné le lien.

Concernant les relais il ne semble pas que mon serveur les autorises. En regardant dans le fichier "/etc/postfix/main.cf", je trouve cette ligne :

1
relay_domains = mysql:/etc/postfix/mysql-virtual_relaydomains.cf

Dans le fichier "mysql-virtual_relaydomains.cf" je vois qu'ils récupère la configuration faite depuis mysql par ISPConfig. (Je ne l'ai pas précisé plus haut mais mes domaines hébergé sur mon serveur sont géré par ISPConfig) Dans la table correspondante il n'y a rien d'enregistré. En regardant dans la partie Destinataire Relais dans ISPConfig il n'y a aucun relais de configuré.

Est-ce que ceci équivaut bien à une ligne de configuration tel que définie :

1
relay_domains =

Ce qui d'après le site fournis dans le post précédent permet de n'accepter aucun relais, ce qui serait donc ok pour cette partie

Je vais me renseigner concernant la configuration SASL de mon serveur

Petite mise à jour, dans les logs de mes emails j'ai toujours ce genre de messages :

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
Feb 10 13:30:21 *** postfix/error[32708]: D6FC09C01EC: to=, relay=none, delay=101336, delays=101336/0.15/0/0.11, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mx.yandex.ru[213.180.*.*]:25: Connection timed out)
Feb 10 13:30:21 *** postfix/error[32699]: 6D79F9C017A: to=, relay=none, delay=114482, delays=114482/0.18/0/0.07, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to mx.yandex.ru[213.180.*.*]:25: Connection timed out)
Feb 10 13:30:21 *** postfix/error[32691]: 472739C019F: to=, relay=none, delay=113893, delays=113893/0.18/0/0.08, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to alt4.gmail-smtp-in.l.google.com[173.194.*.*]:25: Connection timed out)
Feb 10 13:30:21 *** postfix/error[32702]: 615C69C008A: to=, relay=none, delay=159975, delays=159975/0.17/0/0.07, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to alt4.gmail-smtp-in.l.google.com[173.194.*.*]:25: Connection timed out)
Feb 10 13:30:21 *** postfix/error[32713]: 4BA979C00A5: to=, relay=none, delay=151572, delays=151572/0.17/0/0.09, dsn=4.4.1, status=deferred (delivery temporarily suspended: connect to alt4.gmail-smtp-in.l.google.com[173.194.*.*]:25: Connection timed out)
Feb 10 13:30:24 *** postfix/smtpd[32032]: warning: 93.171.*.*: address not listed for hostname ua38.com
Feb 10 13:30:24 *** postfix/smtpd[32032]: connect from unknown[93.171.*.*]
Feb 10 13:30:27 *** postfix/smtpd[32032]: warning: unknown[93.171.*.*]: SASL LOGIN authentication failed: UGFzc3dvcmQ6
Feb 10 13:30:51 *** postfix/smtp[32694]: connect to imx1.rambler.ru[81.19.*.*]:25: Connection timed out
Feb 10 13:30:51 *** postfix/smtp[32701]: connect to void.blackhole.mx[83.169.*.*]:25: Connection timed out

Inquiétant

Je viens de stopper temporairement postfix directement

+0 -0

Bonsoir,

Après avoir analysé mes logs et chercher à l'aide des message_id l'endroit exacte ou cela a commencé, je tombe sur ces lignes :

1
2
Feb  8 23:51:50 *** postfix/smtpd[6953]: connect from unknown[41.190.*.*]
Feb  8 23:51:55 *** postfix/smtpd[6953]: 82FCA9C00EB: client=unknown[41.190.*.*], sasl_method=LOGIN, sasl_username=nom@monDomaine.fr

Ces lignes apparaissent pour chaque message_id de l'extrait que j'ai. Il s'agit donc d'une connexion réussi à chaque fois si je comprend bien. Cela veux il simplement dire que quelqu'un a trouvé le mot de passe de mon compte email nom@monDomaine.fr ? Je l'ai déjà modifié, c'est l'une des première chose que j'ai fait hier en voyant apparaître mon adresse email dans les logs. Est-ce que cela suffit ou il faut que je vérifie davantage de choses ?

Merci

Ces lignes apparaissent pour chaque message_id de l'extrait que j'ai. Il s'agit donc d'une connexion réussi à chaque fois si je comprend bien.

Il semblerait, oui, d'après cette doc. Voir la fin de la page.

Cela veux il simplement dire que quelqu'un a trouvé le mot de passe de mon compte email nom@monDomaine.fr ?

Possible.

Est-ce que cela suffit ou il faut que je vérifie davantage de choses ?

Si tu as changé ton mot de passe hier et que ça continue aujourd'hui, il est probable soit que quelqu'un l'a retrouvé, soit que tu ne l'a pas changé au bon endroit (par exemple sur l'authentification du panel de gestion au lieu du serveur lui-même).

Donne-nous ta conf SASL aussi.

Il ne me semble pas que ça continue aujourd'hui. La ligne "client=unknown[41.190..], sasl_method=LOGIN, sasl_username=nom@monDomaine.fr" disparaît des logs à partir du moment ou j'ai changé mon mot de passe. Les lignes qui apparaissaient encore aujourd'hui était celle du queue mail, donc ceux qui n'avait pas pu être envoyé. J'ai vider cette liste et je n'ai apparemment plus de messages suspects dans les logs.

Concernant SASL dans main.cf de postfix j'ai ces lignes :

1
2
3
4
5
6
7
smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_sasl_authenticated_header = yes
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, check_recipient_access mysql:/etc/postfix/mysql-virtual_recipient.cf, reject_unauth_destination
[...]
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth

OK, tu t'es donc probablement fait griller ton mot de passe.

Quelques conseils en plus de l'avoir changé :
- toujours utiliser quelque chose de sécurisé (long, avec des caractères spéciaux, chiffres, majuscules, etc…)
- mets en lace une configuration qui t'évite de spammer (cf plus haut dans mes messages précédents). - si tu utilises le même mot de passe ailleurs sur internet, va changer le mot de passe sur tous les sites qui l'utilisent.
- mets en place une configuration qui verrouille les compte s'il y a trop de tentatives ratées dans un certain laps de temps.

Par curiosité, ton compte sert-il à une application pour envoyer des mails ?

Bonjour,

Tout d'abord merci beaucoup à Ezenku qui m'a permis de régler mon problème d'intrusion. Aujourd'hui je remarque qu'il n'y a plus aucun soucis là dessus. Le revers de la médaille est que j'ai énormément de robot qui tente de se connecté à sasl en échouant à chaque fois. J'ai donc améliorer ma configuration de fail2ban, ceux-ci sont directement banni pendant 24 heures si ils échouent une fois à s'y connecté, et j'ai mis une place une règle qui permet de bannir pendant 1 semaine les ip ayant déjà été banni 3 fois durant la dernière semaine.

Cependant j'ai un nombre impressionnant d'ip différente qui tente à longueur de temps de se connecter :

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
2016-02-23 16:19:18,099 fail2ban.actions: WARNING [sasl] Ban 189.15.*.*
2016-02-23 16:22:49,467 fail2ban.actions: WARNING [sasl] Ban 197.159.*.*
2016-02-23 16:22:54,492 fail2ban.actions: WARNING [sasl] Ban 213.213.*.*
2016-02-23 16:23:08,531 fail2ban.actions: WARNING [sasl] Ban 203.83.*.*
2016-02-23 16:31:01,312 fail2ban.actions: WARNING [sasl] Unban 43.240.*.*
2016-02-23 16:33:15,543 fail2ban.actions: WARNING [sasl] Unban 117.253.*.*
2016-02-23 16:35:57,820 fail2ban.actions: WARNING [sasl] Ban 78.4.*.*
2016-02-23 16:38:07,040 fail2ban.actions: WARNING [sasl] Ban 79.22.*.*
2016-02-23 16:40:42,313 fail2ban.actions: WARNING [sasl] Ban 2.178.*.*
2016-02-23 16:46:14,866 fail2ban.actions: WARNING [sasl] Unban 69.57.*.*
2016-02-23 16:57:28,959 fail2ban.actions: WARNING [sasl] Ban 88.32.*.*
2016-02-23 16:57:34,985 fail2ban.actions: WARNING [sasl] Ban 86.57.*.*
2016-02-23 17:05:20,757 fail2ban.actions: WARNING [sasl] Unban 103.246.*.*
2016-02-23 17:07:41,000 fail2ban.actions: WARNING [sasl] Unban 206.214.*.*
2016-02-23 17:19:10,140 fail2ban.actions: WARNING [sasl] Unban 201.214.*.*
2016-02-23 17:20:44,309 fail2ban.actions: WARNING [sasl] Unban 186.190.*.*
2016-02-23 17:26:29,902 fail2ban.actions: WARNING [sasl] Ban 195.19.*.*
2016-02-23 17:26:47,947 fail2ban.actions: WARNING [sasl] Ban 185.101.*.*
2016-02-23 17:32:04,463 fail2ban.actions: WARNING [sasl] Ban 76.76.*.*
2016-02-23 17:32:33,525 fail2ban.actions: WARNING [sasl] Ban 77.52.*.*

Trouvez-vous que ce soit alarmant qu'il reste encore un grand nombre d'ip qui se fasse bannir comme ça ? Que pensez-vous que je devrait faire pour améliorer davantage la sécurité ?

Merci

Salut Munchi,

J'ai aussi un dédié (enfin plutôt un VPS chez OVH), et niveau bannissement la liste de Fail2Ban se remplit très rapidement. Il n'y a pas vraiment de solutions, à part peut-être regarder à qui appartiennent ces IPs et envoyer un mail au responsable (généralement, il y a une adresse de type abuse@isp). Par contre si ce sont des ISP de type "bullet-proof", tu ne peux pas faire grand-chose.

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte