Athari katika Apache Tomcat ambayo inaruhusu kubadilisha msimbo wa JSP na kupata faili za programu ya wavuti

Watafiti kutoka kampuni ya Chaitin Tech ya China wamegundua kuathirika (CVE-2020-1938) ndani Apache Tomcat, utekelezaji wazi wa Java Servlet, Kurasa za JavaServer, Lugha ya Maonyesho ya Java na teknolojia za Java WebSocket. Athari ya kuathiriwa imepewa jina la msimbo Ghostcat na kiwango muhimu cha ukali (9.8 CVSS). Tatizo huruhusu, katika usanidi wa kawaida, kwa kutuma ombi kwenye bandari ya mtandao 8009, kusoma yaliyomo ya faili yoyote kutoka kwenye saraka ya programu ya wavuti, ikiwa ni pamoja na faili zilizo na mipangilio na kanuni za chanzo cha programu.

Udhaifu huo pia huwezesha kuleta faili zingine kwenye msimbo wa programu, ambayo inaruhusu utekelezaji wa msimbo kwenye seva ikiwa programu inaruhusu faili kupakiwa kwenye seva (kwa mfano, mshambuliaji anaweza kupakia hati ya JSP iliyofichwa kama picha kupitia fomu ya kupakia picha). Shambulio linaweza kufanywa wakati inawezekana kutuma ombi kwa bandari ya mtandao na kidhibiti cha AJP. Kulingana na data ya awali, mtandaoni kupatikana zaidi ya wapangishi milioni 1.2 wanaokubali maombi kupitia itifaki ya AJP.

Athari ipo katika itifaki ya AJP, na haijaitwa makosa katika utekelezaji. Mbali na kukubali miunganisho kupitia HTTP (bandari 8080), Apache Tomcat kwa chaguomsingi inaruhusu ufikiaji wa programu ya wavuti kupitia itifaki ya AJP (Itifaki ya Apache Jserv, port 8009), ambayo ni analogi ya binary ya HTTP iliyoboreshwa kwa utendakazi wa juu zaidi, kwa kawaida hutumika wakati wa kuunda kundi la seva za Tomcat au kuharakisha mwingiliano na Tomcat kwenye proksi ya kinyume au kisawazisha cha upakiaji.

AJP hutoa kazi ya kawaida ya kupata faili kwenye seva, ambayo inaweza kutumika, ikiwa ni pamoja na kupata faili ambazo hazijafichuliwa. AJP inapaswa kufikiwa na seva zinazoaminika pekee, lakini kwa kweli usanidi chaguo-msingi wa Tomcat uliendesha kidhibiti kwenye miingiliano yote ya mtandao na maombi yaliyokubaliwa bila uthibitishaji. Ufikiaji unawezekana kwa faili zozote za programu ya wavuti, ikijumuisha yaliyomo kwenye WEB-INF, META-INF na saraka nyingine zozote zinazotolewa kupitia simu kwa ServletContext.getResourceAsStream(). AJP pia hukuruhusu kutumia faili yoyote katika saraka zinazofikiwa na programu ya wavuti kama hati ya JSP.

Tatizo limekuwa likionekana tangu tawi la Tomcat 13.x kutolewa miaka 6 iliyopita. Mbali na shida ya Tomcat yenyewe huathiri na bidhaa zinazoitumia, kama vile Red Hat JBoss Web Server (JWS), JBoss Enterprise Application Platform (EAP), pamoja na programu za wavuti zinazojitosheleza zinazotumia. Kiatu cha chemchemi. Athari sawa (CVE-2020-1745) sasa kwenye seva ya wavuti Undertow, inayotumika katika seva ya programu ya Wildfly. Katika JBoss na Wildfly, AJP inawashwa kwa chaguo-msingi pekee katika wasifu wa pekee-full-ha.xml, ilio-ha.xml na ha/full-ha katika domain.xml. Katika Spring Boot, usaidizi wa AJP umezimwa kwa chaguo-msingi. Hivi sasa, vikundi tofauti vimeandaa mifano zaidi ya dazeni ya unyonyaji (
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11).

Athari imerekebishwa katika matoleo ya Tomcat 9.0.31, 8.5.51 ΠΈ 7.0.100 (utunzaji wa tawi la 6.x imekoma) Unaweza kufuatilia upatikanaji wa masasisho katika vifaa vya usambazaji kwenye kurasa hizi: Debian, Ubuntu, RHEL, Fedora, SUSA, FreeBSD. Kama suluhu, unaweza kulemaza huduma ya Kiunganishi cha Tomcat AJP (funga tundu la kusikiliza kwa mwenyeji wa ndani au toa maoni kwa laini kwa Kiunganishi cha bandari = "8009") ikiwa haihitajiki, au kuweka juu ufikiaji ulioidhinishwa kwa kutumia sifa za "siri" na "anwani", ikiwa huduma inatumiwa kuingiliana na seva nyingine na seva mbadala kulingana na mod_jk na mod_proxy_ajp (mod_cluster haitumii uthibitishaji).

Chanzo: opennet.ru

Kuongeza maoni