보안/보안이슈

Apache log4j2 취약점 이슈

프리윙즈 2021. 12. 29. 19:23
728x90
반응형

1. 개요

log4j 이슈 최초 발견자는 2021년 11월 24일 알리바바 클라우드 보안팀의 Chen Zhaojun에 의해 발견되었고,

2021년 12월 10일 Apache Log4j2에서 JNDI parser를 이용한 RCE취약점을 공개하였습니다.(CVE-2021-44228)

게임 마인크래프트의 통신 서버를 제작하는 PaperMC에서 해당 취약점을 이용한 대규모 해킹 시도를 포착하여

긴급 공지 및 취약점 수정을 계기로 알려졌습니다

 

2. 영향받는 소프트웨어 : Apache에서 배포 중인 opensource 프로그램

 

3. 취약점 설명

  • 공격자가 원격서버에서 payload를 검색하고 local에서 실행할 수 있도록 하는 LDAP서버에 JNDI 구성요소를
    이용하여 공격을 할 수 있다.
  • log4j 라이브러리를 사용하면 공격자가 응용프로그램 내에서 다양한 데이터를 기록할 수 있다.
  • 사용자 입력에 특수문자가 포함되어 있고 나중에 기록이 될 때 log4j에서 JAVA 메소드에 대한 원격 조회를
    수행하면서 공격자가 제어하는 LDAP서버 악의적인 JAVA 클래스를 실행하도록 할 수 있다.

4. 알려진 계기

게임 마인크래프트의 통신 서버를 제작하는 PaperMC에서 해당 취약점을 이용한 대규모 해킹 시도를 포착하여

긴급 공지 및 취약점 수정을 계기로 사람들에게 알려지는 계기가 되었습니다.

 

반응형

 

5. Log4j 취약점 영향받는 버전

  • Log4j 2.x ~ 2.15-rc1
  • log4j 2.0-beta9 ~ 2.12.1
  • log4j 2.13.0 ~ 2.15.0
  • log4j 1.2 ~ 1.2.17

 

6. Log4j OS별 설치 여부 확인

  • Log4j 설치 여부 확인(Linux)

       - find / -name 'log4j*'

       - 위 명령어 입력하면 log4j 설치여부를 확인할 수 있다.

 

  •  log4j 설치 여부 확인(Windows)

       - window 탐색기의 검색 기능을 이용하여 검색창에 log4j를 검색한다

 

 

7. 조치 방안

  • 방화벽에서 트래픽 중 LDAP 및 RMI의 아웃바운드 트래픽을 사용하지 않도록 설정한다
    • “${jndi:ldap:”, ${jndi:dns:” 탐지 패턴 생성
  • JAVA 소프트웨어는 JNDI 조회를 사용하지 않도록 설정한다
    • JndiLookup 클래스를 경로에서 제거하면 된다.
  • log4j를 2.16.0 이상으로 업그레이드 한다
    • 업그레이드 시 JNDI Disable로 기본값이 설정되고, Message Lookups 기능이 삭제된다.

 

반응형