Dark background with blue code overlay
블로그

Log4j 방어에 관한 Akamai의 권장사항

Akamai blue wave

Written by

Aparna Rayasam, SVP & GM Application Security, Akamai

December 16, 2021

log4j.png

Executive Summary

심각한 원격 코드 실행 취약점(CVE-2021-44228)이 대규모 엔터프라이즈 조직을 비롯하여 애플리케이션에서 널리 사용되는 오픈 소스 로깅 유틸리티인 Log4j에서 공개적으로 밝혀졌습니다. 

이 취약점을 통해 공격자들은 라이브러리 활용 애플리케이션을 실행하는 시스템에서 로그 메시지를 조작함으로써 정보를 유출하고 악성 코드를 실행할 수 있습니다. 취약한 서버를 찾기 위해 인터넷 전체에서 검색을 수행하는 서버 에 대한 보고가 이미 있으며, Akamai의 위협 인텔리전스 팀은 이 취약점을 악용하려는 많은 시도를 관측하고 있습니다. Log4j는 널리 사용되는 여러 프레임워크와 많은 Java 애플리케이션에 통합되어 그 영향이 널리 퍼져 있습니다.

애플리케이션 및 API 보안 솔루션, Enterprise Threat Protector, Guardicore Segmentation 등 Akamai의 광범위한 보안 제품군은 다양한 방식으로 이 취약점을 해결할 수 있는 좋은 위치에 있습니다. 기업은 Log4j를 최신 버전인 2.16.0으로 업데이트하는 것이 좋습니다. 이 취약점은 급속도로 확대되는 성격이 있기 때문에 Akamai 팀은 고객을 지원하기 위한 방어 조치를 지속적으로 개발 및 배포할 예정입니다. 

Log4j 취약점이란?

2021년 12월 9일, Log4j에서 인증되지 않은 원격 코드 실행 및 데이터 유출과 관련된 치명적인 취약점(CVE-2021-44228)이 보고되었으며 이는 오픈 소스 로깅 기능이 흔히 사용된다는 점에서 우려를 불러일으켰습니다. 이 기능은 널리 쓰일 뿐만 아니라 악용하기도 쉬워 특히 큰 영향을 미칩니다. 이 취약점은 활발하게 악용되고 있으며, 전 세계 보안 팀은 연구 및 방어 작업을 진행하고 있습니다.

감염된 시스템을 사용하여 공격자는 데이터를 유출하고, Log4j가 실행되는 소프트웨어를 원격으로 제공할 수 있습니다. 이를 통해 공격자는 서버 내부에서 임의의 명령을 실행하여 정보와 비밀을 노출할 수 있을 뿐만 아니라, 해당 서버를 추가 공격용 실행 패드로 만들 수 있습니다. 이러한 공격은 네트워크 내부에 깊숙이 자리하여 인터넷에 직접 접속할 수 없는 보호된 시스템을 표적으로 삼을 수 있습니다.

Java 세계의 개발자들은 Log4j를 광범위하게 사용하여 오류 및 디버그 정보를 쉽게 로깅할 수 있습니다. 따라서 Java 기반의 소프트웨어를 사용하는 제품 공급업체가 취약할 수 있습니다. 애플리케이션에서 Log4j를 직접 사용하지 않더라도, 많은 일반적인 툴과 프레임워크에서 내부적으로 Log4j를 사용하므로 애플리케이션 스택에 이 취약점이 발생할 수 있습니다.  

Log4j 취약점은 심각도가 어떻게 되나요?

Akamai는 12월 9일에 Log4j 취약점의 악용 시도를 처음 관측했지만, 이 취약점이 악용되었다는 증거가 몇 달 동안 점점 늘어나고 있습니다. 취약점이 공개된 이후로 저희는 다양한 익스플로잇 변종을 확인했으며 그 공격 트래픽 속도는 시간당 약 2백만 번의 시도 횟수로 지속적이었습니다. 이 변종은 전례 없는 속도로 진화하고 있습니다. 

지금까지 확인된 공격의 절반 이상(~57%)은 이전에 Akamai의 위협 인텔리전스 데이터베이스에서 악의적 행위자로 분류된 공격자로부터 발생했습니다. 패치되지 않은 시스템 수가 매우 많기 때문에 앞으로 몇 달 동안 계속해서 악용 시도를 보게 될 것으로 예상됩니다. Akamai의 보안 연구 및 사고 대응 팀은 Akamai 고유의 가시성 및 인텔리전스를 활용하여 인프라와 고객을 지속적으로 모니터링하고 보호합니다.

취약점이 발생했을 때 취해야 할 가장 중요한 조치는 감염된 시스템을 패치하는 것이지만, 보안 연구원들은 이 작업에 시간이 걸린다는 점을 이해하고 있습니다. 대부분 기업은 취약한 시스템에 대한 가시성조차 확보하지 못할 수 있습니다. 따라서 위협 표면을 최대한 줄이기 위해 추가 방어 조치를 배포해야 합니다.

이를 지원하기 위해 Akamai는 여러 권장 사항을 제공합니다. 현재 Log4j와 관련된 공격 트래픽 중 가장 많은 양이 웹 애플리케이션 기반이므로, 패치 후 기업이 취할 수 있는 가장 효과적인 작업은 Akamai의 웹 애플리케이션 및 API 보호 기능을 활용하는 것입니다. 공격 벡터가 진화함에 따라 기업 내부에서 무엇을 어떻게 해야 하는지 알아보려면 계속 읽으시기 바랍니다. 

Akamai 앱 및 API 보호 제품군을 사용하여 Log4j 악용 방어

Akamai는 WAF(웹 애플리케이션 방화벽) 룰을 계속 업데이트하여 이 익스플로잇과 다양한 변종으로부터 보호 기능을 제공합니다. 여기에는 Akamai의 Kona Rule Set 및 적응형 보안 엔진내의 룰 3000014 업데이트가 포함됩니다. 자동 공격 그룹을 사용하는 고객의 경우 명령어 인젝션 그룹을 업데이트했습니다. 현재 거부(DENY) 모드에서 이러한 룰 또는 공격 그룹을 활성화한 고객은 다음 보호 엔진 및 버전에 대한 자동 인라인 보호를 받게 됩니다.

  • Kona Rule Set — 2019년 10월 29일 이후의 모든 버전

  • 자동화된 공격 그룹 — 모든 버전

  • 적응형 보안 엔진 — 모든 버전

많은 서버, 특히 인터넷에 직접 접속할 수 있는 고위험 환경에 있는 서버는 이미 감염되었을 수 있습니다. 감염의 징후를 식별하기 위해 다음 명령을 실행하면 악용 시도가 표시될 수 있습니다.

sudo egrep -i -r '\$\{jndi:(ldap[s]?|rmi|dns)://' /var/log

Akamai의 웹 애플리케이션 및 API 보호에 대해 자세히 알아보려면 더 읽어보거나 혹은 Akamai에 문의해주시기 바랍니다.

이 단계에서는 WAF 보호가 웹 서버에 매우 효과적일 수 있지만, 기업은 감염으로 이어질 수 있는 대체 공격 경로도 고려해야 합니다. 이를 위해 마이크로세그멘테이션을 사용하는 것이 좋습니다. 그러면 가능한 노출에 대한 가시성을 확보하고 리스크와 확산을 줄일 수 있습니다. 

Enterprise Threat Protector를 사용하여 Log4j 악용 탐지

Akamai 위협 연구원은 고객 DNS, 프록시, 싱크홀 데이터를 검토한 결과, Log4j 취약점을 실제로 사용하려는 공격자와 관련된 변칙적 행동을 찾아냈습니다. DNS 데이터에서 저희는 “jndi:ldap” 문자열이 포함된 도메인에 대한 DNS 쿼리를 보고 놀랐습니다. 이는 도메인 이름에 잘못된 문자가 포함되어 있으므로 확인되지 않는 잘못된 DNS 쿼리입니다. 또한, 저희는 싱크홀 서버로 리디렉션된, 알려진 악성 도메인에 대한 트래픽을 확인했습니다. 이러한 도메인은 취약한 서버를 악용하는 데 사용되는 악성 Java 코드를 호스팅했습니다. 이 모든 것은 고객 네트워크 내에서의 잠재적인 악용을 나타냅니다. 

Akamai Guardicore Segmentation을 사용하여 Log4j 악용 방어

Akamai Guardicore Segmentation을 사용하는 고객은 프로세스 수준의 가시성을 활용하여 환경 내 취약한 애플리케이션과 보안 리스크를 식별할 수 있습니다. 그런 다음 정상적인 비즈니스 운영을 방해하지 않으면서 이를 통해 네트워크 트래픽을 정밀하게 제어하여 취약한 시스템에 대한 공격을 방어할 수 있습니다.

위협 대상 파악: 취약한 Java 프로세스 및 Log4j 악용 식별

잠재적인 Log4j 악용으로부터 보호하려면 먼저 잠재적으로 악용 가능한 프로세스를 식별해야 합니다. 이를 위해서는 네트워크 트래픽에 대한 심층적인, 프로세스 수준의 가시성이 필요하며 이 기능은 Akamai Guardicore Segmentation에서 제공합니다. 인터넷 연결 및 트래픽에 대한 정확한 가시성을 통해 사용자는 비즈니스 운영을 방해하지 않으면서 어떤 방어 조치를 취해야 하는지 명확하게 알 수 있습니다. 

공격 방어: 악성 IoC 및 공격 벡터 차단

취약한 애플리케이션이 식별되면 조치를 취할 수 있어야 합니다. 패치가 진행되는 동안 Akamai Guardicore Segmentation은 공격에 대한 알림, 방어, 방지를 위한 다양한 옵션을 제공합니다. 결정적으로, 정상적인 비즈니스 기능에 대한 방해 수준을 최소한으로 줄이거나 전혀 방해하지 않으면서 공격 벡터를 정확하게 방어하거나 격리하려면 네트워크 통신 및 트래픽을 상세하고 정밀하게 제어하는 솔루션이 필요합니다. 여기에는 다음이 포함됩니다.

  • 위협 인텔리전스 방화벽(TIFW) 및 DNS 보안을 통한 자동 IoC 차단 

  • 감염된 서버를 완전히 격리 

  • 취약 자산에 대한 인바운드 및 아웃바운드 트래픽 차단 

  • Java 애플리케이션에서 인터넷으로 나가는 트래픽 차단

추가적으로 Guardicore Hunt 고객의 경우, 보안 연구원으로 구성된 전담 팀이 환경을 지속적으로 모니터링하고 조사합니다. 보안 리스크에 대한 알림 및 방어 조치 제안이 즉시 전송됩니다.  

Akamai Guardicore Segmentation에 대해 자세히 알아보려면 더 읽어보거나 혹은 Akamai에 문의해주시기 바랍니다.

결론

Akamai는 인사이트를 계속 공유할 것이며 이와 동시에 Log4j 익스플로잇을 면밀히 모니터링 및 연구하고 Akamai의 보호 기능과 성능에 대한 업데이트를 적시에 제공합니다.



Akamai blue wave

Written by

Aparna Rayasam, SVP & GM Application Security, Akamai

December 16, 2021