MailStation gehackt und zum Spammen missbraucht!

Status
Für weitere Antworten geschlossen.

Voyager38LTD

Benutzer
Mitglied seit
15. Apr 2010
Beiträge
8
Punkte für Reaktionen
0
Punkte
0
Hallo Synology User!

Ich konnte nach gut 2 Wochen endlich mein abgestürztes Volumen mit 5Terra, Raid5+Spare und 3 defekt Harddisk bei der DS-1010 reparieren und wieder starten! Dann gab es Probleme mit der MailStation-20100317-017 Postfix usw. und dann noch mit der Photostation.

Ich hatte auch Kontakt mit Synology-Support und hab temporär Logins und Logdaten weitergeleitet.

Jetzt mein noch grösseres Problem:
seit heute Nacht stelle ich fest, der Firewall Zyxel-USG-100 läuft auf 100%
cat /var/log/messages | grep postfix, cat /var/log/messages | grep smtp, cat /var/log/messages | grep smtpd sind voller Warnmeldungen von nicht gefundener externer e-Mailadressen und Mailserver IPs usw.

Auf dem Firewall USG-100, gibt’s etliche Attacken auf Port25, „China u. Taiwan“ jetzt hab ich alle Ports geschlossen und den SMTP Dienst auf der DS gestoppt.

Und jetzt bin Ratlos, im Main.cf und Master.cf hab ich nichts Aussergewöhnliches festgestellt.

Vermutlich wurde die Mailstation von aussen als SMTP Server genutzt und ich vermute das auch intern was manipuliert wurde, weil wenn ich alle Ports am Firewall geschlossen hab, gibt’s im Postfix, SMTP u. SMTPD immer noch Fehlermeldungen externer Adressen.

Wer hätte noch Tipps, wo und welche Files oder Logs ich noch prüfen kann und wie?

Hatte jemand zugriff via Telnet und wie kann ich das prüfen?
Nach 4 Neuinstallationen inkl. Volumenaufbau möchte ich nicht nochmals neu installieren!


aktuelle Konfig: synology_x86_1010+_1144 u. MailStation-20100407-018
Vielen Dank und Gruss
Voyager38LTD
 

Matthieu

Benutzer
Mitglied seit
03. Nov 2008
Beiträge
13.222
Punkte für Reaktionen
88
Punkte
344
Den Haken für die Authentifizierung hast du aber gesetzt, oder? Also der im DSM der besagt, dass man sich authentifizieren braucht um Mails zu senden.

MfG Matthieu
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Ich glaube ehrlich gesagt nicht, dass deine Mailstation wirklich gehackt wurde. Einen gestandenen Mailserver wie Postfix zum umgehen ist nicht ohne und kaum durch eine Zufallshack zu machen.
Was genau für Fehlermeldungen bekommst du? Ich lasse mir für jeden gescheiteren Verbindungsaufbau eine E-Mail an Postmaster schicken. 70% sind relay Versuche welche Postfix bei mir blockt, .ca 10% sind Meldungen von meinem greylisting, das Mails temporät blockt und nur eine handvoll Meldungen zeigen echte Angriffsversuche, die aber ebenfalls vom Postfix abgeschossen werden.
Was ich damit sagen wollte ist, dass deine Aussage über Fehlermeldungen etwas pauschal ist. Man bäuchte schon zu wissen um welche Fehler es sind handelt, um genaueres sagen zu können
Nur der Hacken für die Auth bringt dir rein gar nichts, denn damit werden nur Verbindungen geschützt welche über deinen Server Relayen wollen. E-Mails für die deine DS Endstation ist müssen auch ohne Auth zugestellt werden können, denn sonst könnte dir niemand eine E-Mail schicken.
Es ist auch nicht ungewöhnlich wenn ohne LAN Verbindungen immer wieder Fehlermeldungen auftreten, denn vermutlich liegt die fragliche E-mail in der Postfixqueue und diese kann Postfix auch ohne LAN Verbindung versuchen zuzustellen.
Was ich von dir mal bräuchte: Alle gesetzten smtpd_*_restrictions aus main.cf. Dann mal ein Logeintrag einer E-Mail von der du ausgehst, dass du gehackt wurdest. Zusätzlich solltest du in /usr/syno/mailstation/etc/aliases prüfen, dass mindestens der lokale root Account auf einen unprivilegierten User (z.B. deinen User) übersetzt wird.
 

Voyager38LTD

Benutzer
Mitglied seit
15. Apr 2010
Beiträge
8
Punkte für Reaktionen
0
Punkte
0
Hallo jahlives und danke für deine Hilfe u. Antwort!

In der Beilage die:
Main.cf.txt
grep smtpd.txt
grep smtp.txt
grep postfix.txt
aliases.txt

Das mit den lokale root Account auf einen unprivilegierten User hab ich noch nicht verstanden..


Gruss
Voyager38ltd..
 

Anhänge

  • grep smtpd.txt
    1.018 Bytes · Aufrufe: 9
  • grep smtp.txt
    18,2 KB · Aufrufe: 8
  • grep postfix.txt
    17,7 KB · Aufrufe: 5
  • Main.cf.txt
    622 Bytes · Aufrufe: 5
  • aliases.txt
    8,8 KB · Aufrufe: 10
Zuletzt bearbeitet:

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Ich würde die folgenden Restrictions setzen
Code:
smtpd_client_restrictions =
        permit_mynetworks,
        reject_rbl_client,
        reject_rhsbl_client

smtpd_sender_restrictions =
        reject_unknown_address,
        reject_unknown_sender_domain

smtpd_recipient_restrictions =
        reject_unauth_destination,
        reject_unknown_recipient_domain,
        permit_sasl_authenticated,
        permit
Auch solltest du smtpd_sasl_auth_enable = yes machen wenn du schon permit_sasl_authenticated einsetzen willst.
Btw: Bist du ganz sicher, dass keiner deiner Client im LAN verseucht ist? In den Logs taucht immer wiedermal deine lokale IP auf (ich vermute wegen 1.1 dein Gateway). Dafür würde auch sprechen, dass Postfix weiterloggt auch wenn du alle Ports am Router zu hast.
Ebenfalls für einen verseuchten Client spricht für mich die Config in main.cf die du hattest
Code:
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
Die Adressen in den Logs waren für Postfix eigentlich alle unauth_destination. Dadurch dass du als erstes jedem LAN Client den Zugriff erlaubt hast, kam Postfix jedoch nie bis zur unauth Prüfung
Für mich ist das "fast" der Beweis, dass einer deiner Clients schuld sein muss.
Wichtigste Regel für Postfix: Immer erst alles mögliche verbieten und erst dann Zugriffe erlauben. Hättest du unauth_dest als ersten Eintrag vor permit_mynetworks gehabt, dann hätte Postfix all diese E-Mails niemals aktzeptieren dürfen.
Kannst du zur Sicherheit in der main.cf prüfen wie mynetworks definiert ist?

Die Sache mit dem root und aliases ist ganz einfach: Niemals E-Mails direkt als root empfangen. aliases ist eine einfache Links-Rechts Zuordnung. Dort drin stehen auf der linken Seite die Namen und auf der rechten Seite der Alias unter dem die E-Mails empfangen werden sollen
Ein Eintrag
Code:
root DEIN_BENUTZER
postmaster DEIN_BENUTZER
Wenn also eine Mail an root resp an postmaster kommt, dann schaut Postfix in aliases rein und findet den entsprechenden Alias (DEIN_BENUTZER). Also lässt Postfix alle Empfangsprozesse unter DEIN_BENUTZER und nicht unter root laufen. Ohne diesen Eintrag würden die Prozesse unter root gestartet und das könnte u.U. eine imense Sicherheitslücke darstellen
 

Voyager38LTD

Benutzer
Mitglied seit
15. Apr 2010
Beiträge
8
Punkte für Reaktionen
0
Punkte
0
Danke für die vielen Infos, ich kann erst morgen weiter machen!

Die Clients sind alle sauber, die Meine-Locale-IP kommt erst nach dem ich den SMTP Dienst gestoppt hab, aber die Surveillance Station weiter läuft und versucht hat Ereignisse zu senden!

Gruss-Voyager38ldt..
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Eine Restriction habe ich noch unterschlagen. Es ist auch sinnvoll in main.cf
Code:
smtpd_data_restrictions = reject_unauth_pipelining
zu setzen. Dies da viele schlampig programmierte Spammschleudern nicht auf die Antwort des Servers warten, sondern gleich nach dem RCPT TO Kommando mit DATA beginnen wollen.
 

Voyager38LTD

Benutzer
Mitglied seit
15. Apr 2010
Beiträge
8
Punkte für Reaktionen
0
Punkte
0
So, ich hab jetzt mal im Firewall den Port25 geändert, forward nur noch im internen Lan!

Die Main.cf angepasst
- nachteil: kann nicht mehr auf externe adressen senden.
was ist hier zu empfehlen? bin erst seit 2tage postfix guru :eek:

Und die alliaases geändert
- bin da nicht sicher ob es richtig ist, bitte prüfen.

Postfix log immer noch, aber nicht mehr so stressig
Der Firwall ist jetzt auf 10%, hat aber noch 3000 session auf Port25 die geblockt werden :rolleyes:

Danke für weitere Tipps..
Gruss Voyager38LTD
 

Anhänge

  • main.cf_neu.txt
    735 Bytes · Aufrufe: 3
  • aliases-mein-user.txt
    1.018 Bytes · Aufrufe: 7

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Schau dir auch mal http://www.postfix.org/BASIC_CONFIGURATION_README.html#notify an und leg fest, dass alle möglichen Fehler per Mail an deinen Postmaster gesendet werden. Lege danach in aliases einen Alias für postmaster auf deinen User fest, dann kriegt dieser User alle Fehlermeldungen
Code:
#aliases
root: DEIN_USER
postmaster: DEIN_USER
danach wechselst du ins Verzeichnis von aliases und rufst folgenden Befehl auf
Code:
/usr/syno/mailstation/sbin/newaliases
/usr/syno/mailstation/sbin/postfix reload
Wenn du die notifications eingerichtet hast, dann sollte Postfix bei jedem Fehler eine E-Mail an postmaster schicken. Schick ne Testmail nach extern und schau was für eine Fehlermeldung du per E-Mail bekommst
 

Voyager38LTD

Benutzer
Mitglied seit
15. Apr 2010
Beiträge
8
Punkte für Reaktionen
0
Punkte
0
So, notify läuft und hab noch 2-3 Probleme:

/usr/syno/mailstation/sbin/newaliases und /usr/syno/mailstation/sbin/postfix reload - bring fehlermeldung:
postalias: warning: /usr/syno/mailstation/etc/aliases.db: duplicate entry: "postmaster"

********************************************************
ist das richtig oder ein Fehler?
smtpd_recipient_restrictions =
reject_unauth_destination,
reject_unknown_recipient_domain,
permit_sasl_authenticated,
permit

********************************************************

" Fehlermeldung an extern e-Mail" , siehe Beilage

Und pro Minute gibs 10 Notify von unzustellbaren fremder e-Email
- kann ich das irgendwie stoppen?
 

Anhänge

  • Mail_extern.TXT
    735 Bytes · Aufrufe: 4
  • aliases-mein-user.txt
    991 Bytes · Aufrufe: 1
Zuletzt bearbeitet:

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Zu Fehlermeldung: In aliases scheint es zwei Einträge für postmaster zu geben. Kommentier einen davon aus
Du scheinst nur Port 25 zu verwenden, von dem her war meine vorgeschlagene Konfig nicht ganz korrekt. Da ich zwei Ports für smtp verwende habe ich auch zwei unterschiedliche Konfigs
Code:
smtpd_recipient_restrictions =
        reject_unknown_recipient_domain,
permit_mynetworks,
        permit_sasl_authenticated[COLOR=Red],
[/COLOR]reject_unauth_destination,
[COLOR=Red]         permit[/COLOR]
Also unbekannte Domain werden verworfen, egal ob lokal von einem Client oder vom Internet her. Dann werden E-Mails von lokalen Clients erlaubt, dann von sasl_authentifizierten Users. Danach werden alle Mails verworfen, die für externe Server sind und deren User weder lokal noch per sasl auth angemeldet sind
Das permit am Schluss ist eigentlich nicht nötig, denn wenn keine Regel zutriff, dann wird permit verwendet. Ich habe es mir angewöhnt es doch zu schreiben.

Die Fehlermeldungen kommen wohl davon, dass sich diese Schrottmails immer noch in der Postfix Queue befinden und Postfix immer wieder mal versucht diese zuzustellen. Du kannst mittels
Code:
postsuper -d ALL [B]hold[/B]|[B]incoming[/B]|[B]active[/B]|[B]deferred[/B]
gezielt bestimmte Queueinhalte löschen. postsuper musst du irgendwo in /usr/syno/mailstation suchen (usr/syno/mailstation/sbin/postsuper). Wenn du den Befehl 4x abgesetzt hast, also jeweils einmal mit hold, incoming, active und deferred, dann sollte die Queue geleert sein

Btw ich würde dir (und allen Usern der Mailstation) empfehlen die Ports zu trennen:
Port 25 NUR und ausschliesslich für E-Mails die von extern an die DS gesendet werden (unauthorisierte Benutzer, keinerlei relay erlauben!!)
Port XX NUR und ausschliesslich für lokale Clients die E-Mails via DS nach extern senden (den Port XX am Router nicht weiterleiten!! relay erlaubt für mynetworks)
Port 587 NUR und ausschliesslich für User, die einen Account auf der DS haben. Also via sasl authentifiziert (diesen Port am Router auf die DS weiterleiten. relay nur erlaubt für SASL auth Benutzer NICHT für mynetwork)

Im Wiki gibt es einen Beitrag wie man bei Postfix zusätzlich Ports erstellen und einrichten kann
 
Zuletzt bearbeitet:

Voyager38LTD

Benutzer
Mitglied seit
15. Apr 2010
Beiträge
8
Punkte für Reaktionen
0
Punkte
0
Ich komm leider nicht weiter, hab die DS von I-Net getrennt und die Spammt im local-lan gemäss log weiter, mit 20spam pro sek..!

Der Code:
DS> postsuper -d ALL hold|incoming|active|deferred
-ash: postsuper: not found
-ash: incoming: not found
-ash: active: not found
-ash: deferred: not found
DS>

führt ins leere, sowol aus Root oder auch (usr/syno/mailstation/sbin/postsuper)

wie bekomme ich die Postfix Queues leer?
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Code:
/usr/syno/mailstation/sbin/postsuper -d ALL hold|incoming|active|deferred
müsste eigentlich gehen. wichtig es handelt sich hierbei um 4 einzelne Kommandos. Je ein postsuper -d ALL pro Queue! Also nicht alle 4 Queues in ein Kommando packen, sondern 4 mal absetzen ;)
also so:
Code:
/usr/syno/mailstation/sbin/postsuper -d ALL hold
/usr/syno/mailstation/sbin/postsuper -d ALL incoming
/usr/syno/mailstation/sbin/postsuper -d ALL active
/usr/syno/mailstation/sbin/postsuper -d ALL deferred
 

Voyager38LTD

Benutzer
Mitglied seit
15. Apr 2010
Beiträge
8
Punkte für Reaktionen
0
Punkte
0
Uhi....super......danke.. :)

/usr/syno/mailstation/sbin/postsuper -d ALL hold
/usr/syno/mailstation/sbin/postsuper -d ALL incoming
/usr/syno/mailstation/sbin/postsuper -d ALL active ( postsuper: Deleted: 20000 messages )
/usr/syno/mailstation/sbin/postsuper -d ALL deferred ( postsuper: Deleted: 116105 messages )
Aber wie kommen nur die ganzen e-Mails auf die Mailstation..:confused:

Jetzt schweigt die Mailstation.....ich brauch jetzt mal etwas Pause und melde mich später nochmals.. senden an externe Adresse geht noch nicht..



Gruss Voyager38ltd..
 
Zuletzt bearbeitet:

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Boah 11'000 in Deferred. Wenn du Pech hast, dann bist du selber zum Spammer geworden, denn Defered Messages werden an den Sender gemeldet (smtp Fehlermail)
Bin mir beinahe sicher, dass deine IP in nahezu allen IP Blacklisten gelandet ist
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat