본문 바로가기

Issue

Log4J2 취약점 CVE-2021-44228 Spring Boot 대응

2021-12-10 현재, Log4J2 라이브러리에 새로운 제로데이 보안 취약점이 발견되었다. 공격자가 원격으로 코드를 실행할 수 있으며 이는 log4j-core 에서 동작한다.

 

Log4j version 2.15.0 에서 수정, 보완 되었다. (원천 차단은 아니겠지만서도)

 

spring-boot-starter-logging 의존성에 포함된 log4j-to-slf4j 와 log4j-api 자체만으로는 악용될 수 없다. log4j-core 로그 메세지에 사용자의 입력을 로깅하고 있는 시스템에서 취약하다.


대응 방법은 현재 log4j verison을 2.15.0 이상을 사용하는 것이며, 메이븐, 그래들 사용자의 경우 대처방법은 다음과 같다.

 

Maven 사용자의 경우엔 프로퍼티를 pom.xml 에 추가한다.

<properties>
    <log4j2.version>2.15.0</log4j2.version>
</properties>

 

Gradle 사용자의 경우엔 build.gradle 에 다음을 추가한다.

ext['log4j2.version'] = '2.15.0'

조금 더 적극적인 대응 방법의 경우 Web Application Firewall(웹앱 방화벽) 에서 취약점을 이용한 접근을 룰을 통해 제한하는 방법이 있겠다. 단, 접근 방법이 다양할 것이므로 계속 룰을 업데이트 해줘야 한다는 것..