V otevřené platformě pro organizování elektronického obchodu
Jeden problém umožňuje neověřenému uživateli dosáhnout umístění JavaScriptu (XSS), které lze spustit při prohlížení historie zrušených nákupů v rozhraní správce. Podstatou chyby zabezpečení je možnost obejít operaci čištění textu pomocí funkce escapeHtmlWithLinks() při zpracování poznámky ve formuláři pro zrušení na obrazovce pokladny (pomocí značky „a href=http://onmouseover=...“) vnořeno do jiné značky). Problém se projevuje při použití vestavěného modulu Authorize.Net, který slouží k přijímání plateb kreditními kartami.
Chcete-li získat plnou kontrolu pomocí kódu JavaScript v kontextu aktuální relace zaměstnance obchodu, je zneužita druhá chyba zabezpečení, která vám umožňuje načíst soubor phar pod maskou obrázku (
Zajímavé je, že informace o problému XSS byly zaslány vývojářům Magento již v září 2018, načež byl koncem listopadu vydán patch, který, jak se ukázalo, odstraňuje pouze jeden ze speciálních případů a lze jej snadno obejít. V lednu se dodatečně objevila zpráva o možnosti stažení souboru Phar pod rouškou obrázku a ukázala, jak lze využít kombinaci dvou zranitelností ke kompromitaci internetových obchodů. Na konci března v Magento 2.3.1,
2.2.8 a 2.1.17 opravily problém se soubory Phar, ale zapomněly na opravu XSS, přestože lístek na vydání byl uzavřen. V dubnu byla analýza XSS obnovena a problém byl opraven ve verzích 2.3.2, 2.2.9 a 2.1.18.
Je třeba poznamenat, že tato vydání také opravují 75 zranitelností, z nichž 16 je hodnoceno jako kritických a 20 problémů může vést ke spuštění kódu PHP nebo nahrazení SQL. Většinu kritických problémů může způsobit pouze ověřený uživatel, ale jak je ukázáno výše, autentizovaných operací lze snadno dosáhnout pomocí zranitelností XSS, kterých bylo v uvedených verzích opraveno několik desítek.
Zdroj: opennet.ru