Joomla a támadások célpontja

Az utóbbi időben megszaporodtak a tárhely szolgáltatásokra telepített Joomla portál rendszer ellen irányuló sikeres oldaltörések. A támadók a Joomla és a Vituaemart sérülékenységét kihasználva telepítenek különböző programokat (backdoor)  a tárhelyekre, amivel megpróbálják átvenni az irányítást a teljes szerver felett. Minden ügyfelünknek javasoljuk, használja a legfrissebb Jommla és Virtuemart verziót, melyek akár a cPanel adminisztrációs felületről is telepíthetők egy kattintással.

Az oldaltörések során a támadók, melyek általában sérülékeny oldalakat kereső programok, a Joomla php fájlait módosítják, illetve különböző szervereket telepítenek a tárhelyre. Az oldaltörést rendszergazdáink könnyedén észreveszik, mert a telepített programok hatalmas terhelést és hálózati forgalmat generálnak a szerveren. Ezt ügyfeleink is ellenőrizhetik a cPanel felületen.

A probléma könnyen megoldható, ha az eredeti oldalt visszamásolják a tárhelyre, vagy a napi mentésből visszaállítják azt. Ez a megoldás azonban nem végleges, hiszen az oldalt megint fel fogják törni hamarosan.

Az oldal visszaállításán és frissítésén túl javasolt a cPanel és FTP jelszavak azonnali megváltoztatása is, mert egyes esetekben ezekhez is hozzáférnek a támadók.

Technikai részletek

Az oldaltöréseket kivizsgálva a következő érdekességeket fedeztük fel:

  • a törés lényege, hogy a Joomla Virtuemart moduljának sérülékenységével php fájlok telepíthetők a szerverre. Általában new.php és bom.php fájlok kerülnek a főkönyvtárba, és egyéb fájlok a virtuemart könyvtárába
  • a telepített fájlok bináris fájlokat csomagolnak ki a szerveren, illetve adminisztrációs felületet biztosítanak a szerverhez php és egy flash alapú konzollal
  • a bináris fájlok IRC és HTTP  démonok, melyek elindulva a nagy terhelést és hálózati forgalmat generálják. Rajtuk keresztül a szerver felett átvehető lenne a kontroll, ha sikerülne őket root felhasználóként futtatni. Ez szerencsére nem sikerül, mert minden tárhely szolgáltatáshoz külön rendszer szintű felhasználó van rendelve.

Megoldás

Végül kiderült, a probléma a com_google modulban volt, amin keresztül tetszőleges parancsok futtathatók a szerveren. A behatolók ezt kihasználva tettek fájlokat a fő könyvtárba és a virtuemart könyvtárába, és ezekkel próbálták a szervert törni. A megoldás egy kis korlátozás a htaccess segítségével:

# proc/self/environ? no way!
RewriteCond %{QUERY_STRING} proc/self/environ [OR]
RewriteCond %{QUERY_STRING} tmp/shell* [OR]
# Block out any script trying to set a mosConfig value through the URL
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|%3D) [OR]
# Block out any script trying to base64_encode crap to send via URL
RewriteCond %{QUERY_STRING} base64_encode.*(.*) [OR]
# Block out any script that includes a <script> tag in URL
RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL
RewriteCond %{QUERY_STRING} GLOBALS(=|[|%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL
RewriteCond %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2})
# Send all blocked request to homepage with 403 Forbidden error!
RewriteRule ^(.*)$ index.php [F,L]

Hozzászólás küldése

Kövess minket!