완화를 위한 접근 방식 -2021-44228 CVE - 아마존 EMR

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

완화를 위한 접근 방식 -2021-44228 CVE

참고

Amazon EMR 릴리스 6.9.0 이상의 경우 Log4j 라이브러리를 사용하는 Amazon에서 EMR 설치한 모든 구성 요소는 Log4j 버전 2.17.1 이상을 사용합니다.

에서 EMR 실행되는 Amazon EC2

CVE-2021-44228에서 논의된 문제는 신뢰할 수 없는 소스의 입력을 처리할 때 사용되는 2.0.0에서 2.14.1 사이의 Apache Log4j 코어 버전과 관련이 있습니다. Amazon EMR 5.x 릴리스 최대 5.34.0과 Amazon EMR 6.5.0까지의 EMR 6.x 릴리스와 함께 시작된 Amazon EMR 클러스터에는 이러한 버전의 Apache Log4j를 사용하는 아파치 하이브, 플링크, 프레스토, 트리노와 같은 오픈 소스 프레임워크가 포함되어 있습니다. HUDI 하지만 많은 고객이 Amazon EMR 클러스터에 설치된 오픈 소스 프레임워크를 사용하여 신뢰할 수 없는 소스의 입력을 처리하고 기록합니다.

다음 섹션에 설명된 대로 “Log4j CVE -2021-44228용 Amazon EMR 부트스트랩 액션 솔루션”을 적용하는 것이 좋습니다. 이 솔루션은 -2021-45046도 해결합니다. CVE

참고

Amazon용 부트스트랩 액션 스크립트는 Oozie의 점진적인 버그 수정 및 개선 사항을 포함하도록 2022년 9월 7일에 EMR 업데이트되었습니다. Oozie를 사용하는 경우 다음 섹션에 설명된 업데이트된 Amazon EMR 부트스트랩 작업 솔루션을 적용해야 합니다.

아마존 EMR 온 EKS

Amazon EMR on을 기본 EKS 구성으로 사용하는 경우 CVE -2021-44228에 설명된 문제의 영향을 받지 않으므로 섹션에 설명된 솔루션을 적용할 필요가 없습니다. Log4j용 아마존 EMR 부트스트랩 액션 솔루션 -2021-44228 및 -2021-45046 CVE CVE 아마존 EMR EKS 온의 경우 스파크용 아마존 EMR 런타임은 아파치 Log4j 버전 1.2.17을 사용합니다. Amazon EMR EKS on을 사용할 때는 log4j.appender 구성 요소의 기본 설정을 로 변경해서는 안 log 됩니다.

Log4j용 아마존 EMR 부트스트랩 액션 솔루션 -2021-44228 및 -2021-45046 CVE CVE

이 솔루션은 Amazon EMR 클러스터에 적용해야 하는 Amazon EMR 부트스트랩 작업을 제공합니다. 각 Amazon EMR 릴리스에 대해 아래에서 부트스트랩 액션 스크립트로 연결되는 링크를 찾을 수 있습니다. 이 부트스트랩 작업을 적용하려면 다음 단계를 완료해야 합니다.

  1. Amazon EMR 릴리스에 해당하는 스크립트를 의 로컬 S3 버킷에 AWS 계정복사합니다. Amazon EMR 릴리스에 맞는 부트스트랩 스크립트를 사용하고 있는지 확인하십시오.

  2. 설명서에 설명된 지침에 따라 S3 버킷에 복사된 스크립트를 실행하도록 EMR 클러스터의 부트스트랩 작업을 설정하십시오. EMR EMR클러스터에 다른 부트스트랩 작업이 구성되어 있는 경우 이 스크립트가 실행할 첫 번째 부트스트랩 작업 스크립트로 설정되어 있는지 확인하십시오.

  3. 기존 EMR 클러스터를 종료하고 부트스트랩 작업 스크립트를 사용하여 새 클러스터를 시작합니다. AWS 테스트 환경에서 부트스트랩 스크립트를 테스트하고 프로덕션 환경에 적용하기 전에 애플리케이션을 검증하는 것이 좋습니다. EMR마이너 릴리스의 최신 버전 (예: 6.3.0) 을 사용하지 않는 경우 최신 버전 (예: 6.3.1) 을 사용한 다음 위에서 설명한 솔루션을 적용해야 합니다.

CVE-2021-44228 & CVE -2021-45046 - 아마존 릴리스를 위한 부트스트랩 스크립트 EMR
아마존 EMR 출시 번호 스크립트 위치 스크립트 릴리스 날짜
6.5.0
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-6.5.0-v2.sh
2022년 3월 24일
6.4.0
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-6.4.0-v2.sh
2022년 3월 24일
6.3.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-6.3.1-v2.sh
2022년 3월 24일
6.2.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-6.2.1-v2.sh
2022년 3월 24일
6.1.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-6.1.1-v2.sh
2021년 12월 14일
6.0.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-6.0.1-v2.sh
2021년 12월 14일
5.34.0
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.34.0-v2.sh
2021년 12월 12일
5.33.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.33.1-v2.sh
2021년 12월 12일
5.32.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.32.1-v2.sh
2021년 12월 13일
5.31.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.31.1-v2.sh
2021년 12월 13일
5.30.2
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.30.2-v2.sh
2021년 12월 14일
5.29.0
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.29.0-v2.sh
2021년 12월 14일
5.28.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.28.1-v2.sh
2021년 12월 15일
5.27.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.27.1-v2.sh
2021년 12월 15일
5.26.0
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.26.0-v2.sh
2021년 12월 15일
5.25.0
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.25.0-v2.sh
2021년 12월 15일
5.24.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.24.1-v2.sh
2021년 12월 15일
5.23.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.23.1-v2.sh
2021년 12월 15일
5.22.0
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.22.0-v2.sh
2021년 12월 15일
5.21.2
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.21.2-v2.sh
2021년 12월 15일
5.20.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.20.1-v2.sh
2021년 12월 15일
5.19.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.19.1-v2.sh
2021년 12월 15일
5.18.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.18.1-v2.sh
2021년 12월 15일
5.17.2
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.17.2-v2.sh
2021년 12월 15일
5.16.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.16.1-v2.sh
2021년 12월 15일
5.15.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.15.1-v2.sh
2021년 12월 15일
5.14.2
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.14.2-v2.sh
2021년 12월 15일
5.13.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.13.1-v2.sh
2021년 12월 15일
5.12.3
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.12.3-v2.sh
2021년 12월 15일
5.11.4
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.11.4-v2.sh
2021년 12월 15일
5.10.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.10.1-v2.sh
2021년 12월 15일
5.9.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.9.1-v2.sh
2021년 12월 15일
5.8.3
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.8.3-v2.sh
2021년 12월 15일
5.7.1
s3://elasticmapreduce/bootstrap-actions/log4j/patch-log4j-emr-5.7.1-v2.sh
2021년 12월 15일
EMR출시 버전 2021년 12월 기준 최신 개정
6.3.0 6.3.1
6.2.0 6.2.1
6.1.0 6.1.1
6.0.0 6.0.1
5.33.0 5.33.1
5.32.0 5.32.1
5.31.0 5.31.1
5.30.0 또는 5.30.1 5.30.2
5.28.0 5.28.1
5.27.0 5.27.1
5.24.0 5.24.1
5.23.0 5.23.1
5.21.0 또는 5.21.1 5.21.2
5.20.0 5.20.1
5.19.0 5.19.1
5.18.0 5.18.1
5.17.0 또는 5.17.1 5.17.2
5.16.0 5.16.1
5.15.0 5.15.1
5.14.0 또는 5.14.1 5.14.2
5.13.0 5.13.1
5.12.0, 5.12.1, 5.12.2 5.12.3
5.11.0, 5.11.1, 5.11.2, 5.11.3 5.11.4
5.9.0 5.9.1
5.8.0, 5.8.1, 5.8.2 5.8.3
5.7.0 5.7.1

자주 묻는 질문(FAQ)

  • EMR5개 이전 EMR 릴리스가 -2021-44228의 영향을 받나요? CVE

    아니요. EMREMR릴리스 5 이전 릴리스에서는 2.0 이전의 Log4j 버전을 사용합니다.

  • 이 솔루션은 -2021-45046을 CVE 해결합니까?

    예, 이 솔루션은 -2021-45046도 해결합니다. CVE

  • 클러스터에 설치한 사용자 지정 애플리케이션을 솔루션이 처리합니까? EMR

    부트스트랩 스크립트는 에서 설치한 JAR EMR 파일만 업데이트합니다. 부트스트랩 작업, EMR 클러스터에 제출된 단계, 사용자 지정 Amazon Linux AMI 사용 또는 기타 메커니즘을 통해 클러스터에 사용자 정의 애플리케이션 및 JAR 파일을 설치하고 실행하는 경우, 애플리케이션 공급업체에 문의하여 사용자 정의 애플리케이션이 CVE -2021- 44228의 영향을 받는지 확인하고 적절한 솔루션을 결정하십시오.

  • on으로 EMR사용자 지정된 docker 이미지를 처리하려면 어떻게 해야 합니까? EKS

    사용자 지정된 docker 이미지를 EKS 사용하여 EMR Amazon에 사용자 지정 애플리케이션을 추가하거나 EKSwith 사용자 지정 애플리케이션 파일에 대한 작업을 EMR Amazon에 제출하는 경우, 애플리케이션 공급업체에 문의하여 사용자 정의 애플리케이션이 CVE -2021-44228의 영향을 받는지 확인하고 적절한 솔루션을 결정하십시오.

  • 부트스트랩 스크립트는 -2021-44228 및 -2021-45046에 설명된 문제를 완화하기 위해 어떻게 작동합니까? CVE CVE

    부트스트랩 스크립트는 새 지침 세트를 추가하여 시작 지침을 업데이트합니다. EMR 이 새 지침은 에서 설치한 모든 오픈 소스 프레임워크에서 Log4j를 통해 사용되는 JndiLookup 클래스 파일을 삭제합니다. EMR 이 명령은 Log4j 문제 해결을 위해 Apache에서 게시한 권장 사항을 따릅니다.

  • Log4j 버전 EMR 2.17.1 이상을 사용하는 업데이트가 있습니까?

    EMR릴리스 5.34까지의 5개 릴리스와 릴리스 6.5까지의 EMR 6개 릴리스는 최신 버전의 Log4j와 호환되지 않는 이전 버전의 오픈 소스 프레임워크를 사용합니다. 이러한 릴리스를 계속 사용하는 경우 부트스트랩 작업을 적용하여 에서 설명한 문제를 완화하는 것이 좋습니다. CVEs EMR5 릴리스 5.34 및 EMR 6 릴리스 6.5 이후, Log4j 1.x 및 Log4j 2.x를 사용하는 애플리케이션은 각각 Log4j 1.2.17 (또는 그 이상) 및 Log4j 2.17.1 (또는 그 이상) 을 사용하도록 업그레이드되며 CVE 문제를 완화하기 위해 위에 제공된 부트스트랩 작업을 사용할 필요가 없습니다.

  • 릴리스는 EMR -2021-45105의 영향을 받나요? CVE

    Amazon에서 기본 EMR 구성으로 설치한 애플리케이션은 EMR CVE -2021-45105의 영향을 받지 않습니다. EMRAmazon에서 설치한 애플리케이션 중에서 Apache Hive만이 컨텍스트 조회와 함께 Apache Log4j를 사용하며, 부적절한 입력 데이터를 처리할 수 있는 방식으로 기본이 아닌 패턴 레이아웃을 사용하지 않습니다.

  • Amazon은 다음 CVE 공개로 인해 EMR 영향을 받나요?

    다음 표에는 Log4j와 관련된 목록이 CVEs 포함되어 있으며 각 항목이 CVE Amazon에 영향을 미치는지 여부가 나와 있습니다. EMR 이 표의 정보는 Amazon에서 기본 구성을 EMR 사용하여 애플리케이션을 설치하는 경우에만 적용됩니다.

    CVE 영향 EMR 참고
    CVE-2022-23302 아니요 EMR아마존은 Log4j를 설정하지 않습니다. JMSSink
    CVE-2022-23305 아니요 EMR아마존은 Log4j를 설정하지 않습니다. JDBCAppender
    CVE-2022-23307 아니요 EMR아마존은 Log4j 전기 톱을 설치하지 않습니다
    CVE-2020-9493 아니요 EMR아마존은 Log4j 전기 톱을 설치하지 않습니다
    CVE-2021-44832 아니요 EMRAmazon은 연결 문자열을 사용하여 JDBCAppender Log4j를 JNDI 설정하지 않습니다.
    CVE-2021-4104 아니요 EMR아마존은 Log4j를 사용하지 않습니다. JMSAppender
    CVE-2020-9488 아니요 Amazon에서 설치한 애플리케이션은 Log4j를 EMR 사용하지 않습니다. SMTPAppender
    CVE-2019-17571 아니요 EMRAmazon은 클러스터에 대한 퍼블릭 액세스를 차단하고 실행하지 않습니다. SocketServer
    CVE-2019-17531 아니요 최신 Amazon EMR 릴리스 버전으로 업그레이드하는 것이 좋습니다. 아마존 EMR 5.33.0 이상에서는 잭슨-데이터바인드 2.6.7.4 이상을 사용하고, 6.1.0 이상에서는 jackson-databind 2.10.0 이상을 사용합니다. EMR 이러한 버전의 jackson-databind는 의 영향을 받지 않습니다. CVE