1.취약점 설명
Log4j는 Apache에서 구현한 오픈 소스 로그 구성 요소입니다. Logback도 log4j 작성자가 설계했습니다. 더 나은 기능을 갖고 있으며 log4j를 대체하는 데 사용되는 로그 프레임워크입니다. slf4j의 기본 구현입니다. Log4j2는 log4j 1.x와 logback을 개선한 버전으로 몇 가지 새로운 기술(lock-free asynchronous 등)을 채택해 log4j 1.x보다 로그 처리량과 성능을 10배 이상 높이고 일부 문제를 해결했다고 합니다. 교착상태 문제, 버그, 구성이 더 간단하고 유연해졌습니다. 이 로그 프레임워크는 로그 정보를 기록하기 위해 비즈니스 시스템에서 널리 사용됩니다. Apache Log4j2 구성 요소가 서비스 거부 취약점에 다시 한번 노출되었습니다.취약점 번호: CVE-2021-45105, 취약점 위협 수준: 높음
2.16.0을 포함한 Apache Log4j2 버전은 자체 참조 조회에서 제어되지 않은 재귀를 방지하지 않습니다. 로깅 구성이 기본이 아닌 스키마 레이아웃 및 컨텍스트 조회(예: $${ctx:loginId})를 사용하는 경우 MDC(스레드 컨텍스트 맵) 입력 데이터를 제어하는 공격자가 재귀 조회가 포함된 악성 입력 데이터를 수동으로 생성할 수 있습니다. , StackOverflowError가 발생하면 프로세스가 종료됩니다. 이는 DOS(서비스 거부) 공격이라고도 합니다.
지난 12월 9일 아파치 log4j2 원격코드 실행 취약점(CVE-2021-44228)이 인터넷상에 광범위하게 유포된 이후, 아파치 log4j2 관련 구성요소에서 다수의 보안 취약점이 발견되었으며, 관계자들은 잇달아 2.15.0-rc1과 2.15를 공개했다. .0-rc2, 2.15.0, 2.15.1-rc1, 2.16.0, 2.17.0 및 기타 업그레이드 버전.
2. 공급망 영향
신뢰할 수 없는 통계에 따르면 Log4j를 직간접적으로 참조하는 오픈 소스 구성 요소가 170,000개 이상인 것으로 추정됩니다. 현재 영향을 받는 것으로 알려진 애플리케이션 및 구성 요소에는 Apache Solr, Apache Struts2, Apache Flink, Apache Druid, Apache Log4j SLF4J Binding, spring-boot-strater-log4j2, Hadoop Hive, ElasticSearch, Jedis, Logging, Logstash 및 VMware 등이 있습니다. .
이 취약점의 영향은 전 세계적이므로 Amazon, Apache, Atlassian, Cisco, Debian, Docker, Fortinet, Google, IBM, Intel, Juniper Networ, Microsoft, 오라클, 레드햇, 우분투, VM웨어 등
CVE-2021-44228 취약점은 악용이 쉽고 기본 구성을 원격으로 악용할 수 있으며 PoC/EXP는 인터넷에 공개되어 사이버 범죄 그룹에 의해 널리 악용되었습니다.
3. 취약점의 영향 범위
CVE-2021-4104: 아파치 Log4j 1.2
CVE-2021-44228: 아파치 Log4j 2.0-beta9 – 2.12.1, 아파치 Log4j 2.13.0 – 2.15.0-rc1
CVE-2021-45046: 아파치 Log4j 2.0-beta9 – 2.12.1, 아파치 Log4j 2.13.0-2.15.0
4.영향을 받는 버전
CVE-2021-44228 Apache Log4j 원격 코드 실행 취약점:
2.0-beta9 <=Apache Log4j 2.x < 2.15.0 (버전 2.12.2는 영향을 받지 않음)
CVE-2021-45046 Apache Log4j 서비스 거부 및 원격 코드 실행 취약점:
2.0-beta9 <=Apache Log4j 2.x < 2.15.0 (버전 2.12.2는 영향을 받지 않음)
CVE-2021-4104 ApacheLog4j 1.2 JMSAppender 원격 코드 실행 취약점:
아파치 Log4j =1.2
CVE-2021-45105 Apache Log4j2 서비스 거부 취약점:
2.0-beta9 <=Apache Log4j<= 2.16.0
5. 수리 제안:
1. 최신 버전으로 정식 업그레이드
https://github.com/apache/logging-log4j2/tags
2. 런타임 애플리케이션 자체 보호를 위해 RASP(런타임 애플리케이션 자체 보호)를 배포합니다.
6. 참고:
https://www.venustech.com.cn/new_type/aqtg/20211216/23340.html
https://security.snyk.io/vuln/SNYK-JAVA-ORGAPACHELOGGINGLOG4J-2321524
https://github.com/jas502n/Log4j2-CVE-2021-44228
https://thehackernews.com/2021/12/apache-issues-3rd-patch-to-fix-new-high.html
최고 보안 책임자의 원본 기사, 복제할 경우 출처 표시: https://cncso.com/kr/아파치-로그4j2-컴포넌트-서비스-거부-html