#194
1. Log4j 2.x 취약점
- 취약점 : CVE-2021-44228
- 취약한 버전 : 2.0-beta9 ~ 2.14.1 모든 버전(Log4j 2.12.2 제외)
최근 Log4j와 관련하여 치명적인 취약점이 발견되었습니다.
Log4j는 광범위하게 사용되는 라이브러리로써 유명한 온라인 게임인 마인크래프트에서 가장 먼저 확인되었다고 합니다.
취약점에서 가장 큰 분류로 보자면 이번 취약점은 원격 코드 실행 취약점입니다.
해커가 이를 악용할 경우 취약점 서버에 원격 코드를 실행하여 모든 권한을 획득하거나 랜섬웨어 혹은 좀비 서버로 이용할 수 있습니다.
그리고 이번 취약점은 별다는 과정없이 손쉽게 공격할 수 있다는 점에서 정말 심각하다고 볼 수 있습니다.
2. Log4j란?
Log4j란 Apache에서 제공하는 오픈소스로써 JAVA기반 프로그래밍을 할 때 로그를 남기기 위해 사용됩니다.
개발을 해보신 분들은 아시겠지만 개발할 때 로그는 정말 중요합니다.
그만큼 정말 많이 사용되는 유틸리티입니다.
Log4j는 아래의 경로에서 다운로드할 수 있으며, 라이브러리로 추가하여 사용할 수 있습니다.
3. 취약 버전 확인 방법
1) 상용소프트웨어
상용소프트웨어의 경우 위의 링크에서 검색하여 취약여부와 조치여부를 확인하실 수 있습니다.
혹시라도 해당되는 제품이 있으실 경우 조치된 버전을 사용하시거나 조치가 안된 경우 조치가 이루어진까지는 사용을 자제하는 것이 좋습니다.
2) 개발된 어플리케이션
- IDE에서 확인
JAVA로 개발할 경우 주로 Spring이라는 프레임워크를 사용하는데 이 프레임워크는 maven을 사용합니다.
maven은 pom.xml을 통하여 라이브러리를 추가할 수 있습니다.
그리고 빌드하여 추가된 라이브러리 파일은 WEB-INF/lib에 볼 수 있습니다.
- 윈도우에서 확인
탐색기에서 'log4j' 검색하여 취약 버전에 해당되는 라이브러리 파일이 있는지 확인
- 리눅스에서 확인
find / -name 'log4j*'
만약 이 방법외에 툴을 사용하여 확인하고자 하신 경우 알약에서 제공하는 스캐너를 사용하시면 됩니다.
4. 해결 방안
1) 최신 버전으로 업데이트
최신 버전의 경우 해당 취약점이 조치되어 업데이트하여 조치할 수 있습니다.
최신 버전은 Apache 홈페이지에서 받을 수 있습니다.
maven을 사용하고 계신 경우 pom.xml에서 버전을 최신 버전으로 변경하셔서 빌드하시면 됩니다.
2) 임시 조치 방법
최신 버전으로 업데이트 하는 것을 권장드리지만 업데이트가 불가능하다면 아래와 같이 조치하시기 바랍니다.
이번 취약점에서 문제되는 부분은 JNDILookup 클래스와 관련된 부분입니다.
따라서 이 부분을 제거할 경우 원격 코드 실행을 막을 수 있습니다.
zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class
윈도우, 리눅스에서 모두 하실 수 있으며, 검색하셔서 log4j-core-*.jar 파일이 있는 경로에서 명령을 해주셔야 합니다.
'컴소니 > 보안' 카테고리의 다른 글
[웹 서버 보안]디렉토리 리스팅(Directory Listing) 취약점 조치하기 (0) | 2022.06.02 |
---|---|
Apache Log4j 2.x 취약점 조치 및 결과 (0) | 2021.12.23 |
Apache Log4j 2.x 취약점 PoC (1) | 2021.12.21 |
[윈도우 방화벽] IP 별로 접근제어하기(ACL) (3) | 2021.04.14 |
[wail2ban] 원격 데스크톱(RDP) 보안 스크립트 (1) | 2021.03.11 |
댓글