Popis: Joomla 1.5 hacked. Jak odstranit škodlivý kód z webu a jak se bránit s Joomla 1.5?
Blog
-
pc-software
|
Napsal uživatel Admin
|
Středa, 04 Listopad 2015 20:56
|
Prolomeno
vlivem používání zastaralého vydání Content Management System došlo k prolomení webu a vložení škodlivého kódu do webu do
- samostatných, nově vytvořených souborů
- již existujících, často klíčových nebo naopak do upozaděných souborů
- existující :
- .htaccess - zneužito rewrite
- index.php - od defaultní šablony
- /includes/defines.php - má obsahovat jen řádky define.., rozhodně ne "function request_url_data($url)"
- nové:
- nesmyslné nebo potencionálně reálné názvy
Napadení webu lze v nejhorším případě zjistit z divného chování webu nejčastěji o "podstrčení" webu při kliknutí na napadené stránce.
Přijatá opatření
vyhledání a odstranění škodlivého kódu
- vyhledávání podle datum souborů (sofistikovanější průnik php se neprojeví v datu souboru)
- vyhledávání podle známé struktury webu (zejména u CMS dobře použitelné v systémových oblastech CMS)
- vyhledávání podle obsažených textových řetězců (pomocí vlastnního php skriptu využívající J1.5 framework)
- soubor se skriptem nahrát kamkoliv na hosting a nastavit cestu k joomla Root nebo do rootu webu a odkomentovat možnost 1. viz text v souboru skriptu
- kombinace uvedených
- výživný bývá např. řetězec 'eval(' nebo 'base64_decode('. Smazat lze poměrně často výskyty obsahující za závorkou výrazu 'eval(' změť znaků. Případně smazat celý soubor.
Pozor nejde o pravidlo podle kterého smažeš veškeré takové soubory! V Joomle se najdou jednotky neškodlivých souborů používající eval a decode php funkce. Zkontroluj s výše bodem 2. Rovněž pokud má soubor neobvyklý název nebo obsahuje jen jednu řádku o délce více než 1024 změti znaků může jít o škodlivý soubor... .
- podezřelé jsou i řetězce delší než cca 100znaků, vyjímku mohou tvořit například soubory cache v diru /cache
Úprava souboru .htaccess
- joomla .htaccess defensive setup
Instalace ochranného pluginu 3tí strany
Úprava práv souborů a adresářů
- soubory na 0640 až 0440 pro configuration.php a .htaccess
- adresáře na 6750
Přejmenování prefixů Joomla tabulky
- Přejmenovat prefixy z (tenkáte) defaultního prefixu jos_ na jiný vlastní
- Následně nutné v souboru /configuration.php zmenit definovaný prefix
- Lze použít připravený skript využívající s J1.5 framework
- soubor se skriptem nahrát kamkoliv na hosting a nastavit cestu k joomla Root nebo do rootu webu a odkomentovat možnost 1. viz text v souboru skriptu
- ve skriptu nastavit cestu k Joomla instalaci a novou předponu tabulek
Změna loginu superadmina
- zakázání účtu administrator (ale je ponechán)
- vytvoření jiného superadmina (ideálně bezpečného - neprolomitelného názvu)
- vygenerování silného hesla
Odstranění metetagu generator
- v souboru /libraries/joomla/document/html/renderer/head.php zakomentován řádek
$strHtml .= $tab.'getGenerator().'" />'.$lnEnd;
Zapnutí https
- pokud ne pro veškeré stránky, tak alespoň pro /administrator
- v soubotu /configuration.php, konstanta z $force_ssl = '0'; na $force_ssl = '1';
- joomla 1.5 má bug a možná Vám pak nepůjde se přihlásit do administrace
- řešení může být ponechat konstantu z $live_site z soubotu /configuration.php prázdnou, ale to vždy nejde (např pokud hostujete u wedos, kde rewrite pomocí .htaccess generuje ošklivé URL)
- použite návod, konkrétně malý hack v souboru /libraries/joomla/environment/uri.php, kde na hraďte
if(JPATH_BASE == JPATH_ADMINISTRATOR) {
$base['path'] .= '/administrator';
}
za
if(JPATH_BASE == JPATH_ADMINISTRATOR)
{
$force_ssl = $config->getValue('config.force_ssl');
if($force_ssl > 0)
{
$base['prefix'] = ereg_replace("http://","https://",$base['prefix']);
}
$base['path'] .= '/administrator';
}
Links
|
Aktualizováno Pátek, 02 Prosinec 2016 12:17
|
Komentáře
https://www.stopbadware.org/common-hacks
Joomla Department - For All Your Joomla Needs
The Joomla! name is used under a limited license from Open Source Matters in the United States and other countries. Joomla! Department is not affiliated with or endorsed by Open Source Matters or the Joomla! Project.