CMS Joomla, jedan od najpopularnijih CMS-ova otvorenog kôda, tijekom posljednjih nekoliko tjedana je česta meta napada. Na udaru su se našle gotovo sve verzije Joomle iz serije 1.5.X, 1.6.X, 1.7.X i 2.5.X. U ovom članku ukratko ćemo spomenuti 2 ozbiljnija sigurnosna propusta. Napadači su u kratkom roku uspjeli kompromitirati alarmantno velik broj web stranica na Internetu. Jeste li korisnik CMS Joomla ili tek planirate izraditi svoju prvu web stranicu koristeći ga? Preporučujemo da nastavite s čitanjem, te se zaštitite od potencijalnog napada.
Sigurnosni propust u JCE (Joomla Content Editor) komponenti
JCE je jedan od najpopularnijih WYSIWYG editora za CMS Joomla, koji korisnicima nudi velik broj opcija i mogućnost jednostavne manipulacije sadržajem. Osim što je drag korisnicima, zbog vrlo ozbiljnog sigurnosnog propusta u starijim verzijama, osobito je drag napadačima.
JCE komponente do verzije 2.1.0 sadrže propust u file.php skripti. On udaljenom napadaču omogućuje upload malicioznih datoteka na server slanjem posebno oblikovanog HTTP zahtjeva. S obzirom na to da se radi o prilično jednostavnom obliku napada, kojeg su dodatno pojednostavile javno dostupne i lako dobavljive exploit skripte, broj incidenata je zastrašujuće velik.
Jeste li korisnik JCE komponente koja je starija od verzije 2.1.0? Preporučujemo hitnu nadogradnju na najnoviju stabilnu verziju, koju možete preuzeti na službenoj web stranici.
Sigurnosni propust prilikom registracije novih korisnika
Sve verzije CMS Joomla iz serije 1.6.X, 1.7.X, te verzije 2.5.0, 2.5.1 i 2.5.2 imaju ozbiljan sigurnosni propust u skripti za registraciju novih korisnika. Napadač ih može iskoristiti za otvaranje novog korisničkog računa s administratorskim ovlastima. Nakon slanja posebno oblikovanog HTTP zahtjeva prema skripti za registraciju novih korisnika, napadač posjeduje važeći korisnički račun s administratorskim ovlastima. Može se prijaviti u administracijsko sučelje, ubaciti maliciozni kôd u template web stranice. Na taj si način može omogućiti manipulaciju datoteka i direktorija na serveru. Zapravo može postaviti nove maliciozne skripte na server.
Ako koristite Joomlu čija verzija odgovara jednoj od gore navedenih, preporučujemo da provjerite popis registriranih korisnika s administratorskim ovlastima. Pod hitno obavite nadogradnju na najnoviju verziju, koju možete preuzeti sa službene web stranice.
Joomle iz serije 1.5.X ne sadrže ovaj sigurnosni propust. Ipak kako je razvoj i podrška Joomli iz ove serije prekinuta u rujnu 2012. godine, preporučujemo da obavite nadogradnju Joomle na najnoviju verziju iz serije 2.5.X. Isto biste trebali učiniti u slučaju da koristite CMS Joomla verziju 1.6.X ili 1.7.X, jer je njihov razvoj i podrška također istekla prošle godine.
Ako ste korisnik starije, ranjive verzije Joomle ili JCE komponente i želite provjeriti je li vaša web stranica već zaražena, možete se obratiti našoj korisničkoj podršci putem ticketa ili e-maila, te zatražiti provjeru hosting paketa.
CMS Joomla – dodatni savjeti
Propusti unutar sâme Joomle ili JCE komponente, nažalost, nisu jedini sigurnosni propusti koje napadači mogu iskoristiti protiv vaše web stranice. Sigurnosni propusti postoje u raznim Joomlinim komponentama i templateima. Preporučujemo da instalirate samo najnužnije komponente i da koristite samo jedan template. Komponente, pluginove i templateove koje ne koristite biste trebali u potpunosti obrisati sa servera. Deaktivacija nepotrebnih dodataka kroz administracijsko sučelje CMS Joomla nije u potpunosti sigurna. Potencijalno ranjive skripte unutar komponenti, pluginova i templatea i dalje javno dostupne na Internetu, a samim time i napadačima.
Najbolja mjera zaštite je svakako redovita nadogradnja Joomle i svih dodataka na najnovije stabilne verzije, stoga preporučujemo da povremeno posjećujete službenu web stranicu Joomla projekta ili se pretplatite na mailing listu.
Kako da se unaprijedi Joomla, ako koristi komponente koje ne funkcioniraju na najnovijoj verziji? Mi na stranici http://robotower.com/ imamo par komponenti, koje rade sam na starijim verzijama. :/
Svjesni smo da ima dosta pluginova i komponenti koje nažalost ne rade sa novijim verzijama Joomle i/ili novijim verzijama iz istog brancha. Jedino riješenje u ovakvim situacijama je kontaktiranje developera plugina/komponente s kojom ima problema na novoj verziji. Ukoliko plugin/komponenta više nije u aktivnom developmentu, vrlo vjerojatno nikada niti neće biti supporta za novije verzije.
U ovakvim situacijama vrlo je bitno čim prije naći zamjenski plugin/komponentu sa aktivnim developmentom. Zaključavanje na starije verzije Joomle sa poznatim sigurnosnim propustima nije pametna opcija obzirom da je samo pitanje vremena kada će se site nači na meti malicioznih usera.
Onog trenutka kad se i dogodi defacement sitea i upload malicioznih sadržaja, restore iz backupa je kratkotrajno riješenje i obično iz iskustva takvi neupdateani siteovi budu vrlo brzo metom novog napada i u takvim situacijama postaje u direktnom prekršaju općih uvjeta korištenja.