Электрондық коммерцияны ұйымдастыруға арналған ашық платформада
Бір мәселе аутентификацияланбаған пайдаланушыға әкімші интерфейсінде бас тартылған сатып алу тарихын қарау кезінде орындалатын JavaScript (XSS) орналастыруына қол жеткізуге мүмкіндік береді. Осалдықтың мәні төлем экранындағы бас тарту пішініндегі жазбаны өңдеу кезінде escapeHtmlWithLinks() функциясы арқылы мәтінді тазалау әрекетін айналып өту мүмкіндігі болып табылады («a href=http://onmouseover=...» тегін пайдалану басқа тегте кірістірілген). Мәселе несие картасы бойынша төлемдерді қабылдау үшін пайдаланылатын кірістірілген Authorize.Net модулін пайдалану кезінде көрінеді.
Дүкен қызметкерінің ағымдағы сеансы контекстінде JavaScript кодын пайдалана отырып, толық бақылауды алу үшін, кескіннің астында phar файлын жүктеуге мүмкіндік беретін екінші осалдық пайдаланылады (
Бір қызығы, XSS мәселесі туралы ақпарат Magento әзірлеушілеріне 2018 жылдың қыркүйегінде жіберілді, содан кейін қарашаның соңында патч шығарылды, ол белгілі болғандай, ерекше жағдайлардың біреуін ғана жояды және оңай айналып өтуге болады. Қаңтар айында Phar файлын суретті жасырып жүктеп алу мүмкіндігі туралы қосымша хабарланды және екі осалдықтың комбинациясы интернет-дүкендерді бұзу үшін қалай пайдалануға болатынын көрсетті. Наурыз айының соңында Magento 2.3.1,
2.2.8 және 2.1.17 Phar файлдарындағы мәселені шешті, бірақ мәселе билеті жабылғанымен, XSS түзетуін ұмытып қалды. Сәуір айында XSS талдауы қайта жалғасты және мәселе 2.3.2, 2.2.9 және 2.1.18 шығарылымдарында түзетілді.
Айта кету керек, бұл шығарылымдар сонымен қатар 75 осалдықты түзетеді, олардың 16-сы маңызды деп бағаланады, ал 20 мәселе PHP кодын орындауға немесе SQL ауыстыруға әкелуі мүмкін. Көптеген маңызды проблемаларды түпнұсқалығы расталған пайдаланушы ғана шеше алады, бірақ жоғарыда көрсетілгендей, аутентификацияланған операцияларға XSS осалдықтарының көмегімен оңай қол жеткізуге болады, олардың бірнеше ондағандары аталған шығарылымдарда түзетілген.
Ақпарат көзі: opennet.ru