본문 바로가기
버전관리/GitLab

[GitLab] 보안 업데이트 Remote Command Execution via Github import

by 주리니e 2022. 8. 31.
728x90

[GitLab] 보안 업데이트
Remote Command Execution via Github import 

 

 

https://about.gitlab.com/releases/2022/08/22/critical-security-release-gitlab-15-3-1-released/

 

GitLab Critical Security Release: 15.3.1, 15.2.3, 15.1.5

Learn more about GitLab Critical Security Release: 15.3.1, 15.2.3, 15.1.5 for GitLab Community Edition (CE) and Enterprise Edition (EE).

about.gitlab.com

 

Gitlab 보안 업그레이드 권고안을 확인하였다. GitLab의 GitHub API 엔드포인트에서 가져오기 기능을 이용해 발생하는 원격 코드 실행 취약점이 발견되었다. 자세한 취약점 목록은 위 URL로 확인이 가능하다. 지난 시간에는 보안 업데이트 대신에 취약점 조치를 하였지만 이번시간에는 보안 업데이트를 통해서 취약점을 해결해보고자 한다. 업데이트에 앞서 우선 GitLab 백업이 필요하다. 백업은 전에 포스팅하였던 아래 링크를 확인하자.

 

Gitlab-CE 버전 업데이트(2) - 백업

Gitlab-CE 버전 업데이트(2) - 백업 우선 현재 Gitlab을 백업하자. 나는 gitlab containner 생성 시 docker-compose.yml 설정파일에 다음과 같이 백업 설정을 하였다. version: '3' services: gitlab: image: 'gi..

jiurinie.tistory.com

 

지난 시간에 보안 업데이트를 해두어서 현재 버전은 15.1.2이다. 15.1.5으로 업데이트 하거나 최신 버전인 15.3.1으로 업데이트 하여야 한다. 

  취약 버전 권고 버전
GitLab CE/EE 11.3.4 ~ 15.1.5 이하 버전 15.1.5
15.2.x 15.2.3
15.3 15.3.1

 

아래 페이지에서는 GitLab 업데이트에 대한 자세한 설명이 있다. 설치한 방법에 따라 업데이트 방법이 자세하게 설명되어 있으니 참고하도록 하자.

 

Upgrading GitLab | GitLab

Documentation for GitLab Community Edition, GitLab Enterprise Edition, Omnibus GitLab, and GitLab Runner.

docs.gitlab.com

 

위 링크 페이지에서는 Upgrade paths가 있는데 이대로 하기를 권장하고 있다. 이대로 하지 않으면 오류가 발생할 수 있으니 꼭 참고하도록 하자. 근데 15.0.Z ->15.4.0 -> latest 15.Y.Z 으로 알려주는데 22년 8월 31일 작성일 기준으로 latest 버전은 15.3으로 되어 있다. 15.4 에서 15.3이라니 맞는 것인가..? 고민 끝에.. 무리하게 최신버전으로 올리기보다는 15.1.5 버전으로 업데이트 하기로 결정하였다.

 

  • Docker gitlab 컨테이너 stop
$ docker-compose stop gitlab

 

  • docker-compose.yml 파일 열기
$ vi docker-compose.yml

 

  • gitlab image 15.1.5 버전 수정 및 저장
  ...
  
  gitlab:
    image: 'gitlab/gitlab-ce:15.1.5-ce.0'
    
  ...

 

  • docker-compose up -d
$ docker-compose up -d
Pulling gitlab (gitlab/gitlab-ce:15.1.5-ce.0)...
15.1.5-ce.0: Pulling from gitlab/gitlab-ce
3b65ec22a9e9: Pull complete
588523589658: Pull complete
e43a47a50145: Pull complete
51d2e4a66518: Pull complete
9cdbbe8be800: Pull complete
e0ecce8086a0: Pull complete
4b8c013eb6aa: Pull complete
170f9f0ea5ca: Pull complete
Digest: sha256:d8c53901538aa031766c18f7f0410e191e9934024e016b4995da246736150ef5
Status: Downloaded newer image for gitlab/gitlab-ce:15.1.5-ce.0
Recreating gitlab ... done

 

  • 도커 프로세스 확인
$ docker-compose ps
 Name                Command                       State                                      Ports                            
-------------------------------------------------------------------------------------------------------------------------------
gitlab    /assets/wrapper                  Up (health: starting)   0.0.0.0:22->22/tcp, 0.0.0.0:443->443/tcp, 0.0.0.0:80->80/tcp

 

  • GitLab 정상 실행 및 버전 확인

 

참고 : Docker Hub  - 다운로드 이미지 확인 
https://hub.docker.com/r/gitlab/gitlab-ce/tags

 

Docker Hub

 

hub.docker.com

 

이로써 성공적으로 GitLab의 Remote Command Execution via Github import 취약점에 대한 보안 업데이트를 완료하였다.

728x90

댓글