Forum: PC Hard- und Software Einbruchversuche auf Internetserver


von Uhu U. (uhu)


Lesenswert?

Ich habe mir kürzlich mal die auth.log auf dem Server angesehen, den ich 
betreue. Die war in einem Jahr auf gut 60 MB angewachsen und voll von 
Versuchen, mit allen möglichen Usernamen irgendwelche Paßworte 
durchzuprobieren. Leider werden die Paßworte, die die Schurken testen, 
nicht geloggt...

Eine spezielle Sparte sind Log-Einträge, die vom System als 
Einbruchsversuch diagnostiziert werden:
1
Dec  9 11:16:22 h1xxxxxx sshd[3542]: reverse mapping checking getaddrinfo
2
for 116-14-251-64.serverpronto.com [64.251.14.116] failed - POSSIBLE BREAK-IN ATTEMPT!

Die Meldung bedeutet, daß von pam beim Reverse-DNS festgestellt wurde, 
daß der angegebene DNS-Name nicht mit dem von Reverse-DNS übereinstimmt.

Wie kommt sowas zustande?

von Öhm (Gast)


Lesenswert?

Bist Du Dir sicher mit dem Server?

Das ist normales Grundrauschen durch Scripte.

Schau Dir http://www.fail2ban.org oder noch besser http://www.ossec.net/ 
an.

von Oliver R. (sourcebox)


Lesenswert?

Die Login-Versuche per SSH laufen über Bots bzw. es ist ein Wurm, der 
versucht sich einzuloggen und - falls er Erfolg hat - auf dem Zielsystem 
zu installieren und andere Server auf die gleiche Art zu malträtieren.

Dass der SSH-Daemon die Passworte nicht loggt, ist eine vernünftige 
Vorgehensweise, weil ansonsten auch die Passworte berechtigter Benutzer 
nicht sicher wären.

Ich selbst nutze seit Jahren dieses Skript hier:

http://www.fail2ban.org/wiki/index.php/Main_Page

Es lässt nur eine einstellbare Anzahl Login-Versuche zu und blockiert 
dann die IP für eine gewisse Zeit. Neben SSH kannst du auch weitere 
Dienste damit schützen, wie FTP, SMTP etc.

von fail2ban (Gast)


Lesenswert?

Wobei man sich mit fail2ban auch selber ins Knie bohren kann:

http://www.ossec.net/main/attacking-log-analysis-tools

Ich war mit ossec immer sehr zufrieden, vor allem da es sich auch noch 
um andere Dinge wie Checksummen kümmert. Und die Einrichtung ist auch 
nicht allzu schwer.

Um die Logs sauber zu halten hilft es auch den sshd auf einen anderen 
Port zu legen wenn möglich.

Das ein SSH Login nur per Zertifikat möglich und für root sowieso 
verboten ist sollte selbstverständlich sein!

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Das da ist (mittlerweile) eine der sinnlosesten Meldungen, die der
sshd so von sich geben kann.  In meinem eigenen sshd hatte ich die
schon mal rausgepatcht, sie mir aber dann irgendwann unvorsichtiger-
weise wieder eingetreten. :-(

Diese Meldung bezieht sich auf die Übergangszeit von der rsh zur ssh,
als es noch üblich war, mit "hostbasierter Authentisierung" zu
arbeiten, also per .rhosts (oder .shosts) blind einer fremden
IP-Adresse und dem zugehörigen Hostnamen zu vertrauen.  Sowas macht
schon mehr als 10 Jahre lang praktisch keiner mehr, aber dieses blöde
"possible breakin attempt" da drin hält sich wie Uhu, ähem, Aleskleber.
:-)

von Uhu U. (uhu)


Lesenswert?

Nochmal meine Frage: Wie kommt sowas zustande? Sind das wirklich 
Einbruchsversuche, oder kann sowas auch regulär zustande kommen?

Öhm schrieb:
> Das ist normales Grundrauschen durch Scripte.

Das ist es sicherlich nicht, denn ich habe ganze Serien von solchen 
Meldungen, die von derselben Quelle ausgelöst wurden.

Allerdings ist diese Art eine Minderheit. Die überwiegende Mehrheit sind 
teilweise tagelange Versuche desselben Strato-Servers, der im 
2-Sekundentakt versucht, ein Türchen zu finden - das ist kein 
Grundrauschen, sondern deutet auf gekaperte Server bei Strato, wo auch 
mein Server läuft.

Wer einen Strato-Server hat, sollte vielleicht mal einen Blick in 
/var/log/auth.log werfen - ich glaube kaum, daß ich ein Ausnahmefall 
bin.

Seit ich die Sache bei Strato gemeldet habe, ist übrigens Ruhe und ich 
bekomme nur noch ganz vereinzelte Login-Versuche aus USA, oder China.

Oliver R. schrieb:
> Dass der SSH-Daemon die Passworte nicht loggt, ist eine vernünftige
> Vorgehensweise, weil ansonsten auch die Passworte berechtigter Benutzer
> nicht sicher wären.

Wenn man nach dem 5. erfolglosen Versuch von derselben IP-Adresse in 
sehr kurzem Zeitabstand das PW loggen würde, wäre diese Gefahr ziemlich 
klein.

Zu den Skripten: ein kryptographisch abgesicherter ssh-Zugang und ein 
wenigstens 15 Zeichen langes Zufallspaßwort ist wohl der beste Schutz - 
geschafft hats jedenfalls damit keiner.

von Purzel H. (hacky)


Lesenswert?

Solche Attacken sind Standard. Wenn man sicher ist dass der sshd code 
wasserdicht ist, braucht man nur noch ein hinreichend langes Passwort. 
Ich bin mir nicht sicher ob die Logincounter, die eine IP nach N 
Versuchen fuer eine bestimmte Zeit sperren wasserdicht sind. Denn die 
Sperrliste kann sehr lang werden. Koennt zu einem Memory Overflow 
fuehren. Besser ist wenn man per firewall das ssh Protokoll nur vom 
lokalen Netz zulaesst.

von Uhu U. (uhu)


Lesenswert?

Mikro Oschi schrieb:
> Besser ist wenn man per firewall das ssh Protokoll nur vom
> lokalen Netz zulaesst.

Das geht wohl bei einem Strato-Server schlecht, wenn man sich nicht 
ausschließen will.

> Solche Attacken sind Standard.

Na ja, Standard würde ichs nicht gerade nennen und wenn der Mist über 
Stunden und Tage von Servern des eigenen Providers kommt, sollte man 
schon mal was unternehmen...

von Rolf (Gast)


Lesenswert?

Auf meinem Ubuntu-Server, auf den ich per dyn-DNS-Adresse und ssh 
zugreife, gibt es auch immer diese fehlgeschlagenenen Loginversuche. Oft 
wird es mit root versucht. Es tauchen aber auch andere usernamen auf. 
Die Versuche kommen aus der ganzen Welt (ich mache immer whois). Mir 
wurde gesagt, dass das alles völlig normal sei. Wichtig ist eben, ein 
gutes Passwort zu haben.

von ein gast (Gast)


Lesenswert?

Leg den ssh service auf einen port der nicht standard ist, irgendwas 
>32567. Damit sind nach meinen Erfahrungen die ganzen script-attacken 
alle weg. Den Port kann man zwar trotzdem leicht rausfinden wenn man 
will, aber wozu die Mühe wenn man in der Zeit 10 andere Server mit 
einfachen Passwörtern automatisch knacken kann.

von user (Gast)


Lesenswert?

ssh ermöglicht auch sich per Zertifikat einzuloggen, dann brauch man 
kein Passwort mehr, und kann den login per Passwort komplett sperren

von Uhu U. (uhu)


Lesenswert?

Rolf schrieb:
> Es tauchen aber auch andere usernamen auf.

Ja, bei mir wurden ganze Serien von leicht modifizierten 
Standard-Loginnamen aller möglichen Pakete durchprobiert.

Dazu kommen dann noch Versuche, über http Zugänge zu den gängigen 
Server-Administrationssystemen zu bekommen.

Ich stoppe jedenfalls prophylaktisch phpmyadmin per cron-Job, damit ein 
vergessener kein Angriffsziel hergeben kann.

user schrieb:
> ssh ermöglicht auch sich per Zertifikat einzuloggen, dann brauch man
> kein Passwort mehr, und kann den login per Passwort komplett sperren

Ja, so mache ich das, als Fallback ist aber noch ein root-Zugang mit 
sehr langem Zufallspaßwort vorhanden.

von Rolf (Gast)


Lesenswert?

Hiermit bekommst Du schnell einen Überblick, wer wirklich reingekommen 
ist:

grep "Accepted password" auth.log

von Uhu U. (uhu)


Lesenswert?

Rolf schrieb:
> Hiermit bekommst Du schnell einen Überblick, wer wirklich reingekommen
> ist:

Ich habe eigentlich wenig Sorgen, daß die Geier auf diesem Weg in meinen 
Server kommen - aber jedem gehackten Server sollte das Handwerk gelegt 
werden, wenn sich das leicht machen läßt.

von Purzel H. (hacky)


Lesenswert?

Ganz klar, dass root nicht per SSH einlogen darf. Auf gar keinen Fall. 
Wir machen jeweils einen dummy user, und dann von diesem user per SU 
weitermachen, .. und beide mit einem richtig langen Passwort versehen.

von Uhu U. (uhu)


Lesenswert?

Mikro Oschi schrieb:
> Ganz klar, dass root nicht per SSH einlogen darf.

Auch nicht per Zertifikat?

von Tom M. (tomm) Benutzerseite


Lesenswert?

Mikro Oschi schrieb:
> Solche Attacken sind Standard.

Ja, seit Jahren, vollautomatisiert. Offenbar sind sie immer noch 
erfolgreich, sonst würde sich niemand mehr die Mühe machen, solche 
Scripts laufen zu lassen.

> Wenn man sicher ist dass der sshd code
> wasserdicht ist, braucht man nur noch ein hinreichend langes Passwort.

Wer ist das schon, wenn man Kunden, Kollegen, Partner usw. auf der Kiste 
hat?

...oder man wechselt auf Zertifikate/Keys und schaltet PW 
Authentisierung komplett ab.

> Ich bin mir nicht sicher ob die Logincounter, die eine IP nach N
> Versuchen fuer eine bestimmte Zeit sperren wasserdicht sind.

Ich habe sshguard dafür seit Jahren im Einsatz und schon verschiedene 
Back-Ends verwendet (tcpwrappers, iptables, ipfw). Die Sperren sind 
wasserdicht. Die Entsperrungen haben auch immer funzt.

> Denn die
> Sperrliste kann sehr lang werden. Koennt zu einem Memory Overflow
> fuehren.

Ein paar Tausend Hosts packt ein halbwegs modernes System locker. Ob 
allerdings noch Bandbreite für regulären Traffic übrig ist?

> Besser ist wenn man per firewall das ssh Protokoll nur vom
> lokalen Netz zulaesst.

...und die FW als Jumphost aufsetzen? Nee.

von Rolf (Gast)


Lesenswert?

Rolf schrieb:
> Hiermit bekommst Du schnell einen Überblick, wer wirklich reingekommen
> ist:
>
> grep "Accepted password" auth.log

oder eben auf die älteren Dateien:

zgrep "Accepted password" auth.log.4.gz

von Tom M. (tomm) Benutzerseite


Lesenswert?

Uhu Uhuhu schrieb:
> Mikro Oschi schrieb:
>> Ganz klar, dass root nicht per SSH einlogen darf.
>
> Auch nicht per Zertifikat?

Nein. Jeder User hat sein persönliches Benutzerkonto und kann, wenn 
nötig und vorgesehen, mit su/sudo/runas/... administrative Tätigkeiten 
ausführen.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Uhu Uhuhu schrieb:
> Wenn man nach dem 5. erfolglosen Versuch von derselben IP-Adresse in
> sehr kurzem Zeitabstand das PW loggen würde, wäre diese Gefahr ziemlich
> klein.

Was willst du denn mit den geloggten Passwörtern dann tun?  Willst du
hier BKA spielen und schon mal auf Vorrat welche sammeln? ;-)  Das
sind doch alles irgendwelche Wörterbuch-Attacken.

Uhu Uhuhu schrieb:
>> Solche Attacken sind Standard.
>
> Na ja, Standard würde ichs nicht gerade nennen

Leider sind sie es.  Bevor ich bei mir den brutefoceblocker
installiert habe, hatte ich auch tagtäglich hunderte davon.  Die
von dir genannte Fehlermeldung ist dabei allerdings der größte Mift,
denn dieses laute Herumschreien über etwas, was eigentlich gar kein
Thema (mehr) ist, müllt einem dann nur unsinnig das Log voll.

Mikro Oschi schrieb:
> Ganz klar, dass root nicht per SSH einlogen darf. Auf gar keinen Fall.

Naja, gegen ein rein key-basiertes root-Login
("PermitRootLogin without-password") gibt es nicht unbedingt was
einzuwenden.  Das ist nicht unsicherer als ein passwortbasiertes
Einloggen eines Nutzers mit anschließendem passwortbasiertem su-
Kommando.

Man kann ja beliebig viele keys dafür gestatten, sodass jeder seinen
eigenen benutzt, und vermutlich kann man auch noch loggen, mit welchem
key die Anmeldung erfolgt war.

von Tom M. (tomm) Benutzerseite


Lesenswert?

Jörg Wunsch schrieb:
>> Ganz klar, dass root nicht per SSH einlogen darf. Auf gar keinen Fall.
>
> Naja, gegen ein rein key-basiertes root-Login
> ("PermitRootLogin without-password") gibt es nicht unbedingt was
> einzuwenden.  Das ist nicht unsicherer als ein passwortbasiertes
> Einloggen eines Nutzers mit anschließendem passwortbasiertem su-
> Kommando.

Was mich dabei stört ist die fehlende Nachvollziehbarkeit bei root 
log-ons. Wer war da wirklich am Werk? Auch wenn root lokal alles 
vertuschen kann, gelingt ihm das NICHT wenn die Authentisierungs-Logs 
laufend weggeschrieben werden (log-server, syslog o.ä.)

Ohne root login ist das System "sicherer", weil du für einen 
erfolgreichen Angriff u.U. 2 verschiedene PW benötigst und/oder einen 
local exploit finden musst, um das System zu übernehmen.

von Uhu U. (uhu)


Lesenswert?

Jörg Wunsch schrieb:
>> Na ja, Standard würde ichs nicht gerade nennen
> Leider sind sie es.

Mag ein, daß das eine gängige Methode ist, aber daß Strato nicht merkt, 
daß die Angriffe seit Monaten von seinen eigenen Servern kommt, hätte 
ich jedenfalls nicht erwartet. Die sollten doch wenigstens ein paar 
Honeypots laufen haben, um zu sehen, was in ihrem Netz da so alles los 
ist.

von Purzel H. (hacky)


Lesenswert?

Moeglicherweise ist das Strato Rootpasswort per default eher trivial, so 
dass man mit Kenntnis eines Passwortes andere Passwoerter extrapolieren 
kann.

von Uhu U. (uhu)


Lesenswert?

Bei mir war es eine zufallsgenerierte Buchstaben- und Ziffernwurst mit 8 
Stellen - sollte eigentlich reichen.

von Purzel H. (hacky)


Lesenswert?

>... zufallsgeneriert ...

sicher ? Ausser der String fuer alle domains derselbe. Oder hat eine 
berechnebare Eigenschaft. Denn falls dem nicht ist, ist entweder der 
Server hackbar, oder der Admin hat geschlampt.

von Uhu U. (uhu)


Lesenswert?

Es ist doch Kicki, ein Skript zu schreiben, das solche Schlüssel nach 
Bedarf erzeugt und wenn ein Einbrecher die Historie des 
Zufallsgenerators nicht kennt, dann kann er sich nur die Zähne daran 
ausbeißen.

Nach meinen bisherigen Erfahrungen funktioniert das bei Strato völlig 
reibungslos und ich kann mir kaum vorstellen, daß sie an derart 
sensiblen Punkten so grob schlampen.

Das mit den offenbar nichtvorhandenen Honeypots gibt mir allerdings 
etwas zu denken. Ich werde die Sache weiter beobachten.

Die vergangenen 34 Stunden kamen insgesamt 7 Einzelversuche, also keine 
Serien mehr.

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Uhu Uhuhu schrieb:
> Bei mir war es eine zufallsgenerierte Buchstaben- und Ziffernwurst mit 8
> Stellen - sollte eigentlich reichen.

Kommt drauf an... http://xkcd.com/936/ :)

(Ich benutz' nur noch Zertifikate falls möglich ist eh viel 
komfortabler)

von Breaker (Gast)


Lesenswert?

Uhu Uhuhu schrieb:
> Zu den Skripten: ein kryptographisch abgesicherter ssh-Zugang und ein
> wenigstens 15 Zeichen langes Zufallspaßwort ist wohl der beste Schutz -
> geschafft hats jedenfalls damit keiner.

Nimm ssh keys, und schalte passwordauth beim sshd ab.

von Breaker (Gast)


Lesenswert?

Uhu Uhuhu schrieb:
> Bei mir war es eine zufallsgenerierte Buchstaben- und Ziffernwurst mit 8
> Stellen - sollte eigentlich reichen.

Entspricht ca. 40 Bits, nicht besonders viel. Nimm ssh keys, hat auch 
den angenehmen Nebeneffekt das man auch einen ssh agent benutzen kann 
:-))

von Breaker (Gast)


Lesenswert?

Uhu Uhuhu schrieb:
> Es ist doch Kicki, ein Skript zu schreiben, das solche Schlüssel nach
> Bedarf erzeugt und wenn ein Einbrecher die Historie des
> Zufallsgenerators nicht kennt, dann kann er sich nur die Zähne daran
> ausbeißen.

man urandom

von Uhu U. (uhu)


Lesenswert?

Läubi .. schrieb:
> (Ich benutz' nur noch Zertifikate falls möglich ist eh viel
> komfortabler)

Mach ich auch so. Der gut vernagelte Paßwortzugang ist nur als Fallback 
da, falls das Zertifikat untergeht.

Breaker schrieb:
> Entspricht ca. 40 Bits, nicht besonders viel.

Dann rechne mal aus, wie lange da so ein Arsch orgeln muß, wenn er alle 
2 Sekunden einen Versuch hat...

von Uhu U. (uhu)


Lesenswert?

Gibt es eigentlich einen einfachen Weg, alle Requests, die nicht aus D 
stammen, sofort abzuweisen?

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Tom M. schrieb:

> Was mich dabei stört ist die fehlende Nachvollziehbarkeit bei root
> log-ons. Wer war da wirklich am Werk?

Sollte man nicht den key loggen können, der zur Genehmigung des
Zugangs geführt hat?

> Ohne root login ist das System "sicherer", weil du für einen
> erfolgreichen Angriff u.U. 2 verschiedene PW benötigst und/oder einen
> local exploit finden musst, um das System zu übernehmen.

Letzteres dürfte allerdings die Methode sein, die am verbreitetsten
ist: man bekommt irgendwo her einen Login als normaler Nutzer
(geklautes Passwort oder dergleichen, das Leck ist meist nicht mehr
zu finden danach) und sieht dann zu, dass man einen local exploit
findet.  Zwei von zwei Einbrüchen, die ich in meinem Leben gesehen
habe, sind nach diesem Schema gelaufen.

von Uhu U. (uhu)


Lesenswert?

Schon wieder versucht sich ein bei Strato gehosteter Server mit seinen 
"Testreihen" an meinem root-Zugang - seit Sonntag Abend. Ich habe ihn 
gestern Nachmittag bei Abuse-Server@strato.de gemeldet - was aber nicht 
verhinderte, daß der Bursche auch heute Nacht noch fröhlich 
weitergebohrt hat.

Die Jungs dort haben sicherlich nur einen Sack Flöhe zu hüten, aber daß 
sie solche Dinger nicht schneller in den Griff bekommen, wundert mich 
doch schon etwas. Es müßte doch ausreichen, ein Dutzend Adressen auf 
einen Honeypot zu leiten und den automatisch zu monitoren, um dann 
kurzentschlossen zuzugreifen, wenn sich irgend so eine Ratte daran zu 
schaffen macht.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.