공지사항

[Java] log4j2 취약점 발견 / CVE-2021-44228

작성자 :
welldy
작성일 :
2021-12-14
조회 :
2972
발생 대상 / 영향 버전

log4j 2.0-beta9 ~ 2.14.1 사용 서비스


발생 배경

2021년 11월 24일 Alibaba Cloud 보안 팀에서 Apache Log4j2 원격 코드 실행 취약점을 Apache에 보고,

Log4j 기능 중 재귀 분석 기능을 이용하여 공격자가 악성 요청을 원격 코드로 실행할 수 있는 것이 확인되었습니다.

이는 Log4Shell이라 불리며 치명적인 결함으로 간주되어 CVSS 스코어 10점으로 가장 높은 심각도를 가집니다.


참고 자료

Apache 재단: https://logging.apache.org/log4j/2.x/security.html

ESTSecurity: https://blog.alyac.co.kr/4341

KISA: https://www.krcert.or.kr/data/secNoticeView.do?bulletin_writing_sequence=36389




해결 방안

사용하는 log4j 버전을 신규 보안 패치가 적용된 2.15.0으로 업그레이드를 하여 이슈를 해소할 수 있습니다.

만약 버전 업그레이드가 불가한 경우 아래 적어놓은 임시 조치 방안을 통해 이슈를 해소하여 사용할 수 있습니다.


임시 조치 방안 / log4j 2.0-beta9 ~ 2.10.0 미만

JndiLookup 클래스를 경로에서 제거하는 방법으로 리눅스 쉘 상 zip 명렁어로 아래와 같은 명령어로 사용됩니다.


 

# zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class


 


임시 조치 방안 / log4j 2.10 ~ 2.14.1

JVM 시스템 프로퍼티 상 log4j2.formatMsgNoLookups를 true로 변경 적용하거나

LOG4J_FORMAT_MSG_NO_LOOKUPS 환경 변수를 true로 변경한 뒤 반영합니다.




감사합니다.