Në bibliotekën Log4j 2 është zbuluar edhe një cenueshmëri (CVE-2021-45105), e cila, ndryshe nga dy problemet e mëparshme, klasifikohet si e rrezikshme, por jo kritike. Problemi i ri mund të shkaktojë mohimin e shërbimit dhe shfaqet si cikël i pafund dhe ndërprerje anormale gjatë përpunimit të vargjeve të caktuara. Cenueshmëria është korrigjuar në versionin Log4j 2.17, të publikuar pak orë më parë. Rreziku i saj zbutet nga fakti se problemi shfaqet vetëm në sistemet me Java 8.
Të prekura janë sistemet që përdorin pyetje kontekstuale (Context Lookup) për përcaktimin e formatit të daljes në log, si p.sh. ${ctx:var}. Në versionet e Log4j, duke filluar nga 2.0-alpha1 e deri te 2.16.0, mungonte mbrojtja ndaj rekursionit të pakontrolluar, gjë që i lejonte një sulmuesi, përmes manipulimit të vlerës së përdorur në zëvendësim, të shkaktonte një cikël të pafund që çonte në shterimin e stack-ut dhe ndërprerjen anormale të procesit. Në veçanti, problemi shfaqej gjatë zëvendësimit të vlerave të tilla si «${${::-${::-$${::-j}}}}».
Gjithashtu, vlen të theksohet se studiuesit nga kompania Blumira kanë propozuar një variant sulmi ndaj aplikacioneve Java të cenueshme që nuk pranojnë kërkesa të jashtme nga rrjeti; për shembull, në këtë mënyrë mund të sulmohen sistemet e zhvilluesve ose të përdoruesve të aplikacioneve Java. Thelbi i metodës është se, nëse në sistemin e përdoruesit ka procese Java të cenueshme që pranojnë lidhje rrjeti vetëm nga localhost, ose përpunojnë kërkesa RMI (Remote Method Invocation, porta 1099), sulmi mund të kryhet përmes kodit JavaScript që ekzekutohet kur përdoruesi hap një faqe keqdashëse në shfletues. Për të vendosur lidhjen me portën e rrjetit të aplikacionit Java në një sulm të tillë përdoret API WebSocket, ndaj të cilit, ndryshe nga kërkesat HTTP, nuk zbatohen kufizimet same-origin (WebSocket mund të përdoret gjithashtu për skanimin e porteve të rrjetit në localhost me qëllim identifikimin e shërbimeve të disponueshme në rrjet).

Gjithashtu, me interes janë edhe rezultatet e publikuara nga Google për vlerësimin e cenueshmërisë së bibliotekave që kanë varësi të lidhura me Log4j. Sipas Google, problemi prek 8% të të gjitha paketave në depozitën Maven Central. Në veçanti, 35863 paketa Java të lidhura me Log4j përmes varësive të drejtpërdrejta dhe të tërthorta rezultuan të cenueshme. Njëkohësisht, Log4j përdoret si varësi e drejtpërdrejtë e nivelit të parë vetëm në 17% të rasteve, ndërsa në 83% të paketave të prekura lidhja realizohet përmes paketave ndërmjetëse që varen nga Log4j, pra përmes varësive të nivelit të dytë dhe më të lartë (21% — niveli i dytë, 12% — i treti, 14% — i katërti, 26% — i pesti, 6% — i gjashti). Ritmi i korrigjimit të cenueshmërisë ende lë për të dëshiruar: një javë pas zbulimit të saj, nga 35863 paketat e identifikuara problemi është zgjidhur vetëm në 4620, pra në 13%.

Ndërkohë, Agjencia Amerikane për Sigurinë Kibernetike dhe Mbrojtjen e Infrastrukturës ka publikuar një direktivë urgjente që detyron agjencitë federale të identifikojnë sistemet informative të prekura nga cenueshmëria në Log4j dhe deri më 23 dhjetor të instalojnë përditësimet që e bllokojnë problemin. Deri më 28 dhjetor, organizatave u kërkohet të raportojnë për punën e kryer. Për të lehtësuar identifikimin e sistemeve problematike, është përgatitur një listë produktesh ku është konfirmuar prania e cenueshmërisë (lista përfshin më shumë se 23 mijë aplikacione).
Burimi: opennet.ru
