안녕하세요 안랩입니다.
Apache 소프트웨어 재단에서는 Log4j(https://logging.apache.org/log4j)소프트웨어의 취약점을 해결하는 보안 업데이트를 발표했습니다.
취약점이 발견된 Log4j는 프로그램 작성 중 로그를
남기기 위해 사용되는 자바 기반의 오픈소스 유틸리티 프로그램입니다. 공격자가 해당 취약점을 이용해 악성코드
감염 등의 피해를 발생시킬 수 있으므로 해당 버전 사용자는 최신 버전으로 업데이트 하시기 바랍니다.
대상 버전
Apache Log4j 2.0-beta9 ~ 2.12.1 및 2.13.0 ~ 2.17.0 버전
Apache Log4j 1.2.x의 모든 버전
해결된 취약점
Log4j 2.x 버전에서 공격자가 로그 메세지를 통해 원격 코드 실행이 가능한 취약점 (CVE-2021-44228, CVSS 10.0) [2]
Log4j 2.x 버전에서 공격자가 로그 메세지를 통해 서비스 거부 오류(Denied of Service)를 발생시킬 수 있는 취약점 (CVE-2021-45046, CVSS 3.7) [3]
Log4j 1.2.x 버전에서 공격자가 로그 메세지를 통해 원격 코드 실행이 가능한 취약점 (CVE-2021-4104) [4]
Log4j 2.x 버전에서 공격자가 로그 메세지를 통해 서비스 거부 오류(Denied of Service)를 발생시킬 수 있는 취약점 (CVE-2021-45105) [6]
Log4j 2.x 버전에서 공격자가 로그 메세지를 통해 원격 코드 실행이 가능한 취약점 (CVE-2021-44832) [7]
Log4j 1.x 버전에서 로그 메세지를 통해 원격 코드 실행이 가능한 취약점 (CVE-2022-23302) [8]
Log4j 1.x 버전에서 로그 메세지를 통해 SQL Injection 공격 가능한 취약점 (CVE-2022-23305) [8]
Log4j 1.x 버전에서 로그 메세지를 통해 원격 코드 실행이 가능한 취약점 (CVE-2022-23307) [8]
* CVE-2022-23302는 log4j 1.x 버전에서 JMSSink 기능을 사용하는 경우에 발생함
* CVE-2022-23305는 log4j 1.x 버전에서 JMSAppender 기능을 사용하는 경우에 발생함
* CVE-2022-23307는 log4j 1.x 버전에서 chainsaw기능을 사용하는 경우에 발생함
* CVE-2021-45046은 log4j 2.x 버전에서 Pattern Layout에 Context Lookup 또는 Thread Context Lookup 패턴을 사용하는 경우에 발생함
** CVE-2021-4104는 log4j 1.x 버전에서 JMSAppender 기능을 사용하는 경우에 발생함
취약점 패치
2021년 12월 28일 업데이트를 통해 취약점 패치가 다음과 같이 제공되었습니다.
Java8 이상 : Log4j 2.17.1 이상 최신 버전
https://logging.apache.org/log4j/2.x/download.html
Java7 : Log4j 2.12.4 버전
Java6 : Log4j 2.3.2 버전
Log4j 2.17.0 이상 최신 버전 (Java8 이상)
https://logging.apache.org/log4j/2.x/download.html
Log4j 2.12.2 버전 (Java 7)
제공 예정
*Log4j 1.x 버전 사용자의 경우 추가적인 업그레이드 지원 중지로 인해 보안 위협에 노출될 가능성이 높아 최신 버전 업데이트 적용이 권고됩니다.
**Log4j를 사용하는 관련 소프트웨어의 패치는 참고 사이트 [5] 를 확인하시기 바랍니다.
취약점 보완조치
취약점 패치가 어려운 경우 다음의 방법으로 임시 조치하시기 바립니다.
취약점 완화에 대한 보다 자세한 사항은 참고 사이트 문서 [1] 의 "Mitigation" 섹션을 참고하시기 바랍니다.
1)Log4j 2.0-beta9 이상 2.16.0 이하 버전 (Log4j 2.12.2 버전 제외)
JndiLookup 클래스를 다음과 같이 제거하십시오.
# zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class
2)Log4j 1.x 버전
Log4J 1.x 에서 JMSAppender 사용 여부 확인 후 해당 기능을 중지하시기 바랍니다.
- JMSSink 클래스를 다음과 같이 제거하십시오.
1. zip-q d log4j*.jar org/apache/log4j/net/JMSSink.class
- JDBCAppender 클래스를 다음과 같이 제거하십시오.
1. zip-q d log4j*.jar org/apache/log4j/jdbc/JDBCAppender.class
- chainsaw 클래스를 다음과 같이 제거하십시오.
1. zip-q d log4j.jar org/apache/log4j/chainsaw/
안랩 제품 해당 취약점 대응 현황
해당 취약점 공격 탐지 시그니쳐가 안랩TG/IPX, AIPS, HIPS 제품군에 적용되어 탐지/대응하고 있습니다.
참고 사이트
[1] Apache Log4j Security Vulnerabilities
https://logging.apache.org/log4j/2.x/security.html
[2] CVE-2021-44228
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-44228
[3] CVE-2021-45046
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-45046
[4] CVE-2021-4104
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-4104
[5] log4j related software
https://github.com/NCSC-NL/log4shell/tree/main/software
[6] CVE-2021-45105
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-45105
[7] CVE-2021-44832
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-44832
[8] Apache Log4j 1.2
https://logging.apache.org/log4j/1.2/