Java գրադարանի Log4j-ի տխրահռչակ խոցելիության համար արտակարգ դրույթն անխոհեմ չէ: Apache Software Foundation-ը թողարկում է նոր տարբերակ՝ խոցելիությունը մեկընդմիշտ շտկելու համար:
Java-ի համար շատ տարածված գրադարանի խոցելիությունը ցնցում է համաշխարհային ՏՏ լանդշաֆտը: Ենթադրվում է, որ գրադարանը գոյություն ունի կորպորատիվ միջավայրերի մեծ մասում:
Log4j-ը հիմնականում օգտագործվում է անտառահատումների համար: Հավելվածներում իրադարձությունները կարելի է գրանցել նշումներով։ Մտածեք մուտքի մանրամասների տպագրության մասին մուտքի փորձից հետո: Կամ, Java-ում վեբ հավելվածի դեպքում, բրաուզերի անունը, որին փորձում է միանալ օգտատերը:
Վերջին օրինակները սովորական են. Երկու դեպքում էլ արտաքին օգտատերը ազդում է Log4j-ի մատյանների վրա: Հնարավոր է չարաշահել այդ ազդեցությունը։ Log4j-ի ցանկացած տարբերակի տեղեկամատյանները 13 թվականի սեպտեմբերի 2013-ից մինչև 5 թվականի դեկտեմբերի 2021-ն ընկած ժամանակահատվածում կարող են հրահանգել Java հավելվածներին գործարկել կոդը հեռակառավարվող սերվերից տեղական սարքում:
2013 թվականից Log4j-ը մշակում է API՝ JNDI կամ Java Անվանում և տեղեկատու միջերես: JNDI-ի ավելացումը Java հավելվածին թույլ է տալիս գործարկել կոդը հեռակառավարվող սերվերից տեղական սարքի վրա: Ծրագրավորողները հրահանգում են՝ հավելվածում ավելացնելով հեռավոր սերվերի մասին մանրամասների մեկ տող:
Խնդիրն այն է, որ ոչ միայն ծրագրավորողներն են կարողանում կանոնն ավելացնել հավելվածներին։ Ենթադրենք, Log4j-ը գրանցում է մուտքի փորձերի օգտանունները: Երբ ինչ-որ մեկը մուտքագրում է վերը նշված տողը օգտվողի անվան դաշտում, Log4j-ն գործարկում է գիծը, իսկ Java հավելվածը մեկնաբանում է հրաման՝ կոդը գործարկելու նշված սերվերի վրա: Նույնը վերաբերում է այն դեպքերին, երբ Log4j-ը գրանցում է HTTPS հարցում: Եթե դուք փոխում եք զննարկչի անունը տողի, Log4j-ն գործարկում է գիծը՝ անուղղակիորեն հրահանգելով գործարկել կոդը ըստ ցանկության:
Վտանգավոր կարկատանը նույնպես կարող է վտանգավոր լինել
Դեկտեմբերի 9-ին խոցելիությունը լայնածավալ ի հայտ եկավ։ Apache Software Foundation-ը, Log4j-ի մշակողը, թողարկել է արտակարգ դրույթ (2.15)՝ խոցելիությունը շտկելու համար: Այդ ժամանակից ի վեր, ծրագրային ապահովման վաճառողների համար առաջնահերթություն է եղել մշակել 2.15 տարբերակը և կազմակերպություններին տրամադրել կարկատել:
Սակայն LunaSec անվտանգության կազմակերպությունը նշում է, որ կարկատակն ամբողջությամբ անջրանցիկ չէ։ Հնարավոր է կարգավորել պարամետրը և գրանցված JNDI հրամանները կատարել:
Խնդրում ենք նկատի ունենալ. համապատասխան կարգավորումը պետք է կարգավորվի ձեռքով, որպեսզի 2.15-ի չփոփոխված տարբերակներն իսկապես ապահով լինեն: Այնուամենայնիվ, Luna Sec-ը մատակարարներին և կազմակերպություններին առաջարկում է թարմացնել Log4j 2.16-ը: 2.16-ը հրապարակվել է Apache Software Foundation-ի կողմից՝ ի պատասխան LunaSec-ի: Նոր տարբերակն ամբողջությամբ հեռացնում է խոցելի պարամետրը՝ անհնարին դարձնելով չարաշահումների համար պայմաններ ստեղծելը։