베이스 아카이브

개발자를 고생시킨 Log4j 보안 취약점 본문

IT/지식정보

개발자를 고생시킨 Log4j 보안 취약점

반키 2021. 12. 18. 00:00

 

개발자들이 무언가를 개발할 때 반드시 해야만 하는 것이 있습니다...

 

 

 

바로 " 로그(Log) " 를 남기는 것...!

 

 

 

로그는 한국어로 번역하면 '기록' 을 말합니다.

 

 

 

 

사용자가 어떠한 기능을 실행했는지,

그 기능을 정상적으로 실행했는지,

실행되는데 어떤 값이 넘어왔는지,

어떤 데이터를 되돌려줬는지

등등

 

 

 

 

 

말 그대로 용자가 하는 모든 행위를 기록하는 행위입니다.

 

 

 

 

 

개발자들은 이 로그 기록을 통해서

에러가 났다면

왜 에러가 났는지? 확인하고

혹시 모르는 사이버 공격이 있었다면 캐치하는 등

 

굉장히 필수적인 작업들을 수행해내고 있습니다.

(보안으로 인해서 쉽게 열람은 못하니까 걱정은 하지 않으셔도 됩니다!)

 

 

 

 

그리고 여기.

2021년 기준 프로그래밍 언어 3위이자

전 세계 IT업계 절반 이상이 사용하는 언어인 'Java'가 있습니다.

 

 

 

 

 

당연히 Java를 사용하고 있는 개발자들 또한 개발하는 과정에서 로그를 남깁니다.

 

 

 

 

 

로그를 남기는 방법은 다양하게 있지만

정말 그 어떠한 기술보다 편리한 방법이라서

Java를 사용한다면 99% 사용한다는 기능이 있습니다.

 

 

 

그 기능이 바로 ' Log4j ' 입니다.

 

 

 

이 기능을 사용하면

로그를 기록하게 되는 작업도 굉장히 쉬워지고

내가 개발을 잘하고 있는지 확인하는 디버깅도 쉬워집니다.

Log4j는 Java 개발자들에게는 정말 없어서는 안 될 존재입니다.

 

 

 

 

그런데

 

 

 

 

이 Log4j 라는 기능에서

정말 치명적이고

중대한 보안 문제가 발견됐습니다..........

 

 

 

 

간단히 얘기해보자면

 

만약 홈페이지 또는 프로그램이 Java로 개발됐다고 했을 때

Log4j의 취약점을 이용해서

 

 

데이터베이스에 저장된 개인정보

서버에 저장된 각종 보안 파일

프로그램의 소스코드

...

 

 

해커가 원하는 모든 걸 털어갈 수 있게 되는 거죠.

 

 

 

여기서 털어가고 끝이면 다행인데요..

 

랜섬웨어, 바이러스 감염은 물론이고

해당 프로그램을

내가 원하는 방식으로 마음껏 사용할 수 있게 됩니다.

 

 

 

심지어 다른 해킹 공격은 대게

A > B > C > D 공격 성공!이지만

 

 

이 보안 취약점을 이용하면

A > 공격 성공! 이기 때문에

간단해서 더욱 위험합니다.

 

 

 

지난 주말에 발견된 이 보안 취약점은

빠르게 수정되어서 새로운 버전으로 배포되었다고 하죠...

 

 

 

하지만 문제는 Log4j의 버전 2.0 이상부터

이 취약점이 발견되었고

버전 2.0을 배포한 시점이 2014년이라는 것이죠.....ㅎ

 

 

 

즉, 당장 Log4j 버전을 업데이트해야 하는 것은 물론이고

2014년부터 지금까지 사용한 Log4j 를

모든 부분의 로그 기록을 분석하여

 

' 우리 프로그램이 해커의 공격을 받았는가 ' 를 확인해내야 한다는 거죠.

 

 

 

이렇게 해커들이 개발자보다 먼저 취약점을 발견하여 공격하고

개발자들이 이를 눈치챘을 땐, 이미 매우 늦었을 그런 상황

 ' Zero Day Exploit ' 이라고 부릅니다.

 

 

 

Java 개발자들과

특히 '대한민국 전자정부 프레임워크'를 사용한

국내 공기관 및 공기업 또는 협업 업체들은

이미 주말부터 출근해서 철야작업하는 중이라고 하네요....

 

 

 

이 취약점이 뉴스를 타고 세계적으로 보도되면서

방어하지 못한 기업들에게 해커들의 공격이 쏟아지는 상황이라고 합니다.

 

 

 

Log4j 취약점에 대해서 어느 정도 이해가 되셨나요?

이 포스팅이 도움되셨길 바랍니다!

 

Comments