Hiina ettevÔtte Chaitin Tech teadlased on tuvastanud () , avatud Java Servlet, JavaServer Pages, Java Expression Language ja Java WebSocket'i tehnoloogiate rakendus. Haavatavusele on antud koodnimi Ghostcat ja selle kriitiline ohtlikkuse tase on 9.8 CVSS. Probleem vÔimaldab vaikimisi konfiguratsioonis lugeda mis tahes faili sisu veebirakenduse kataloogist, sealhulgas seadistustele ja rakenduse lÀhtekoodile, edastades pÀringu vÔrgupordile 8009.
Haavatavus vĂ”imaldab ka importida teisi faile rakenduskoodi, mis vĂ”ib vĂ”imaldada koodi tĂ€itmist serveris, kui rakendus lubab faile serverisse laadida (nĂ€iteks vĂ”ib rĂŒndaja laadida JSP-skripti piltide ĂŒleslaadimisvormi kaudu). RĂŒnnak vĂ”ib toimuda, kui on vĂ”imalik saata pĂ€ring vĂ”rgupordile, millel on AJP kĂ€itleja. Esialgsetel andmetel on internetis ĂŒle 1,2 miljoni hosti, mis aktsepteerivad pĂ€ringuid AJP protokolli kaudu.
Haavatavus esineb AJP protokollis, mitte rakenduse teostamise veast. Lisaks HTTP (port 8080) ĂŒhenduste vastuvĂ”tmisele vĂ”imaldab Apache Tomcat vaikimisi juurdepÀÀsu veebirakendusele AJP protokolli kaudu (, port 8009), mis on binaarne variant HTTP, optimeeritud suurema jĂ”udluse saavutamiseks, ja seda kasutatakse tavaliselt Tomcat-serverite klastrite loomiseks vĂ”i Tomcat'i suhtlemise kiiremaks muutmiseks tagasipöördelise proksi vĂ”i koormuse tasakaalustaja kaudu.
AJP pakub vaikimisi funktsiooni juurdepÀÀsuks serveri failidele, mida vÔib kasutada ka mitteavalike failide saamiseks. Eeldatakse, et juurdepÀÀs AJP-le on avatud ainult usaldusvÀÀrsetele serveritele, kuid tegelikult kÀivitati vaikimisi Tomcat'i kÀitleja kÔigil vÔrguliideseid, ning pÀringud vÔeti vastu ilma autentimiseta. JuurdepÀÀs on vÔimalik mis tahes failidele veebirakenduses, sealhulgas WEB-INF, META-INF sisu ja mis tahes muude kataloogide sisu, mida saab kÀtte kutsudes ServletContext.getResourceAsStream(). AJP vÔimaldab ka kasutada mis tahes faili veebirakenduse kataloogides skriptina JSP.
Probleem ilmeneb alates 13 aastat tagasi vÀlja antud Tomcat 6.x harust. Lisaks Tomcat'ile on probleem ka ja selle pÔhjal töötavad tooted, nagu Red Hat JBoss Web Server (JWS), JBoss Enterprise Application Platform (EAP), samuti iseseisvad veebirakendused, mis kasutavad . Sarnane haavatavus (CVE-2020-1745) veebiserveris , mis on kasutusel Wildfly rakenduste serveris. JBossis ja Wildfly's on AJP-protokoll vaikimisi lubatud ainult standalone-full-ha.xml, standalone-ha.xml ja ha/full-ha profiilides domain.xml-failis. Spring Bootis on AJP tugi vaikimisi keelatud. Praegu on erinevad grupid ette valmistanud rohkem kui tosin töötavat eksploitide nÀidet (
,
,
,
,
,
,
,
,
,
,
).
Haavatavus on kĂ”rvaldatud Tomcat'i vĂ€ljaannetes , ja (6.x haru hoidmine ). Uuenduse ilmumist distributsioonides saab jĂ€lgida nende lehtede kaudu: , , , , , . Kaitseks vĂ”ib ebaĂ”nnestumise korral keelduda Tomcat AJP Connectori teenusest (siduda kuulav soket localhostiga vĂ”i kommenteerida vĂ€lja Connector port = "8009" rida), kui seda ei ole vaja, vĂ”i autentitud juurdepÀÀs âsecretâ ja âaddressâ atribuutide kaudu, kui teenust kasutatakse teiste serverite ja mod_jk ning mod_proxy_ajp pĂ”hjaliste vaheliseks suhtlemiseks (mod_cluster autentimist ei toetata).
Allikas: opennet.ru
