‘로그4j’(log4j)에서 심각한 해킹을 야기할 수 있는 취약점이 발견되었다는 소식입니다. AP통신 보도에 따르면 게임 서버나 클라우드 서버를 운영하는 정보기술(IT) 기업체는 물론이고 웹사이트를 운영하는 기업들, 심지어 정부 기관까지 이 소프트웨어를 활용하고 있어 심각한 해킹 위험에 노출될 수 있다는 우려를 제기했는데요.
문제가 지적된 소프트웨어는 오픈소스 로깅 라이브러리 ‘로그4j’다. 로깅이란 서버·프로그램 등의 유지 관리를 목적으로 동작 상태를 기록으로 남기는 일을 말하는데, 사실상 거의 모든 서버가 이 라이브러리를 사용하는 것으로 알려졌습니다. 발견된 취약점을 공격하면 해커들이 목표 대상 컴퓨터의 모든 권한을 취득할 수 있습니다. 보안 업체 텐에이블의 아밋 요란 최고경영자(CEO)는 이 취약점에 대해 “지금 위험에 처하지 않은 회사가 없다”며 “최근 10년간 가장 치명적이고 거대한 취약점이다. 현대 컴퓨터 역사를 통틀어 최악의 보안 결함일 수도 있다”고 말했습니다. 특히 애플, 아마존, 트위터, 클라우드플레어 등 거대 IT기업 역시 로그4j를 이용하고 있어 위험에 노출된 상태입니다.
이 취약점은 마인크래프트’에서 처음 확인되었습니다. 자바(Java) 언어로 개발된 마인크래프트 버전에서 프로그래밍 코드로 이뤄진 특정 채팅 메시지를 입력하면 대상 컴퓨터에서 원격으로 프로그램을 실행시킬 수 있는 것으로 나타났는데요. MS는 즉시 업데이트를 적용하였습니다. 이 취약점은 ‘로그4셸’이라는 별칭이 부여됐다. 오픈소스 프로젝트를 지원·관리하는 아파치소프트웨어재단은 이 취약점의 보안 위협 수준을 1∼10단계 중 최고 등급인 ‘10단계’라고 평가했습니다.
일단 국가정보원은 11일 “실태 파악, 정보공유, 보안패치 안내 등 선제적 조치를 취했다”며 “현재까지 국가·공공기관 대상 관련 해킹 피해 사례는 없는 것으로 확인됐다”고 밝혔습니다. 국정원은 피해 예방을 위해 취약점 보안패치 적용 등 보안 대책을 국가사이버위협정보공유시스템(NCTI), 인터넷용정보공유시스템(KCTI)과 사이버안보센터 홈페이지를 통해 안내했습니다.
마지막으로 국가사이버안보센터의 Apache 웹서버 'Log4j' 취약점 보안패치 권고를 소개해드리겠습니다.
o Apache 웹서버에 존재하는 'Log4j' 라이브러리에서 심각한 보안 취약점이 발견된 바, 피해예방을 위해 보안업데이트 하시기 바랍니다.
o 취약점 정보
- CVE-2021-44228(원격코드 실행), 위험도(치명적, 10.0)
- 해커가 Apache 서버의 Log4j 취약버전 대상으로 악성페이로드 전송시, 원격코드 실행이 가능
* 참고 : https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-44228
o 조치사항
- Apache 웹서버에서 Log4j 라이브러리 2.0-beta9 ~ 2.14.1버전을 사용하는 경우 2.15.0 버전으로 업데이트
* 참고 : https://logging.apache.org/log4j/2.x/download.html (Apache사 권고문)
- 상위버전 업데이트 불가시, Apache사 권고문을 참조하여 조치
* Log4j 2.10이후 버전 사용시 조치방법 : 환경변수 'Log4J_FORMAT_MSG_NO_LOOKUPS' 또는 시스템 속성 'log4j2.formatMsgNoLookups'를 true로 설정
정리
- CVE-2021-44228 : 2.0-beta9 ~ 2.14.1 버전 (Log4j 2.12.2 제외)
- CVE-2021-45046 : 2.0-beta9 ~ 2.12.1 및 2.13.0 ~ 2.15.0 버전
- CVE-2021-4104 : 1.2 버전
※ JMSAppender를 사용하지 않는 경우 취약점 영향 없음
※ log4j 1.x버전 사용자의 경우 업그레이드 지원 중지로 인해 다른 보안위협에 노출될 수 있으므로 최신 업데이트 적용 권고
영향을 받는 버전 : 2.0-beta9 ~ 2.14.1 모든버전
가. CVE-2021-44228 : 2.0-beta9 ~ 2.14.1 버전 (Log4j 2.12.2 제외)
나. CVE-2021-45046 : 2.0-beta9 ~ 2.12.1 및 2.13.0 ~ 2.15.0 버전
다. CVE-2021-4104 : 1.2 버전
※ JMSAppender를 사용하지 않는 경우 취약점 영향 없음
※ log4j 1.x버전 사용자의 경우 업그레이드 지원 중지로 인해 다른 보안위협에 노출될 수 있으므로 최신 업데이트 적용 권고
확인방법
가. Windows 서버 계열
1) Windows 검색 기능을 활용하여 'Log4j' 이름의 파일 검색
2) 검색된 파일명에 포함된 버전명과 상기 취약 버전을 비교하여 확인
나. Linux 서버 계열
1) 리눅스 검색 기능을 활용하여 'Log4j' 이름의 파일 검색(예 : find / -iname "Log4j*" 2>dev/null)
2) 검색된 파일명에 포함된 버전명과 상기 취약버전을 비교하여 확인
임시 조치방안
가. 2.0-beta9 ~ 2.10.0 버전
JndLookup 클래스를 경로에서 제거 : zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class
나. 2.7 ~ 2.14.1 버전
log4j.xml 파일 설정 변경(PatternLayout 속성에 %m → %m{nolookups})
다. 2.10 ~ 2.14.1 버전
log4j2.formatMsgNoLookups 또는 LOG4J_FORMAT_MSG_NO_LOOKUPS 환경변수를 true로 설정
해결방안 : 제조사 홈페이지를 통해 최신버전(2.15.0)으로 업데이트 적용
수정 대응방안
제조사 홈페이지를 통해 최신버전으로 업데이트 적용
※ 제조사 홈페이지에 신규버전이 계속 업데이트되고 있어 확인 후 업데이트 적용 필요
※ 신규 업데이트가 불가할 경우 임시조치방안 적용 권고
- CVE-2021-44228, CVE-2021-45046
· Java 8 : Log4j 2.16.0으로 업데이트
· Java 7 : Log4j 2.12.2으로 업데이트
· 임시조치방안 : JndiLookup 클래스를 경로에서 제거 :
zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class
※ 임시조치방안은 게시된 취약점에 대한 임시적 조치로 신규 버전으로 업그레이드를 권장함
※ log4j-core JAR 파일 없이 log4j-api JAR 파일만 사용하는 경우 위 취약점의 영향을 받지 않음
- CVE-2021-4104
· Java 8 : Log4j 2.16.0으로 업데이트
· Java 7 : Log4j 2.12.2으로 업데이트
추가 linkhttps://spring.io/blog/2021/12/10/log4j2-vulnerability-and-spring-boot
https://logging.apache.org/log4j/2.x/security.html
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-44228
'Tech 콘서트 & News' 카테고리의 다른 글
7. 2021 KOREA SUPERCOMPUTING CONFERENCE (5) | 2021.12.20 |
---|---|
6. 산업부, 국가핵심기술 고시 개정안 행정예고 (10) | 2021.12.18 |
4. 오픈소스로부터 가치를 캡쳐하기 (0) | 2021.12.01 |
3. 통신 분야 오픈소스 동향 (0) | 2021.12.01 |
2. Opensource 뒤의 Maintainer (0) | 2021.12.01 |
댓글