FTP Zugang gehackt. Server wie absichern?

C

chrissylein

Guest
Hallo zusammen,

vor ein paar Tagen wurden mir FTP Zugangsdaten ueber Trojaner oder aehnliches ausspioniert, danach auf dem Server Scripte installiert, die Spam verschickt haben.

Wie kann ich den Server absichern?

- Den SSH Port habe ich bereits geaendert.

Meine Ideen/Fragen:

- Kann man genauso den FTP Port aendern, so dass wenn jemand Zugangsdaten hat, trotzdem nicht reinkommt weil er den Port nicht kennt?

- Gibt es irgendeine Einstellung, um SENDMAIL zu untersagen, mehr als 1 E-Mail pro 5 Sekunden aus Scripten zu verschicken?

- Gibt es irgendeine Einstellung, um SENDMAIL zu sagen, dass Mails mit nicht existenten Absenderadressen nicht verschickt werden duerfen?

- Gibt es irgendeine Einstellung, um SENDMAIL anzuweisen, nur bestimmte Scripte fuer dem Mailversand zu akzeptieren?

- Wie kann man SENDMAIL ueberhaupt konfigurieren, der ja eigentlich ein Bestandteil von QMAIL ist? Der Zusammenhang ist mir nicht ganz klar.

Ich habe einen Strato V-Server mit
Suse Linux 10.xx als Betriebssystem
Plesk als Verwaltungsoberflaeche
QMAIL als MTA

Hoffe auf eine sachliche Diskussion. Vielen Dank.
 
Hi,

als erstes - AntiVir Programm installieren, damit du Dir keine Trojaner oder Viren einfängst. Wenn du keinen am laufen hast, brauchst du dich über sowas nicht wundern.

Kann man genauso den FTP Port aendern, so dass wenn jemand Zugangsdaten hat, trotzdem nicht reinkommt weil er den Port nicht kennt?
Bringt dir nicht viel, da man den Port auch so herausbekommen kann.

Sendmail kann ich derzeit nichts zu sagen.
 
Wie kann man den Port herausbekommen?

Antivir Programm hab ich uebrigens drauf.
 
- Kann man genauso den FTP Port aendern, so dass wenn jemand Zugangsdaten hat, trotzdem nicht reinkommt weil er den Port nicht kennt?
Ja, kann man (wie, ist abhängig vom eingesetzten FTP Daemon). Bringt aber nicht viel, da - wie im voherigen Post geschrieben - der Port über einen simplen Portscan erahnt werden kann. Wenn Du den FTP Port z.B. auf 1234 legst und ein Portscanner den offenen Port entdeckt kann man mit einem simplen telnet host 1234 herausfinden, was und wie einem der Server antwortet.

- Gibt es irgendeine Einstellung, um SENDMAIL zu sagen, dass Mails mit nicht existenten Absenderadressen nicht verschickt werden duerfen?
Nein, denn sendmail kann überhaupt nicht wissen, ob eine Mailadresse/Mailbox auf einem anderen Host existiert.

- Gibt es irgendeine Einstellung, um SENDMAIL anzuweisen, nur bestimmte Scripte fuer dem Mailversand zu akzeptieren?
Geht es hier um Bash/PHP/Perl/etc.pp-Skripte oder aber um die genaue Bezeichnung (z.B. /var/www/domain.de/httpdocs/mail.php)?

- Wie kann man SENDMAIL ueberhaupt konfigurieren, der ja eigentlich ein Bestandteil von QMAIL ist? Der Zusammenhang ist mir nicht ganz klar.
http://www.sendmail.org/m4/readme.html

--marneus
 
Portscanner

Gut, das wuerde fuer einen Eindringling jedoch zusaetzlichen Aufwand bedeuten. Bei automatisierten Programmen muessten sie diese umschreiben etc.

Daher sehe ich die Frage nach wie vor berechtigt und auch nuetzlich, den FTP-Port zu aendern.
 
vor ein paar Tagen wurden mir FTP Zugangsdaten ueber Trojaner oder aehnliches ausspioniert, danach auf dem Server Scripte installiert, die Spam verschickt haben.
Ich glaube eher, dass du ein unsicheres Passwort gewählt hattest und ein Angreifer eine Brute-Force-Attacke gegen deinen FTP-Server geschickt und das Passwort schließlich erraten hat. Ich habe da täglich dutzende von Versuchen, die aber alle durch geeignete Schutzmaßnahmen (u.a. Fail2Ban) abgeblockt werden. Falls du tatsächlich einen Virus auf dem PC hast, solltest du den schnellstens mal wieder sauberkriegen!
Wie kann ich den Server absichern?
http://forum.webhostlist.de/forum/security/89982-v-server-sicher-machen-so-gehts.html
http://www.google.de/search?hl=de&q=server+absichern&btnG=Suche&meta=&aq=f&oq=
Wie kann man den Port herausbekommen?
Kann man genauso den FTP Port aendern, so dass wenn jemand Zugangsdaten hat, trotzdem nicht reinkommt weil er den Port nicht kennt?
Mit einem Portscanner kannst du einen Computer auf offene Ports untersuchen. Es gibt einige Portscanner:

  • Nmap / Umit Network Scanner (Unix/Windows) (meine Empfehlung!)
  • Scanmetender (Windows und GNU/Linux)
  • Superscan (Windows)
  • Unicornscan (Unix)
  • nhs nohack scanner (Windows)
Diese Portscanner untersuchen standardmäßig nur Ports kleiner 1000, um Zeit zu sparen. Daher habe ich auch meinen SSH Port in einen Bereich größer 2000 kleiner 65000 (2000 < SSH-Port < 65000) gelegt. Allerdings kann ein Angreifer diese Portscanner auch alle Port (~65000) untersuchen lassen, was allerdings viel Zeit kostet. Bei einem FTP-Port würde ich allerdings den Standard belassen, um deine FTP-Nutzer nicht zu verwirren. Wenn du den FTP-Server alleine nutzt, kann man natürlich drüber nachdenken. Meine Empfehlung ist allerdings, nicht zu versuchen den FTP-Port zu verstecken, sondern den FTP-Server, zum Beispiel mit Fail2Ban, gegen Brute-Force-Angriffe zu schützen.

Simon
 
Last edited by a moderator:
- Wie kann man SENDMAIL ueberhaupt konfigurieren, der ja eigentlich ein Bestandteil von QMAIL ist? Der Zusammenhang ist mir nicht ganz klar.
Du verwechselst da etwas. Was du meinst, ist lediglich ein Sendmail-kompatibles Interface für qmail. Praktisch jeder MTA, der auf einem unixoide Betriebssystem läuft (Postfix, Exim, qmail, …) bietet aus historischen Gründen ein sendmail-Binary an, über das lokal (etwa durch Skripte) E-Mails verschickt werden können.

Im Zweifel müsstest du also deinen qmail MTA entsprechend konfigurieren. Inwieweit dir Plesk dazwischenfunkt, kann ich dir allerdings nicht sagen (ohne ausfällig gegenüber Plesk und Parallels zu werden).

- Gibt es irgendeine Einstellung, um SENDMAIL zu untersagen, mehr als 1 E-Mail pro 5 Sekunden aus Scripten zu verschicken?
Das nennt sich Rate Limiting: http://www.google.de/search?q=qmail+rate+limiting

- Gibt es irgendeine Einstellung, um SENDMAIL zu sagen, dass Mails mit nicht existenten Absenderadressen nicht verschickt werden duerfen?
Ja. Das nennt sich (local) Sender Verification bzw. Sender Check: http://www.google.de/search?q=qmail+sender+verification+OR+check

- Gibt es irgendeine Einstellung, um SENDMAIL anzuweisen, nur bestimmte Scripte fuer dem Mailversand zu akzeptieren?
Nein, aber du könntest den Zugriff auf bestimmte Benutzer limitieren. Das setzt allerdings voraus, dass deine Skripte unter jeweils einem eigenen Benutzer laufen.
 
Nein, denn sendmail kann überhaupt nicht wissen, ob eine Mailadresse/Mailbox auf einem anderen Host existiert.

Geht es hier um Bash/PHP/Perl/etc.pp-Skripte oder aber um die genaue Bezeichnung (z.B. /var/www/domain.de/httpdocs/mail.php)?

http://www.sendmail.org/m4/readme.html

--marneus

Hallo, anscheinend ist die Frage nicht so richtig klar. Dass SENDMAIL nicht wissen kann, welche E-Mailadressen auf fremden Systemen existieren, das ist schon klar.

Aber es muss doch moeglich sein zu pruefen, ob die Mailadresse auf dem EIGENEN System existiert. Darum geht es.

Ja, es wurde wie geschrieben, FTP Zugriff verschafft und PHP sowie PERL Programme aufgespielt, die wiederum SPAM verschickt haben. Als Absenderadresse haben sie HELLS@domain.tld genommen. Diese Mailadresse gibt es jedoch auf dem System nicht. Daher meine Frage, wie kann man einrichten, dass SENDMAIL nur mit einer korrekte ABSENDERADRESSE benutzt werden kann? Wenn es diese Moeglichkeit gaebe, haette man schon mal eine Huerde mehr und mir waere damit gut geholfen.

Die Webseite schau ich mir mal an.
 

Ok, hab mal nachgeforscht, aber so richtig schlau werde ich mit rate limiting nicht. Das einzige was ich im Zusammenhang mit rate limiting gefunden hab ist die Konfiguration mit concurrencyremote. Die Frage ist nun, ist das die richtige Einstellung fuer rate limiting?

Wenn ja, wie konfiguriere ich das fuer QMAIL? Die Datei concurrencyremote existiert naemlich nicht im Ordner /var/qmail/control/.

Reicht es aus, einfach eine Datei mit dem Namen concurrencyremote im Ordner /var/qmail/control/ zu erstellen und den Wert, meinetwegen 30 in die Datei hineinzuschreiben?

Woher weiss QMAIL ueberhaupt dass er nun die Datei beruecksichtigen soll?

Oder nimmt QMAIL fuer seine Konfiguration automatisch alles, was im Ordner /var/qmail/control/ fuer seine Konfiguration?

Sorry wenn ich so dumm frag, aber das sind meine ersten Gehversuche um QMAIL zu konfigurieren und moechte nichts falsch machen. Davor hatte ich Postfix.
 
Last edited by a moderator:
Die Frage ist nun, ist das die richtige Einstellung fuer rate limiting?
Kommt darauf an, was du genau erreichen willst. Die Einstellung in concurrencyremote gilt serverweit und für alle Benutzer.

Ich dachte eher an so etwas wie http://qmail-spp.sourceforge.net/. Dafür musst du qmail allerdings selbst patchen und neu kompilieren.

Reicht es aus, einfach eine Datei mit dem Namen concurrencyremote im Ordner /var/qmail/control/ zu erstellen und den Wert, meinetwegen 30 in die Datei hineinzuschreiben?
Ja. Außerdem möchtest du http://lifewithqmail.org/ lesen.

Davor hatte ich Postfix.
Plesk unterstützt meines Wissens auch Postfix als MTA.
 
Last edited by a moderator:
Hallo,

ssh-Port ändern, Root-Login verbieten, (evtl) FTP-Port ändern, FTP-root-Login verbieten, Passwort/Passwörter vom FTP-User ändern, www-dir auf neue Files untersuchen und alles ungewollte/neue löschen (speziell shell-scripte), logs untersuchen (evtl. logst du ja alle Befehle bzw. Uploads, die per FTP getätigt werden und der Hacker hat das logfile nicht gelöscht, gleiches gilt für bash-history).

Ansonsten deinen Desktop-Rechner sauber bekommen (Virenprogramm installieren usw).

Mehr würde ich erstmal nicht machen, sondern beobachten.

mfg
 
Back
Top