Wins Security Information

보안 정보

앞 내용 보기 다음 내용 보기
취약점 정보[CVE-2021-27886] Docker Dashboard CommandInjection
작성일 2021-07-16 조회 254

 

 

 

Docker Dashboard에 Command Injection 취약점이 존재합니다.

 

Rakibtg Docker Dashboard는 Docker, Inc. 제품이 아닌 오픈 소스 기반의 기본 Docker 관리 웹 GUI 입니다. 

 

해당 취약점은 서로 다른 두 경로에서 command 파라미터에 대한 검증을 충분히 하지 않아 발생합니다. 원격의 공격자는 악의적으로 조작된 요청을 전송하여 공격할 수 있습니다.

 

공격 성공 시, 임의의 명령어가 실행될 수 있습니다.

 

 

 

취약점 설명

 

NVD - CVE-2021-27886

CVSS v2.0 Severity and Metrics:  

Base Score :  7.5 HIGH

 

 

 

[그림1. NVD 내역]

 

 

 

취약점 분석

 

해당 취약점은 두 가지 경로에서 발생합니다.

 

* /api/image/command

* /api/container/command

 

해당 취약점은 위 경로에서 command 파라미터에 대한 검증을 충분히 하지 않아 발생합니다.  공격자는 해당 경로들에서 command 파라미터로 id, uname%20-a와 같은 임의의 명령어를 실행시킬 수 있게 됩니다.

 

패치되기 전 command 파라미터를 사용하는 코드를 보면 별도의 검증 프로세스 없이 에러가 발생하지 않는 이상 바로 command 값을 받아와 실행하는 것을 볼 수 있습니다.

 

 

 

[그림2. docker-web-gui/backend/utilities/terminal.js 코드 일부(1)]

 

패치된 후에는 docker container, docker image 각각에서 command 파라미터를 사용할 때, 해당 command 파라미터의 값이 유효한지 확인 후 유효하지 않을 경우 에러메세지를 띄우도록 변경되었습니다.

 

 

 

[그림3. docker-web-gui/backend/utilities/terminal.js 코드 일부(2)]

 

 

 

[그림4. docker-web-gui/backend/utilities/terminal.js 코드 일부(4)]

 

 

 

공격 분석 및 테스트

 

CVE-2021-27886의 공격 패킷은 다음과 같습니다.

 

 

 

[그림5. 공격 패킷(1)]

 

 

 

[그림6. 공격 패킷(2)]

 

 

 

취약점 대응 방안

 

1. 최신 버전 사용

 

해당 벤더사에서 발표한 최신의 버전으로 업데이트한다.

https://github.com/rakibtg/docker-web-gui

 

 

2. WINS Sniper 제품군 대응 방안

 

[5531] Rakibtg Docker Dashboard container Command Injection

[5532] Rakibtg Docker Dashboard image Command Injection

 

첨부파일 첨부파일이 없습니다.
태그 CVE-2021-27886  Docker Dashboard  Command Injection