728x90
2021-12-12일 갑작스럽게 뉴스에 "역사상 최대의 취약점 발견"이라는 문장으로 혼란스러운 소식이 들렸다. 어떤 이슈인가 알아보니 Log4j 에드온에서 원격코드를 실행할 수 있는 이슈였다....
log4j 에드온은 현시점에 JAVA를 사용하고 있는 인터넷 서비스 중 대부분이 사용하는 에드온이다. 그 말은 즉 모든 서비스에서 취약점이 발생할 수 있다는 점..
● Log4j 란?
Log4j는 Apache Software Foundation에서 개발한 인기 있는 Java 로깅 프레임 워크이다.
● 이슈
Apache Log4j 2.x ver에서 발생하는 취약점 (CVE-2021-44228)을 통해서 원격코드 실행이 가능한 이슈.
CVE-2021-44228 취약점은 CVSS Score 10으로 가장 높은 취약 심각도를 지닌다.
Log4j 2에 존재하는 JNDI ( Java Naming and Directory Interface )인젝션을 악용해 악성 코드 실행 ( RCE )가 가능하게 되는 이슈이다.
● 발견
- 2021년 11월 24일 Alibaba Cloud 보안 팀에서 발견
- 2021년 11월 30일 해당 이슈를 수정하는 PR이 Log4j GITHUB에 업로드
- 2021년 12월 9일 전부터 수없이 취약점 공격의 시도가 있을 것으로 추정되면서 트위터에 한 게시글이 올라옴
- 2021년 12월 10일 PaperMC가 자사 디스코드 서버를 이용하여 긴급 패치 공지를 전송
- 12월 10일 마인크래프트 기술 책임자가 본인 트위터를 통해 긴급 패치 공지를 알림.
Alibaba Cloud 보안팀의 검증 결과 취약점 악용에는 특별한 구성이 필요하지 않고, Log4j 2를 사용하고 있다면 공격이 가능한 것으로 알려짐.
● 이슈 버전
Apache Log4j 2.0-beta9~ 2.14.1 모든 버전
● 해결방안 (KISA)
- 제조사 홈페이지를 통해 최신 버전(2.15.0)으로 업데이트 적용[3]
※ log4j 1.x버전 사용자의 경우 추가적인 업그레이드 지원 중지로 인해 다른 보안 위협에 노출될 가능성이 높아 최신 버전 업데이트 적용 권고 - 최신 버전으로 업데이트가 어려운 경우 사용 중인 버전 확인 후 버전별 조치 적용
- (버전 확인방법)
- log4j가 설치된 경로의 "pom.xml"파일을 열어 "log4j-core"로 검색
- 검색 결과 "사용버전(version)" 확인 가능
- (조치방법) 2.0-beta9 ~ 2.10.0
※ JndiLookup 클래스를 경로에서 제거 : zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class - (조치방법) 2.10 ~ 2.14.1
※ log4j2.formatMsgNoLookups 또는 LOG4J_FORMAT_MSG_NO_LOOKUPS 환경변수를 true로 설정
- (버전 확인방법)
출처 : Log4j
728x90
'Java > Java' 카테고리의 다른 글
JUL (java.util.logging) vs Log4j2 vs SLfj2 비교하기. (1) | 2023.12.07 |
---|---|
[Java] InvalidKeyException AES 256 암호화 에러 (0) | 2022.02.10 |
[Java] CheckedException과 UncheckedException이야기 (0) | 2021.12.30 |