I en åpen plattform for organisering av e-handel
Ett problem gjør det mulig for en uautentisert bruker å oppnå JavaScript (XSS)-plassering som kan utføres når du ser på den kansellerte kjøpsloggen i administrasjonsgrensesnittet. Essensen av sårbarheten er muligheten til å omgå tekstrenseoperasjonen ved å bruke escapeHtmlWithLinks()-funksjonen når du behandler et notat i kanselleringsskjemaet på betalingsskjermen (ved å bruke "a href=http://onmouseover=..."-taggen nestet i en annen kode). Problemet viser seg ved bruk av den innebygde Authorize.Net-modulen, som brukes til å akseptere kredittkortbetalinger.
For å få full kontroll ved å bruke JavaScript-kode i konteksten av den nåværende økten til en butikkansatt, utnyttes en andre sårbarhet, som lar deg laste inn en phar-fil under dekke av et bilde (
Interessant nok ble informasjon om XSS-problemet sendt til Magento-utviklerne tilbake i september 2018, hvoretter en oppdatering ble utgitt i slutten av november, som, som det viste seg, eliminerer bare ett av spesialtilfellene og lett omgås. I januar ble det i tillegg rapportert om muligheten for å laste ned en Phar-fil under dekke av et bilde og viste hvordan en kombinasjon av to sårbarheter kunne brukes til å kompromittere nettbutikker. I slutten av mars i Magento 2.3.1,
2.2.8 og 2.1.17 løste problemet med Phar-filer, men glemte XSS-fiksen, selv om problemet ble lukket. I april ble XSS-parsing gjenopptatt, og problemet ble løst i utgavene 2.3.2, 2.2.9 og 2.1.18.
Det bør bemerkes at disse utgivelsene også fikser 75 sårbarheter, hvorav 16 er vurdert som kritiske, og 20 problemer kan føre til PHP-kodekjøring eller SQL-erstatning. De fleste kritiske problemer kan bare begås av en autentisert bruker, men som vist ovenfor, kan autentiserte operasjoner enkelt oppnås ved å bruke XSS-sårbarheter, hvorav flere dusin har blitt lappet i de bemerkede utgivelsene.
Kilde: opennet.ru