Log4j 는, 자바 기반 로깅 유틸리티로, 주로 디버깅용 도구로 사용되는 모듈이다.
어플리케이션 라이브러리(lib)로 추가되어 있는 경우가 많다.
1. 취약점 리스트 및 영향버전
CVE-2021-44228 : 2.0beta9 ~ 2.14.1(2.12.2 제외)
CVE-2021-45046 : 2.0beta9 ~ 2.12.1, 2.13.0~.2.15.0
CVE-2021-4104 : 1.0 대 버전
2. log4j 버전 확인방법
- 위에서 얘기한 대로, log4j 모듈은 일반적으로 어플리케이션이 참조하는 lib 경로에 존재한다.
아래 방법으로 리눅스/윈도우 환경에서 명령어를 실행하여, 어플리케이션이 사용하는 log4j 모듈의 존재 여부/버전 정보를 확인한다.
출처 : https://redcoder.tistory.com/263
3. 대응 방안
취약점 중 가장 위험한 것이 원격실행에 대한 문제점이다.
해당 취약점을 이용해 계정/패스워드가 없이 원격으로 프로그램을 구성/실행할 수 있으므로, Apache에서 배포하는 최신 모듈을 사용할 수 있도록 어플리케이션을 업데이트 하고, 상위버전으로 적용이 완료된 이후에는 마이너 버전까지도 최신 log4j 모듈을 구성하도록 하자.
(21.12.28 현재 2.17.1 버전까지 배포완료됨, Java8 대상, 링크 : https://logging.apache.org/log4j/2.x/)
- Java 버전에 따라 아래의 버전으로 메이저 버전 업데이트를 1차로 수행 후 추가 마이너 버전 모듈 업데이트를 실행하는 것이 안정적이다. (Java 7의 경우는 취약점이 발견된 2.12.1을 Skip 하기위해 2.12.2 반영 우선)
Java7 log4j 2.12.2 / Java 8 : log4j 2.17.0
- Java 7 하위 버전 혹은 1.xx 버전의 log4j 모듈을 사용하는 경우, JMSAppender 사용 여부 확인 후 해당 코드를 삭제한다.
- 모듈 교체/업데이트에 시간이 소요될 수 있으므로, 먼저 log4j 관련한 방화벽 Rule을 적용하는 것도 필요하다.
알약시큐리티의 가이드를 참고하여 조치한다.
출처 : https://blog.alyac.co.kr/4341
'IT > WEBWAS' 카테고리의 다른 글
JEUS 윈도우 서비스 등록하기 (0) | 2022.06.04 |
---|---|
java Path 설정하기 (0) | 2022.06.04 |
WAS root 기동한 후 일반 계정으로 기동하고 싶은 경우 (0) | 2021.06.13 |
SSL 통신을 위한 WAS 내 Java 설정_https 호출 (0) | 2021.05.08 |
WEB/WAS가 기동중이나 콘솔 등에서 기동중지로 보일때_tmp (0) | 2021.05.01 |