전자정부프레임워크 2.7 log4j 취약점 패치 관련 질문드립니다.
- 작성자 :
- 서*민
- 작성일 :
- 2021-12-17 10:51:35
- 조회수 :
- 3,754
- 구분 :
- 실행환경 / 2.7
- 진행상태 :
- 완료
Q
안녕하세요?
저희는 전자정부프레임워크 2.7을 사용하고 있습니다.
저희는 전자정부프레임워크를 업그래이드 하지 않고 자체적으로 log4j 취약점 패치를 진행했는데,
이 절차가 적정한지 확인 부탁드립니다.
1. 운영환경
* CentOS에 JDK 1.7, Tomcat 8.0 조합으로 운영
* log4j 버전 : 1.3alpha-8
2. 패치내용
* JDK 1.7에 log4j 1.x 버전이므로 log4j-2.12.2로 패치하기로 결정하고 pom.xml 수정
1) log4j-1.3alpha-8 의존성 주석처리
<!--
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.3alpha-8</version>
</dependency>
-->
2) 각 라이브러리 의존성 설정 확인하여 log4j 의존성 제거
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.5.11</version>
<exclusions>
<exclusion>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
</exclusion>
</exclusions>
</dependency>
- 저희 기준에서는 poi-contrib, poi-scratchpad 에서도 log4j 1.2.13 버전에 대한 의존성이 발견되어 위와 동일한 방식으로 하위 의존성 제거했습니다.
3) log4j-2.12.2 의존성과 log4j-1.2 to log4j2 브릿지 api 의존성 추가
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.12.2</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.12.2</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-1.2-api</artifactId>
<version>2.12.2</version>
</dependency>
4) log4j.xml 파일명을 log4j2.xml로 변경
5) 기존 log4j 1.x 설정 내용을 log4j 2 설정 방식으로 수정
=========
이렇게 한 후 빌드/배포하여 테스트해보니 정상적으로 로깅되면서 어플리케이션도 정상 작동하는 것은 확인했습니다.
저희가 진행한 방식으로 취약점 패치가 제대로 이루어진 것인지 궁금합니다.
감사합니다.
저희는 전자정부프레임워크 2.7을 사용하고 있습니다.
저희는 전자정부프레임워크를 업그래이드 하지 않고 자체적으로 log4j 취약점 패치를 진행했는데,
이 절차가 적정한지 확인 부탁드립니다.
1. 운영환경
* CentOS에 JDK 1.7, Tomcat 8.0 조합으로 운영
* log4j 버전 : 1.3alpha-8
2. 패치내용
* JDK 1.7에 log4j 1.x 버전이므로 log4j-2.12.2로 패치하기로 결정하고 pom.xml 수정
1) log4j-1.3alpha-8 의존성 주석처리
<!--
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.3alpha-8</version>
</dependency>
-->
2) 각 라이브러리 의존성 설정 확인하여 log4j 의존성 제거
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.5.11</version>
<exclusions>
<exclusion>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
</exclusion>
</exclusions>
</dependency>
- 저희 기준에서는 poi-contrib, poi-scratchpad 에서도 log4j 1.2.13 버전에 대한 의존성이 발견되어 위와 동일한 방식으로 하위 의존성 제거했습니다.
3) log4j-2.12.2 의존성과 log4j-1.2 to log4j2 브릿지 api 의존성 추가
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.12.2</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.12.2</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-1.2-api</artifactId>
<version>2.12.2</version>
</dependency>
4) log4j.xml 파일명을 log4j2.xml로 변경
5) 기존 log4j 1.x 설정 내용을 log4j 2 설정 방식으로 수정
=========
이렇게 한 후 빌드/배포하여 테스트해보니 정상적으로 로깅되면서 어플리케이션도 정상 작동하는 것은 확인했습니다.
저희가 진행한 방식으로 취약점 패치가 제대로 이루어진 것인지 궁금합니다.
감사합니다.
환경정보
-
- OS 정보 : CentOS
- 표준프레임워크 버전 : 2.7
- JDK(JRE) 정보 : openjdk 1.7.0
- WAS 정보 : tomcat 8.0
- DB 정보 :
- 기타 환경 정보 :
A
안녕하세요.
표준프레임워크센터입니다.
pom.xml파일을 오픈한후
Dependency Hierarchy 탭을 오픈한후 목록에서 log4j-core : 2.12.2가 있는지 확인합니다.
최종적으로 적용되는 버전은 "Resolved Dependency"목록에서
log4j-core : 2.12.2가 존재하는지 확인 하셔야 합니다.
운영서버 배포시에
운영WAS 서버에서 웹프로젝트가 배포된 디렉토리에서
WEB-INF/lib 디렉토리에서 log4j-core-2.12.2.jar 파일이 있는지 확인 합니다.
다른 버전이 공존하는지 필히 확인하시고
하위 버전이 남아 있는경우 필히 삭제하셔야 합니다.
향후 가급적 표준프레임워크 버전도 최신으로 업그레이드 하실것 권장드립니다.
업그레이드 가이드는 다음 URL주소를 참조 하실수 있습니다.
https://www.egovframe.go.kr/home/ntt/nttRead.do?pagerOffset=0&searchKey=&searchValue=&menuNo=75&bbsId=3&nttId=1778
다음 자주묻는 질문을 확인하실수 있습니다.
https://www.egovframe.go.kr/home/faqinfo/faqinfoRead.do?pagerOffset=0&searchKey=&searchValue=&menuNo=68&faqId=FAQ_0000000000000812
감사합니다.
표준프레임워크센터입니다.
pom.xml파일을 오픈한후
Dependency Hierarchy 탭을 오픈한후 목록에서 log4j-core : 2.12.2가 있는지 확인합니다.
최종적으로 적용되는 버전은 "Resolved Dependency"목록에서
log4j-core : 2.12.2가 존재하는지 확인 하셔야 합니다.
운영서버 배포시에
운영WAS 서버에서 웹프로젝트가 배포된 디렉토리에서
WEB-INF/lib 디렉토리에서 log4j-core-2.12.2.jar 파일이 있는지 확인 합니다.
다른 버전이 공존하는지 필히 확인하시고
하위 버전이 남아 있는경우 필히 삭제하셔야 합니다.
향후 가급적 표준프레임워크 버전도 최신으로 업그레이드 하실것 권장드립니다.
업그레이드 가이드는 다음 URL주소를 참조 하실수 있습니다.
https://www.egovframe.go.kr/home/ntt/nttRead.do?pagerOffset=0&searchKey=&searchValue=&menuNo=75&bbsId=3&nttId=1778
다음 자주묻는 질문을 확인하실수 있습니다.
https://www.egovframe.go.kr/home/faqinfo/faqinfoRead.do?pagerOffset=0&searchKey=&searchValue=&menuNo=68&faqId=FAQ_0000000000000812
감사합니다.