안녕하세요, 오픈소스컨설팅입니다. 12월 10일, Log4Shell 이라는 부르는 보안취약점(CVE-2021-44228)이 발표되었습니다. 사용자의 입력을 Log4j 를 통해 로깅을 시도할 때, jndi lookup 코드를 전송하여 로깅을 하지 않고 시스템 권한을 탈취할 수 있는 원격 공격 방식(RCE; Remote Code Execution)입니다.
이에 대한 취약점 조치 권고를 아래와 같이 안내 드리오니 참고하여 주시기 바랍니다.
보안 취약점 주요 내용
- Apache Log4j 2*에서 발생하는 원격코드 실행 취약점(CVE-2021-44228)
- 프로그램 작성 중 로그를 남기기 위해 사용되는 자바 기자의 오픈소스 유틸리티
영향을 받는 버전
- 2.0-beta9 ~ 2.14.1
(1.x 버전은 EOL 되어 취약점이 존재하는지 논의되지 않았습니다.)
보안 취약점 해결 방법 (권장)
- Log4j 2.15.0 으로 업그레이드
워크어라운드 해결 방법
1. Log4j 2.0-beta9 ~ 2.10.0 버전 (권장)
log4j-core-*.jar 파일에서 org/apache/logging/log4j/core/lookup/JndiLookup.class 삭제
명령어로는
zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class
입니다.
2. Log4j 2.10 ~ 2.14.1 버전
시스템 속성 log4j2.formatMsgNoLookups 또는
Log4j 속성 LOG4J_FORMAT_MSG_NO_LOOKUPS 값을 “true” 로 변경을 가이드하고 있습니다.
적용 방법으로는, -Dlog4j2.formatMsgNoLookups=true 을 설정합니다.
자세한 내용은 아래 KISA 가이드를 참고 부탁 드립니다.
Atlassian 사용자들도 영향이 있나요?
Atlassian 공지에 따르면, 기본 구성으로 사용 시에는 현재 문제가 된 Log4j remote code execution vulnerability (CVE-2021-44228) 보안취약점에 해당되지 않습니다. 관련하여(CVE-2021-44228) 보안취약점 관련 Atlassian FAQ 공유 드립니다.
- FAQ for CVE-2021-44228 : FAQ for CVE-2021-44228, CVE-2021-45046 and CVE-2021-45105 | Atlassian Support | Atlassian Documentation
만약, JMS Appender(org.apache.log4j.net.JMSAppender) 방식으로 변경 하신 경우, 영향이 있으니 해당 형식을 사용하지 않도록 권장하고 있습니다.
추가로 문의 사항이 있으시면, 오픈소스컨설팅 (02-516-0711)에게 연락주시거나, 담당 영업 대표에게 연락 바랍니다.
감사합니다.