OpenShift S2I (Source-To-Image) 관련 보안 취약점 - CVE-2018-1102

Public Date: April 30, 2018, 09:54
갱신됨 May 3, 2018, 16:49 - Chinese, Simplified 영어 (English) French Japanese
Resolved 상태
Critical Impact

Insights vulnerability analysis

View exposed systems

Red Hat 제품 보안팀은 Red Hat OpenShift Container Platform 3에 탑재된 S2I (source-to-image) 빌드 기능의 보안 취약점에 대응하고 있습니다. 권한이 없는 공격자가 본 취약점을 악용하여 권한을 상승시키고 호스트 시스템에 액세스할 수 있습니다. 본 문제는 CVE-2018-1102로 지정되었으며 심각한 보안 문제로 분류됩니다.


배경 정보

본 문제는 source-to-image 빌드 전략에 영향을 미칩니다. system:authenticated 역할을 가진 사용자 (기본적으로 OpenShift에 로그인 할 수 있는 모든 사용자 포함)는 이 전략을 사용할 수 있습니다.

본 문제는 Michael Hanselmann로 부터 직접 Red Hat에 보고 받았습니다.


취약점 세부 정보

악의적인 방식으로 포맷된 tar 아카이브를 작성하면 공격자가 빌드 중에 S2I의 압축 풀기 기능을 악용하여 권한을 상승시키고 OpenShift를 실행하는 기본 호스트 운영 체제를 손상시킬 수 있습니다.


해결 방법

영향을 받는 Red Hat 제품은 '영향' 탭에서 보안 문제를 완화 및 업데이트 정보는 '문제 해결' 탭에서 확인하십시오.

영향을 받는 제품

Red Hat 제품 보안팀은 본 취약점이 이번 업데이트에서 심각한 보안 문제을 일으키는 것으로 분류하고 있습니다. 공격자는 본 취약점을 악용하여 OpenShift 노드에서 root 권한을 얻을 수 있습니다.

다음의 Red Hat 제품 버전이 영향을 받습니다:

  • OpenShift Container Platform 3.0-3.9
  • OpenShift Online v3.x*
  • OpenShift Dedicated v3.x*

*Red Hat은 영향을 받는 서비스에 패치를 적용했습니다.


취약점 진단

악성 사용자가 시스템에 액세스 할 수 있는지 확인하는 일관된 감지 방법은 없습니다. Red Hat은 사용자가 시스템에서 정교한 보안 대책을 실행하고 위험 기반 접근 방식을 적용하여 시스템을 모니터링하고 악용 가능성이 있는 잠재적인 보안 공격을 감지할 것을 권장합니다. 클러스터에 취약점이 있는지 확인하려면 마스터에서 실행중인 atomic-openshift 패키지의 버전을 확인하십시오. 이 서비스는 사용되는 S2I (source-to-image) 빌드 이미지를 결정하는 코드를 제어합니다. OpenShift의 마이너 릴리스의 경우 다음 버전 이상을 실행하는 마스터에 패치가 적용되어 있습니다:

  • 3.9: atomic-openshift-3.9.25-1.git.0.6bc473e.el7
  • 3.8: atomic-openshift-3.8.37-1.git.0.e85a326.el7
  • 3.7: atomic-openshift-3.7.44-1.git.0.6b061d4.el7
  • 3.6: atomic-openshift-3.6.173.0.113-1.git.0.65fb9fb.el7
  • 3.5: atomic-openshift-3.5.5.31.67-1.git.0.0a8cf24.el7
  • 3.4: atomic-openshift-3.4.1.44.53-1.git.0.d7eb028.el7

버전 3.1에서 3.3 까지의 경우 추가적 설정 단계를 실행해야 합니다. 각 OpenShift 노드에서 다음을 실행합니다:

`$sudo docker images | grep ose-sti-builder`
registry.access.redhat.com/openshift3/ose-sti-builder       v3.3.46.38      cee523a4e55c   2 weeks ago     608 MB

이 예에서 cee523a4e55c는 패치되지 않은 이미지를 나타냅니다. 이러한 이미지는 최신 릴리스 버전과 동일한 버전 번호를 갖기 때문에 sha256 sum의 값도 확인해야 합니다. 해당 체크섬이 패치된 이미지는 다음과 같습니다:

  • 3.3:  registry.access.redhat.com/openshift3/ose-sti-builder:v3.3.1.46.38 (b285a30ab8e0)
  • 3.2:  registry.access.redhat.com/openshift3/ose-sti-builder:v3.2.1.34 (b536950df3d8)
  • 3.1: registry.access.redhat.com/openshift3/ose-sti-builder:v3.1.1.11 (de9eb6fe3b01)


패치되지 않은 이미지를 삭제할 수 있는 경우 삭제합니다. 다음 번에 이미지가 필요할 경우 새로운 (패치된) 이미지를 다운로드합니다.

$ sudo docker rmi cee523a4e55c

알림: 체크섬 값은 위에 나열된 값과 다를 수 있으므로 이 값은 `sudo docker images | grep ose-sti-builder`를 통해 얻습니다.

일부 경우 이 작업이 실패할 수 있습니다. "image is in use by stopped container xyz (정지된 컨테이너 xyz에 의해 이미지가 사용 중)"오류로 인해 작업이 실패하는 경우 이미지에 두 번째 (임의의) 태그를 추가하여 오류없이 현재 버전의 태그를 제거할 수 있습니다. 다음 번에 이미지가 필요할 경우 새로운 (패치된) 이미지를 노드에 다운로드합니다.

$ BADIMAGE=cee523a4e55c
$ BADVERS=v3.3.46.38
$ sudo docker tag $BADIMAGE    registry.access.redhat.com/openshift3/ose-sti-builder:donotuse
$ sudo docker rmi registry.access.redhat.com/openshift3/ose-sti-builder:$BADVERS

  

OpenShift 레지스트리에 영향을 받는 버전의 ose-sti-builder 이미지가 있는 Red Hat 고객은 source-to-image 이미지 빌드를 비활성화할 수 없는 경우 최신 이미지를 사용할 수 있는 대로 바로 업데이트할 것을 권장합니다. 버전 3.4에서 3.9의 경우 일반적인 업그레이드 프로세스를 사용하여 atomic-openshift-utils 패키지가 최신 버전인지 확인하고 업그레이드 playbook을 실행합니다.

버전 3.1에서 3.3 까지를 실행하고 있는 클러스터의 경우 관리자는 클러스터의 모든 노드로 패치된 이미지를 가져와야 합니다. '진단' 단계에서 보안 취약성이 있는 버전을 사용하고 있음이 확인된 경우 다음 단계를 수행하여 수동으로 이미지를 업데이트할 수 있습니다:

  1. 각 노드 호스트에 SSH 연결을 설정합니다.
  2. `docker pull registry.access.redhat.com/openshift3/ose-sti-builder`를 실행합니다.
  3. 가져온 이미지와 클러스터 버전의 '진단' 섹션에서 사용되는 체크섬이 일치하는지 확인합니다.

알림: 이 이미지는 동일한 마이너 패치 레벨의 모든 버전 번호로 태그 지정할 수 있습니다. 예를 들어, 설치된 클러스터 버전이 일치하는 경우 v3.3.1.36.38을 v3.3.1.46.11로 태그 지정할 수 있습니다.


완화 방법

Red Hat 고객은 패치를 사용할 수 있게 되는 대로 소프트웨어를 업데이트할 것을 권장합니다.

S2I (source-to-image) 빌드 전략을 비활성화하면 악용 가능한 기능에 대한 액세스를 차단할 수 있습니다. S2I (source-to-image) 빌드 전략을 비활성화하는 방법은 다음의 제품 문서를 참조하십시오.

고객은 이 문제를 완화하기 위해 위험 기반 접근 방식을 사용하는 것이 좋습니다. 높은 수준의 보안 및 신뢰가 필요한 시스템 먼저 처리되어야 하며 악용 위험을 줄이기 위해 대처법이 해당 시스템에 적용될 때 까지 신뢰할 수 없는 시스템과 격리되어야 합니다.


영향을 받는 제품 업데이트

제품 권고/업데이트
OpenShift Container Platform 3.9RHSA-2018:1227
OpenShift Container Platform 3.8RHSA-2018:1229
OpenShift Container Platform 3.7RHSA-2018:1231
OpenShift Container Platform 3.6RHSA-2018:1233
OpenShift Container Platform 3.5RHSA-2018:1235
OpenShift Container Platform 3.4RHSA-2018:1237
OpenShift Container Platform 3.3RHSA-2018:1239
OpenShift Container Platform 3.2RHSA-2018:1241
OpenShift Container Platform 3.1
RHSA-2018:1243
OpenShift Container Platform 3.0위의 완화 방법을 참조하거나 기술 지원팀에 문의하십시오.

Comments