Grails žiniatinklio sistemos ir TZInfo Ruby modulio pažeidžiamumas

Grails žiniatinklio sistemoje, skirtoje žiniatinklio programoms kurti pagal MVC paradigmą Java, Groovy ir kitomis JVM kalbomis, buvo nustatytas pažeidžiamumas, leidžiantis nuotoliniu būdu vykdyti savo kodą aplinkoje, kurioje žiniatinklis. programa veikia. Pažeidžiamumas išnaudojamas siunčiant specialiai parengtą užklausą, kuri suteikia užpuolikui prieigą prie ClassLoader. Problemą sukelia duomenų surišimo logikos, kuri naudojama tiek kuriant objektus, tiek rankiniu būdu surišant naudojant bindData, klaida. Problema buvo išspręsta 3.3.15, 4.1.1, 5.1.9 ir 5.2.1 leidimuose.

Be to, galime pastebėti Ruby modulio tzinfo pažeidžiamumą, leidžiantį atsisiųsti bet kurio failo turinį, kiek leidžia užpultos programos prieigos teisės. Pažeidžiamumas atsirado dėl to, kad TZInfo::Timezone.get metodu nurodytos laiko juostos pavadinime nėra tinkamai patikrinta, ar naudojami specialieji simboliai. Problema turi įtakos programoms, kurios perduoda nepatvirtintus išorinius duomenis į TZInfo::Timezone.get. Pavyzdžiui, norėdami nuskaityti failą /tmp/payload, galite nurodyti tokią reikšmę kaip „foo\n/../../../tmp/payload“.

Šaltinis: opennet.ru

Добавить комментарий