Sigurnosni propust u Textpattern CMS-u na shared hostingu
Kategorija: Web hosting i domeni Delicious Stumble It!
Sasvim slučajno, pronađem nedavno prvo na ovom sajtu na serveru u folderu gde ne bi trebalo, jedan .htaccess i jedan php fajl. Kada sam te iste fajlove počeo da pronalazim i u drugim folderima na sajtu, bilo mi je jasno da je neko pokušao da mi hakuje sajt. Kažem pokušao, jer sajt radi normalno sve vreme. Pa, onda šta je ovaj haker u stvari hteo, ili čemu ti fajlovi služe, a pritom i ne rade :)
Istragu sam započeo pitanjem na EliteSecurity forumu da bih pre svega raščistio da li je neko pokušao da mi hakuje sajt ili možda ovi fajlovi treba da budu tu.
Kada sam dobio definitavan odgovor da je u pitanju hakovanje, kontaktirao sam moju hosting kompaniju, gde sam dobio mogući odgovor na pitanje šta se i kako ovo desilo. Pre svega me je zanimalo kako je uopšte moguće da neko uploaduje fajlove na moj web sajt. Dobio sam sledeći odgovor od tehničke podrške:
It’s possible that since the directories may have had 777 permissions which allow for anybody to upload anything. Some scripts require it, but we dont recommend it.
Da bi sve bilo jasnije, prava pristupa nekom folderu na serveru izgledaju ovako:
700 = samo vi možete pristupiti fajlovima u tom folderu.
711 = drugi mogu da čitaju fajove ali samo ako znaju tačan naziv fajla.
755 = drugi mogu da vide sadržaj direktorijuma i svih fajlova u njemu, i samim tim i da čitaju bilo koji fajl.
777 = drugi mogu da čitaju i pišu u direktorijum, brišu fajlove, dodaju nove fajlove.
Znači ako imate 777 na nekom folderu, to je problem koji samo čeka da se desi. Vaš sajt je otvoren za upade i to je ozbiljan bezbednosni propust.
S obzirom da Textpattern traži da folderi images, files i tmp budu upisivi, što znači da sam morao da podesim dozvole na 777 na tim folderima, inače prijavljuje grešku, krenuo sam na Textpattern forum da pronađem rešenje. Brzo sam pronašao temu iz koje se vidi da je ovo čest problem koji nije vezan za Textpattern, već za hosting odnosno server gde se sajt nalazi.
Change the permissions on this tmp folder to make it writable by the web server process. Your hosting company may provide specific instructions on this. On a Unix server, you may have to make the directory “world writable” by setting its permissions to 777, but before you do this, always consult your webhost, because 777 permissions are a serious security risk on shared webhosts and frowned upon in other hosting setups, so it’s safer to first try 700 or (if that fails) 711 or 755 permissions.
Dakle, Textpattern radi bez problema kada se images, files i tmp folderi setuju na 700 ili 711 ili 755. Ponovo sam kontaktirao moju hosting kompaniju i nakon kraće prepiske, gde sam objasnio šta je problem i šta mi treba, njihov konačan odgovor je bio:
Unfortunately, it appears that the folders must be 777 to work correctly.
Na sreću, rešenje je bilo vrlo jednostavno, kao što možete pročitati i na Textpattern forumu, direktorijumi images i files se mogu bez problema po funkcionisanje Textpatterna podesiti na 755 (ili 700 ili 711). Na taj način, biće samo onemogućena funkcija uploadovanja slika i fajlova na server preko admin panela u Textpatternu, ali je to naravno moguće raditi preko ftp konekcije, koristeći na primer TotalCommander ili neki drugi sličan program. Direktorijum tmp je vezan za prethodna dva, tako da se i on može bezbedno podesiti na 755.
U međuvremenu sam nabasao na blog Nemanje Avramovića, koji je imao isti problem, ali na WordPress-u. Iz njegovog teksta sam saznao i da je haker koristio klasičnu backdoor tehniku. Nemanja je to rešio elegantno pomoću .htaccess fajla, tako što je jednostavno zabranio izvršavanje php skripti u spornom uploads folderu. Ovaj način kod mene na Textpatternu nije prošao.
Naravoučenije: proverite da slučajno nemate neki direktorijum na sajtu koji ima podešena prava pristupa na 777. Ako koristite TotalCommander, konektujte se na server, označite fajl koji želite da proverite, i iz menija izaberite Files – Change attributes. Tu možete videti koja je trenutna postavka, kao i napraviti potrebne izmene.
Vezano za ovu temu, možda će vas zanimati i tekst Kako zaštititi web sajt od hakera
Potencijalno povezani tekstovi:
Koji web hosting najviše odgovara vašem sajtu?
Web hosting provajderi - kako pronaći dobar web hosting?
Premeštanje web sajta na drugi domen i hosting
Redirekcija pomoću .htaccess fajla i drugi trikovi
Da li je moguć web hosting sa neograničenim prostorom i protokom?
Komentari
Komentarisanje zatvoreno.