Apache 재단은 보안 취약점 1 ~ 10 구분하고 있는데 이번에 알려진 Apache Log4j 2 에서 발생하는 원격코드 실행 취약점(CVE-2021-44228)은 가장 높음 10단계에 해당하는 아주 심각한 보안 취약점이다.
KISA 에서는 긴급 보안 업데이트 권고 형태로 즉각적인 조치를 권하고있다. (12/13)
https://www.krcert.or.kr/data/secNoticeView.do?bulletin_writing_sequence=36389
스프링 기반의 전자정부 프레임워크를 사용하는 환경우 경우 아래와 같은 절차로 처리가 가능하다.
대상 환경은 아래와 같다.
- 전자정부 프레임워크 버전 : 3.6.0
- Spring : Spring 4.1.2-RELEASE
- Java : 1.8 이상
조치 방법
① 전자정부 프레임워크 기반 자바 프로그램을 maven 도구를 사용하도록 되어 있다. 프로젝트에서 Log4J2 의 의존성을 제거하기 위하여 pom.xml 설정에서 아래와 같이 exclusion 을 설정을 추가한다.3.6.0 egovframework.rte egovframework.rte.psl.dataaccess ${egovframework.rte.version} org.apache.logging.log4j log4j-api org.apache.logging.log4j log4j-core org.apache.logging.log4j log4j-slf4j-impl org.slf4j log4j-over-slf4j
② pom.xml 에 최신 LOG4J 2 버전으로 의존성을 추가한다.
3.6.0 2.15.0 1.7.32 egovframework.rte egovframework.rte.psl.dataaccess ${egovframework.rte.version} org.apache.logging.log4j log4j-api org.apache.logging.log4j log4j-core org.apache.logging.log4j log4j-slf4j-impl org.slf4j log4j-over-slf4j org.slf4j slf4j-api ${project.dependency.slf4j.version} org.slf4j jcl-over-slf4j ${project.dependency.slf4j.version} runtime org.apache.logging.log4j log4j-api ${project.dependency.log4j.version} org.apache.logging.log4j log4j-core ${project.dependency.log4j.version} org.apache.logging.log4j log4j-slf4j-impl ${project.dependency.log4j.version} org.apache.logging.log4j log4j-web ${project.dependency.log4j.version} runtime
⓷ 기존 프로젝트에서 Spring 에서 제공하는 log4j 설정 기능을 사용하고 있었다면 아래와 같이 web.xml 파일에서 해당 설정을 제거한다.
④ 기존 프로젝트를 새롭게 빌드하여 배포한다.
댓글 없음:
댓글 쓰기