← Zpět na všechny články blogu

Bezpečnostní díra v Prestashopu

Karel Dytrych
Váš Hosting 1. 8. 2022 - 2 min. čtení

Prestashop patří mezi nejrozšířenější platformy pro tvorbu eshop. Bohužel se však objevila bezpečnostní díra tak velká, že je třeba vás o ní informovat. 

Bezpečnostní díra umožňuje provedení libovolného spuštění kódu na serverech provozujících webové stránky PrestaShop. Pro více podrobností pokračujte ve čtení.

Co se přesně děje

Problém se týká eshopů založených na verzi 1.6.0.10 nebo vyšší, které podléhají chybám zabezpečení vkládání SQL. Verze 1.7.8.2 a vyšší nejsou zranitelné, pokud nemají spuštěný modul nebo vlastní kód, který sám o sobě obsahuje chybu zabezpečení vkládání SQL. Také verze 2.0.0~2.1.0 modulu Wishlist (blockwishlist) jsou zranitelné.

Jak útok probíhá

Útok vyžaduje, aby byl obchod zranitelný vůči zneužití SQL injection. Nejnovější verze PrestaShopu a jeho modulů tyto chyby zabezpečení neobsahuje. 

VPS Centrum

Vyzkoušejte zdarma naši aplikaci pro správu serveru a domén. Budete si připadat jako zkušený administrátor.

Útočník odešle požadavek POST na koncový bod zranitelný vůči SQL injection.

Po přibližně jedné sekundě útočník odešle na domovskou stránku požadavek GET bez parametrů. Výsledkem je vytvoření souboru PHP s názvem blm.php v kořenovém adresáři obchodu.

Útočník pak odešle požadavek GET do nově vytvořeného souboru blm.php, který mu umožní provádět libovolné instrukce.

Poté, co útočník získá kontrolu nad obchodem, vloží falešný platební formulář na stránku pokladny v přední kanceláři. V tomto scénáři mohou zákazníci obchodu zadat informace o své kreditní kartě do falešného formuláře a nevědomky je odeslat útočníkům.

Co dělat, aby byl váš e-shop zabezpečený

Nejprve se ujistěte, že váš e-shop a všechny vaše moduly jsou aktualizovené na nejnovější verzi.

Stáhněte si a nainstalujte modul, který udělá za vás následující:

Podle všeho mohou útočníci používat funkce úložiště MySQL Smarty jako součást útoku. Tato funkce se používá zřídka a ve výchozím nastavení je zakázána, útočník ji však může povolit vzdáleně. Dokud nebude zveřejněna oprava, doporučujeme tuto funkci fyzicky deaktivovat v kódu PrestaShopu, aby se přerušil řetězec útoků.

Kód deaktivujete v souboru config/smarty.config.inc.php v instalaci PrestaShopu.
V souboru odstraňte řádky:

Freelo - Nástroj na řízení úkolů a projektů

Přidej se, pozvi svůj tým a klienty, rozděl práci a sleduj, jak se úkoly dají do pohybu.

  • 43-46 (PrestaShop 1.7)
  • nebo 40-43 (PrestaShop 1.6)
if (Konfigurace::get('PS_SMARTY_CACHING_TYPE') == 'mysql') {

zahrnout _PS_CLASS_DIR_.'Smarty/SmartyCacheResourceMysql.php';

$smarty->caching_type = 'mysql';

}

Zvažte kontaktování specialisty, který provede úplný audit vašich stránek a ujistěte se, že nebyl změněn žádný soubor ani nebyl přidán škodlivý kód.

Zdroj: build.prestashop.com

Zůstaňte s námi v kontaktu

Jednou za měsíc posíláme souhrn novinek. Nemusíte se bát, spam neposíláme a odhlásit se můžete kdykoliv...

Karel Dytrych
Tým Váš Hosting
Vyzkoušejte náš trial na týden zdarma

Garance 14denní záruky vrácení peněz

Vyzkoušejte server na týden zdarma

Vyzkoušet server