V prostem motorju za ustvarjanje spletnih forumov MyBB je bilo odkrito več ranljivosti, ki v kombinaciji omogočajo izvajanje PHP kode na strežniku. Te težave se pojavljajo v različicah od 1.8.16 do 1.8.25 in so odpravljene v posodobitvi MyBB 1.8.26.
Prva ranljivost (CVE-2021-27889) omogoča neprivilegiranemu udeležencu foruma vgradnjo JavaScript kode v objave, razprave in zasebna sporočila. Forum omogoča dodajanje slik, seznamov in multimedijskih podatkov preko posebnih oznak, ki se pretvorijo v HTML kodo. Zaradi napake v kodi za pretvorbo takšnih oznak se struktura z dvema URL-jema [img]http://xyzsomething.com/image?)http://x.com/onerror=alert(1);//[/img] pretvori v <img src="»http://xyzsomething.com/image?)<a" href="»" http:="»»" x.com="»»" onerror="»alert(1);//"»" target="»_blank»" rel="»noopener»" class="»mycode_url»">
Druga ranljivost (CVE-2021-27890) omogoča vstavitev SQL ukazov in izvajanje lastne kode. Težava nastane zaradi vnosa $theme[‘templateset’] v telo SQL poizvedbe brez ustreznega čiščenja in izvajanja komponent ${…} preko klica eval. Na primer, mogoče je zagnati PHP ukaz passthru(‘ls’) pri obdelavi teme z konstrukcijo takšne oblike: <templateset>’) AND 1=0 UNION SELECT title, ‘${passthru(\’ls\’)}’ from mybb_templates — <\/templateset>
Za izkoriščanje druge ranljivosti je potrebno uporabiti sejo s pravicami skrbnika foruma. Da bi napadalec lahko poslal zahtevo s pravicami skrbnika, lahko izkorišči prvo ranljivost in administratorju pošlje zasebno sporočilo s JavaScript kodo, pri ogledu katere bo izkoriščena druga ranljivost.
Izvor: opennet.ru
