Google에서 설명한 Apache Log4j 취약점

12월 17일, 2021 블로그에서 Google Open Source Insights Team은 Apache Log4j 취약점과 관련하여 관찰한 전체 상황을 설명했습니다.. 그들은 오픈 소스 JVM 생태계를 수정하는 과정에서 널리 퍼진 취약점과 현재 진행 상황에 대해 설명했습니다.. 또한 팀은 전체 생태계에서 이 취약점이 수정되는 데 걸리는 시간과 다음에 집중해야 할 부분에 대한 생각을 공유했습니다..

12월 9일 정보 보안 생태계는 심각한 정도와 광범위한 영향을 미치는 취약점의 존재를 알게 되었습니다.. 수만 개의 소프트웨어 패키지 (Java 생태계의 아티팩트) 프로젝트는 인기 있는 로깅 도구를 사용합니다., 취약점이 논의된 것으로 판명된 log4j. 전문가들이 설명하듯이 이 취약점은 로깅 라이브러리 log4j에 의해 노출된 diffident JNDI 조회 기능을 이용하여 원격 코드 실행을 허용합니다.. 많은 버전의 라이브러리에서 기본적으로 악용된 기능이 존재했습니다..

Apache Log4j 취약점을 수정하는 데 시간이 걸립니다.

얼마 전 공개된 log4j 취약점은 35,000 자바 패키지, 번호 매기기 8% Maven Central 저장소. 리포지토리가 가장 중요한 Java 패키지 리포지토리이기 때문에 소프트웨어 산업에 광범위한 결과를 가져왔습니다.. 전문가들은 다음과 같이 지적합니다. 8% Maven Central Advisories 결과의 평균 수와 함께 생태계 결과에 대한 거대한 결과입니다. 2% 그리고 중앙값보다 작음 0.1%. 언급된 숫자가 모든 Java 패키지를 포함하지는 않지만, 예를 들어 직접 배포된 바이너리.

게시물 게시 당시 문제의 거의 5,000개의 유물이 수정되었습니다.. 그리고 이상 30,000 유물, 많은 사람들이 다른 인공물에 의존, 아직 패치를 기다립니다. 팀은 아티팩트에 영향을 받은 버전이 하나 이상 있고 영향을 받지 않은 더 큰 안정 버전을 릴리스한 경우 아티팩트를 수정된 것으로 간주한다고 언급합니다. (의미론적 버전 관리에 따른 것입니다.). log4j의 경우 아티팩트가 다음으로 업데이트되면 수정된 것으로 간주됩니다. 2.16.0 또는 더 이상 log4j에 대한 종속성이 없습니다..

두 가지 중요한 문제가 수정 프로세스를 방해합니다.

일반적으로 상황이 명확하다고 정의할 수 있지만, 전문가들은 두 가지 중요한 수정 문제를 지적합니다.. 그들이 정의하는 첫 번째 목표는 많은 아티팩트가 log4j에 간접적으로 의존한다는 사실입니다.. 직접적인 종속성을 가진 사람들은 주변을 설명합니다. 7,000 영향을 받은 유물 중. 이러한 경우 해당 버전은 영향을 받는 log4j-core 또는 log4j-api 버전에 따라 다릅니다., CVE에 설명된. 간접 의존성 또는 전이적 의존성은 자신의 의존성의 의존성을 의미합니다..

이 모든 종속성의 직원은 종속성 체인으로 볼 경우 수정하는 데 상당한 방해 요소를 만듭니다.. 여기 모든 것이 매우 명확합니다.: 더 깊은 취약점 넘어지다, 문제를 해결하기 위해 더 많은 단계를 거쳐야 합니다.. 팀의 소비자 의존성 그래프에 따르면 히스토그램 결과는 큰 숫자를 보여주었습니다. 이상에서 80% 패키지 취약점의 깊이가 한 수준 이상입니다.. 대부분은 5단계 아래이고 일부는 9단계 아래입니다.. 수정 프로세스는 먼저 가장 깊은 종속성으로 이동하고 나중에 모든 트리로 이동해야 합니다..

Google에서 설명한 Apache Log4j 취약점
직접 및 간접 종속성의 시각화

열린 범위는 가장 최근에 출시된 버전을 선택할 수 있는 기회를 제공합니다.

또 다른 어려움은 종속성 해결 알고리즘 및 요구 사항 사양 규칙의 생태계 수준 선택에 있습니다.. 관행은 종속성 요구 사항에 대한 개방 범위를 일상적으로 지정하는 npm과 같은 관행과 다릅니다.. 개방형 범위는 종속성 요구 사항을 충족하는 가장 최근에 출시된 버전을 선택할 수 있는 기회를 제공합니다.. 그리고 이후에 새로운 수정 사항을 가져옵니다.. 사용자는 패치가 출시된 후 다음 빌드에서 패치된 버전을 받습니다.. 종속성을 더 빨리 생성합니다..

“자바 생태계에서, "소프트" 버전 요구 사항을 지정하는 것이 일반적입니다. 동일한 패키지의 다른 버전이 종속성 그래프의 앞부분에 나타나지 않는 경우 확인 알고리즘에서 사용하는 정확한 버전입니다.. 수정 사항을 전파하려면 종속성 요구 사항을 패치된 버전으로 업데이트하기 위해 유지 관리자가 명시적인 조치를 취해야 하는 경우가 많습니다.," 오픈 소스 인사이트 팀 이 두 번째 문제에 대해 썼습니다..

이를 통해 팀은 자동화된 종속성 업데이트를 활성화하고 보안 완화를 추가하도록 오픈 소스 커뮤니티에 조언합니다.. 그들은 또한 목록을 제공했습니다 500 전이 사용량이 가장 높은 영향을 받는 패키지. 전문가의 의견으로는 이러한 패키지의 우선 순위를 정하는 것이 수정 노력을 용이하게 하고 결과적으로 더 많은 커뮤니티 차단을 해제할 것입니다.. 팀은 log4j 버전을 업그레이드한 오픈 소스 유지 관리자와 소비자에게 감사를 표했습니다..

Google에서 설명한 Apache Log4j 취약점
log4j 깊이의 종속성 그래프

팀이 표현한 모호한 의견을 모두 수정하는 데 시간이 얼마나 걸리느냐는 질문에. 알기 어렵다고 한다. Maven 패키지에 영향을 미치는 모든 공개적으로 공개된 중요한 권고인 경우 프로세스에 시간이 걸릴 수 있습니다.. 절반도 안된다고 합니다 (48%) 취약점이 영향을 받은 아티팩트가 수정되었습니다.. 그러나 log4j 전면에서는 다음과 같이 유망한 것으로 보입니다. 13% 수정된.

앤드류 네일

몬트리올의 사이버 보안 저널리스트, 캐나다. Universite de Montreal에서 커뮤니케이션 과학을 공부했습니다.. 언론인이라는 직업이 내 인생에서 하고 싶은 일인지 확신이 서지 않았습니다., 그러나 기술 과학과 함께, 그것은 바로 내가 하고 싶은 일이다. 제 직업은 사이버 보안 세계의 최신 동향을 파악하고 사람들이 PC에 있는 맬웨어를 처리하도록 돕는 것입니다..

회신을 남겨주

맨 위로 돌아가기 버튼