hi!
tja, scheiße, nun hat mich wohl doch erwicht.habe bisher noch nie probs mit einruchsversuchen und so gehabt, zumindest ist bisher anscheinend keiner durchgekommen. gestern habe ich meinen server mal neu installiert (mandrake8.2), und entweder ich hab da irgendwas falsch gemacht, und das system ist viel unsicherer als vorher, was aber niht so sein sollte, sonder eigentlich recht gleich, oder es hat gerade jetzt jemand auf mich abgesehn.
aufgefallen ist es dadurch, das nach dem aufstehen mein webserver nicht mehr lief. wollte dann per ssh auf den server connecten, um zu sehn was los ist, da behauptet ssh auf einmal ich sei nich mehr berechtigt. hmm? warum das? ging doch gestern abend noch. naja, dann bin ich halt rinter an den server, melde mich als root an, und brech fast ab. da muß ich lesen, ich wäre das letzte mal mit 201plapla.pla.ro connected. das war mich sicherheit nicht so, wenn ich nich am server selbst war, dann am meinem rechner, und dann würde da stehen 0815.net. daraus schließe ich, das da jemand in meinem system war, der da nicht reinsollte. darufhin hab ich natrülich gleich angefangen, die logfiles zu untersuchen, wo sich andere interesante entdeckungen machen ließen. der oder die schweine haben nen neuen user angelegt, meinen webserver runtergefahren, anscheindend die berechtigungen der bestehenden user verändert, und was weiß ich noch alles, bin noch am suchen.
hier mal n paar dinge aus den logfiles, die ich nicht für normal halte:
Thu Jan 16 20:21:14 2003] [error] [client 213.255.96.171] File does not exist: /mnt/fileserver/webserver/html/sumthin
[Thu Jan 16 20:25:33 2003] [error] [client 210.104.240.42] Client sent malformed Host header
Jan 16 22:46:39 websvr postfix/smtp[8631]: 7D43615004: to=
Viren, Spyware, Datenschutz 11.258 Themen, 94.807 Beiträge
hi.
als ersten: zieh das netzwerkkabel aus dem router. tu es jetzt. sofort.
... erledigt ? gut.
um dich ein wenig zu beruhigen: wenns ein profi gewesen waere, dann wuerdest du keine logfile eintraege mehr sehen - du kannst also davon ausgehen von einem kiddy ueberfallen worden zu sein. das ist gut und schlecht. gut, weil du es gemerkt hast. schlecht, weil er oder sie das ueberhaupt geschafft hast.
du hast nun allerdings ein paar probleme: die tatsache das eingebrochen wurde ist per se eine dumme sache, denn tendenziell musst du davon ausgehen das so ungefaher alle rechener im subnetz hinter deinem router nun komprommitiert sind. das ist aergerlich. angesichts der tatsache das es rootkits gibt die du _nicht_ ohne massiven aufwand finden wirst bleiben dir nur zwei dinge ueber:
- du vertraust darauf das das kiddy aufgrund der tatsache das es spuren hinterlassen hat kein rootkit auf keinem der rechner hinter dem rooter hinterlassen hat und du mit etwas moderateren massnahmen klarkommst. das erwartet eine menge glauben an dein glueck.
- oder - der sichere weg: du vergisst alle installation auf allen rechnern hinterm rooter und setzt die rechner neu auf. und zwar nacheinander und getrennt voneinander ohne das inetverbindung steht.
wie der einbruch stattgefunden hat ist aufgrund der dir (bzw. hier) vorliegenden logs nicht zu sagen. zumindest kann ich das nicht. es wuerde helfen wenn du ein snort log haettest, ich gehe aber mal davon aus das du das nicht hast. (solltest du in zukunft aendern.)
du sagst du haettest drei dienste offen: ftp, httpd und sshd. da fallen mir auf anhieb drei dinge ein: ftp server sind von haus aus siebe. sowas sollte man _nie_ auf einem rechner laufen lassen auf dem noch irgendwas anderes laeuft. generell solltest du ftp durch scp ersetzen.
ferner sind gegen ende letzten jahres sowohl im httpd und im sshd jeweils ein kritisches loch entdeckt worden das einem moegichen angreifer sofort root gibt. ich habe keine ahnung von wann deine mandrake ist, aber wenn die nicht aktuell ist oder auf dem neuesten stand gehalten wurde ist es kein wunder das die kiste uebernommen werden konnte.
als weitere (mindest) vorgehensweise wuerde ich folgendes empfehlen bevor du das kabel wieder reinsteckst (mindest, weil es tendenziell besser waere die kiste von grund auf neu zu installieren.):
- aendern aller passworte aller dienste und user auf allen rechner im subnetz.
- abschalten des ftp dienstes
- sicherstellen das _nur_ und _wirklich_ nur ssh und httpd laufen.
- sowohl ssh als auf httpd auf den aktuellen stand bringen. (beim httpd ist es egal ob das der neueste 1.3 oder der neueste 2.0er ist.)
- beim httpd _alle_ mods entfernen die du nicht unbedingt brauchst. am besten _alle_.
- wenn du _nicht_ neu installierst stelle zumindest sicher das sich keine dateien auf der kiste(n) befinden die sich seit gestern abend veraendert haben, sich aber nicht haetten veraendern duerfen.
- snort installieren und saemtliche aktivitaeten mitprotokollieren. (sofern du nicht neu installierst solltest du auch saemtliche ausgehenden verbindungen ueberpruefen).
- installation einer firewall. diese sollte sich vor allem auch um ausgehende verbindungen kuemmern: willst du z.b. wirklich da der webserver mails versenden kann? wenn nicht: abklemmen. im wesentlichen sollte der src _ausschliesslich_ auf eingehende anfragen antworten, aber keine verbindungen selbst aufbauen.
dann - und erst dann - solltest du den router wieder anstecken. nachdem ich vermute das sich mehr als der eine rechner hinter dem router befinden: haben die eine firewall? falls nein: eine firewall hinter dem router und vor dem webserver, sowie hinter dem webserver und vor den anderen kisten waere sinnvoll.
ferner: es waere sinnvoll die logs von der ersten firewall (und am besten auch vom webserver) per syslog auf eine _andere_ maschine zu uebertragen. diese sollte so gekapselt sein das man _nur_ mit syslog drauf schreiben und mit ssh verbinden kann.
achja, und ein bissken reklame.
WM_HOPETHISHELPS
hast du irgendwelchen unoetigen perl-skripte im cgi-bin ordner? test-cgi oder aehnliches? alles loeschen was nicht gebraucht wird.
was fuer eine openssl/apache-version benutzt du? koennte auch ein apache/mod_ssl exploit gewesen sein.
ist ssh version 1 aktiviert? ausschalten, nur version 2 erlauben, dass 1er hat in manchen faellen auch sicherheitsluecken.
schau auf jedenfall mal auf den homepages vom ftp-server etc. nach ob es da neuere versionen gibt bzw. ob es sicherheitsluecken gibt mit den versionen die du einsetzt.
firewall ist auf jedenfall nicht schlecht, allerdings verhindert sie nicht alleine missbrauch wenn fehler in den diensten sind. diese ports sind ja schliesslich freigeschaltet.
du koenntest zusaetzlich von ein ids installieren (www.snort.org), das untersucht den datenverkehr nach bekannten angriffssignaturen und kann auch eingriffe in die firewall vornehmen um einen angreifer zu sperren.
kann mich den ausführungen von thomas eigentlich im großen und ganzen nur anschließen. was rootkits angeht, so gibt es genügend, die auf kernelebene arbeiten und somit so gut wie nicht zu entdecken sind.
leider sind deine logs hier icht von anfang an protokolliert, oder sie enthalten nicht alles, es scheitn aber wirklich so, als sei der eindringling über einen dienst hereingekommen, der über ein entsprechendes loch verfügt. sshd würde ich hier ausschließen, da es so aussieht, als wären sie in ssh über loopback und nciht von extern eingredrungen, sie müssten also vorher schon ein anderes loch genutzt haben. aber ohne weitere kenntnis der genauen konfiguration des servers (dienste, etc) lässt sich nicth viel sagen, nur ein tipp...schau dir mal an ob du etwas über die mail findest die über yahoo relayt wurde, interessant wäre adresse und inhalt.
vielen dank für die infos. werd wohl oder übel noch mal neu installieren, zum glück hab ich noch die datensicherung auf ner anderen platte, das spart schon mal viel arbeit.
über die mail die über das yahoo-relay verschickt wurde, hab ich nich viel finden können, überhaut sollen einige mails an root gegangen sein, wenn ich aber mit "mail" nachsehn will, ist nicht eine da. aber wenn ich das richtig sehe, hat sich der übeltäter ne mail geschickt, weil sonst kann ich mit cronhk@yahoo.com nix anfangen. hier n ausschnitt aus dem log dazu:
Jan 16 22:46:39 websvr postfix/smtp[8631]: 7D43615004: to=
webmin ist ein sack voller loecher. ssh ist in aktueller version kein problem. davon ab solltest du auf jeden fall sicherstellen das auch _wirklich_ kein anderer dienst als ssh und httpd laeuft (netsat ist eine einfache moeglichkeit.)
dabei solltest du auf jeden fall sicherstellen das dein system auch aktuell bleibt... keine ahnung wie das bei mandrake geht, aber bei redhat gibts z.b. sonen automatischen update-dienst...
zugriffsbeschraenkungen kannst du zusaetlich per firewall anlegen. so z.b. das der zugriff auf den ssh dienst nur von deinem rechner (ip) moeglich ist.
die frage ist die wie du das verntzt hast. ein einfacher weg waere es z.b. zwei netzwerkkarten zu haben. auf der nach aussen (zum router) gehenden erlaubst du ausschliesslich eingehendes http. auf der anderen erlaubst du nur eingehendes ssh von deinem (anderen) rechner.
WM_HOPETHISHELPS
oh, stelle gerade fest, das irgendwie n teil aus dem logfileauszug nicht im browser erscheint, im html-code stehs aber drin.
hmm... ich glaub da stären die tags
auf der suche, nach möglicchkeiten den neuen server sicherer zu machen, habe ich dies hier gefunden:
hhp-trosniff is a complete package of patches to modify ssh, ssh2, sshd, ssh2d, and opensshd to extract and log the Incoming/Target HostName/UserName/Password. Intended to log brute force attacks and deleted users who try to gain access. By Loophole
(link dazu: http://www.packetstormsecurity.org/UNIX/loggers/)
kennst das jemand? ist das was seriöses? oder muß ich damit rechnenen mit damit gleich das nächste problem auf den server zu holen? weil habe sonst bei google nix drüber gefunden.
thx.
packetstorm ist relativ serioes, auch wenn es eine menge leute im security bereich gibt die nicht gut auf die zu sprechen sind...
WM_FYI
ok, danke für die infos.
so, server läuft nun wieder seit einigen stunden, aber mir ist schon wieder was in den logfiles aufgefallen. kann es sein, das da wieder wer was versucht hat, aber dachte an nem windows-system gelandet zu sein? weil andernfalls würde ich keinen sinn darin erkennen, denn habe kein windows auf dem server, woher also sollen die einträge kommen? hier das log dazu:
217.88.255.120 - - [19/Jan/2003:10:52:57 +0100] "GET /scripts/root.exe?/c+dir HTTP/1.0" 404 301 "-" "-"
217.88.255.120 - - [19/Jan/2003:10:53:00 +0100] "GET /MSADC/root.exe?/c+dir HTTP/1.0" 404 299 "-" "-"
217.88.255.120 - - [19/Jan/2003:10:53:04 +0100] "GET /c/winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 309 "-" "-"
217.88.255.120 - - [19/Jan/2003:10:53:06 +0100] "GET /d/winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 309 "-" "-"
217.88.255.120 - - [19/Jan/2003:10:53:08 +0100] "GET /scripts/..%255c../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 323 "-" "-"
217.88.255.120 - - [19/Jan/2003:10:53:10 +0100] "GET /_vti_bin/..%255c../..%255c../..%255c../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 340 "-" "-"
217.88.255.120 - - [19/Jan/2003:10:53:12 +0100] "GET /_mem_bin/..%255c../..%255c../..%255c../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 340 "-" "-"
217.88.255.120 - - [19/Jan/2003:10:53:14 +0100] "GET /msadc/..%255c../..%255c../..%255c/..%c1%1c../..%c1%1c../..%c1%1c../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 356 "-" "-"
217.88.255.120 - - [19/Jan/2003:10:53:15 +0100] "GET /scripts/..%c1%1c../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 322 "-" "-"
217.88.255.120 - - [19/Jan/2003:10:53:18 +0100] "GET /scripts/..%c0%2f../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 322 "-" "-"
217.88.255.120 - - [19/Jan/2003:10:53:20 +0100] "GET /scripts/..%c0%af../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 322 "-" "-"
217.88.255.120 - - [19/Jan/2003:10:53:22 +0100] "GET /scripts/..%c1%9c../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 322 "-" "-"
217.88.255.120 - - [19/Jan/2003:10:53:24 +0100] "GET /scripts/..%%35%63../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 400 306 "-" "-"
217.88.255.120 - - [19/Jan/2003:10:53:27 +0100] "GET /scripts/..%%35c../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 400 306 "-" "-"
217.88.255.120 - - [19/Jan/2003:10:53:30 +0100] "GET /scripts/..%25%35%63../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 323 "-" "-"
217.88.255.120 - - [19/Jan/2003:10:53:34 +0100] "GET /scripts/..%252f../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 323 "-" "-"
hab mit jetzt noch nen alten 486er besorgt, auf den dann ipcop drauf soll, ich hoffe mal das hilft.
das was du da siehsts ist voellig normal. irgend eine nase sucht mit hilfe eines scripts nach loechern und dazu gehoeren ebenauch bestimmte loecher in (alten) windows web servern. nachdem du ne linux kiste hast bedeutet das nur das auf der anderen seite ein depp sitzt der nicht wirklich weiss was er tut (oder ein automatisch ablaufendes programm das nicht wirklichsonderlich gut ist..)
WM_FYI
das sind Windows IIS die (immer noch) von Code Red (oder war´s nimda?) befallen sind und nach anderen IIS im netz anhand von offenen ports80 suchen um diese ebenfalls zu infizieren. außer der bandbreitenverschwendung ist dies bei einem nicht-IIS ungefährlich. bei so fällen erübrigt sich meist auch eine mail an den web oder hostmaster, da diese in 98% der fälle ohnehin nicht reagieren.
ah, dann ist ja gut. also kein grund zur panik.
danke.