재우니의 블로그

 

https://twitter.com/MalwareTechBlog

 

Marcus Hutchins(@MalwareTechBlog) 님 | 트위터

@MalwareTechBlog 님 언뮤트하기 @MalwareTechBlog 님 뮤트하기 팔로우 @MalwareTechBlog 님 팔로우하기 팔로잉 @MalwareTechBlog 님 팔로우 중 언팔로우 @MalwareTechBlog 님 언팔로우하기 차단됨 @MalwareTechBlog 님이 차단

twitter.com

 

뉴스에서 보셨겠지만, 공격자가 원격으로 코드를 실행할 수 있는 인기 있는 Log4J2 라이브러리에 대한 새로운 zero-day 익스플로잇이 보고되었습니다. 취약점은 log4j-core jar에 대해 CVE-2021-44228 로 보고 되었으며, Log4J v2.15.0에서 수정되었습니다.

 

Spring Boot 사용자는 기본 로깅 시스템을 Log4J2로 전환한 경우에만 이 취약점의 영향을 받습니다. spring-boot-starter-logging에 포함된 log4j-to-slf4j 및 log4j-api jar는 자체적으로 악용될 수 없습니다. 

log4j-core 를 사용하고 로그 메시지에 사용자 입력을 포함하는 응용 프로그램만 취약합니다.

 

곧 출시될 v2.5.8 및 v2.6.2 릴리스(2021년 12월 23일 예정)는 Log4J v2.15.0을 선택하지만 이것은 심각한 취약점이므로 종속성 관리를 무시하고 Log4J2 종속성을 더 빨리 업그레이드하는 것이 좋습니다.

 

 

SpringBoot의 경우 아래의 링크에 따라서 작업하시면 좋습니다

 

 

Maven

 

Maven 사용자의 경우 다음 지침을 따르고 log4j2.version 속성을 설정할 수 있습니다.

 

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

 

재정의가 적용되었는지 확인하려면 ./mvnw dependency:list | grep log4j를 실행하고 버전이 2.15.0인지 확인하십시오.

 

 

Gradle

 

Gradle 사용자의 경우 이 지침에 따라 버전 속성을 업데이트하거나 BOM을 가져오거나 resolutionStrategy를 사용할 수 있습니다.

 

대부분의 사용자는 log4j2.version 속성을 설정하는 것으로 충분합니다.

 

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

 

종속성 관리 플러그인 대신 Gradle의 플랫폼 지원을 사용하는 경우 Log4J BOM에 종속성을 추가할 수 있습니다.

 

implementation(platform("org.apache.logging.log4j:log4j-bom:2.15.0"))

 

그리고 이러한 방법 중 하나를 사용할 수 없는 경우 resolutionStrategy를 선언할 수 있습니다.

 

configurations.all {
	resolutionStrategy.eachDependency { DependencyResolveDetails details ->
		if (details.requested.group == 'org.apache.logging.log4j') {
			details.useVersion '2.15.0'
		}
	}
}

 

어떤 방법을 선택하든 재정의가 적용되었는지 확인하려면 다음을 실행할 수 있습니다.

 

./gradlew dependencyInsight --dependency log4j-core

 

 

업그레이드할 수 없는 경우 또 다른 옵션은 log4j2.formatMsgNoLookups 시스템 속성을 true로 설정하는 것입니다. 예를 들어, java -Dlog4j2.formatMsgNoLookups=true -jar myapp.jar을 사용하여 앱을 시작할 수 있습니다.

 

 

 

https://spring.io/blog/2021/12/10/log4j2-vulnerability-and-spring-boot

 

Log4J2 Vulnerability and Spring Boot

<p>As you may have seen in the news, a new zero-day exploit has been reported against the popular Log4J2 library which can allow an attacker to remotely execute code. The vulnerability has been reported with <a href="https://nvd.nist.gov/vuln/detail/CVE-20

spring.io