
CVE-2026-82329(JFrog Artifactory)에 대한 PoC 및 검증 도구입니다. 빈 서명 키로 JWT를 위조하여 관리자 토큰을 획득하고, 접근 권한을 검증하며, 스레드를 이용한 다중 대상 스캔을 지원합니다.
CVE-2026-82329의 영향을 받는 JFrog Artifactory 자체 호스팅 설치를 식별하기 위한 PoC 및 검증 도구입니다.
이 도구는 다음 인증 체인을 검증합니다:
이 프로젝트는 합법적인 보안 테스트, 패치 검증, 침해 대응을 위한 것입니다. 소유하지 않았거나 서면 승인을 받지 않은 시스템에 대해 실행하지 마십시오.
이 CVE는 패치되지 않은 자체 호스팅 Artifactory 설치에 적용됩니다. Artifactory Cloud는 패치되었습니다.
패치된 것으로 기록된 버전:
수정 버전은 릴리스 라인에 따라 다를 수 있습니다. 공식 JFrog 권고를 환경의 패치 상태를 결정하는 신뢰할 수 있는 소스로 사용하십시오.
-token 옵션은 관리자 토큰을 터미널에 표시합니다. 해당 출력을 비밀 자격 증명으로 취급하십시오.-create-admin 옵션은 영구 관리자 계정을 생성하므로 파괴적입니다. 테스트 환경에서만 또는 침해 대응 절차에서 요구할 때만 사용하십시오.외부 Go 종속성은 없습니다. 프로그램은 Go 표준 라이브러리를 사용합니다.
이 프로젝트를 테스트 머신에 복제하거나 복사한 후 다음으로 빌드합니다:
go build -o cve-2026-82329 CVE-2026-82329.go
Go 표준 형식을 확인하고 실행하려면:
gofmt -w CVE-2026-82329.go
go vet ./...

./cve-2026-82329 -u https://artifactory.example.com:8082
URL 스킴은 생략할 수 있습니다. 생략하면 프로그램은 HTTP를 사용합니다:
./cve-2026-82329 -u 192.0.2.10:8082
대상 파일은 한 줄에 하나의 URL을 포함합니다. 빈 줄과 #로 시작하는 줄은 무시됩니다.
https://artifactory-a.example.com:8082
https://artifactory-b.example.com:8082
# 현재 비활성화된 랩 대상
지정된 워커 수로 스캔을 실행합니다:
./cve-2026-82329 -l urls.txt -threads 8
cat hosts.txt | ./cve-2026-82329
유효한 호스트가 있는 한 스킴이 있거나 없는 URL을 사용할 수 있습니다.
./cve-2026-82329 -u https://artifactory.example.com:8082 -token
이 옵션은 추가 검증을 위해 토큰이 실제로 필요한 경우에만 사용하십시오. 해당 토큰을 공유하지 마십시오.
./cve-2026-82329 \
-u https://artifactory.example.com:8082 \
-create-admin audit-user:'테스트-자격-증명-사용'
값 형식은 user:pass입니다. 자격 증명이 셸 히스토리나 프로세스 목록에 노출될 수 있으므로 통제된 환경에서만 사용하십시오. 이 기능은 Artifactory Pro 또는 Enterprise 에디션에 따라 달라질 수 있습니다.
./cve-2026-82329 -u https://artifactory.example.com:8082 -verbose
짧은 별칭은 -v입니다. 이 모드는 요청, 응답, 위조된 JWT 및 토큰 클레임을 기록합니다. 모든 출력을 민감한 데이터로 취급하십시오.
| 옵션 | 기본값 | 설명 |
|---|---|---|
-u URL | 비어 있음 | 대상 기본 URL; 반복 가능 |
-l FILE | 비어 있음 | 대상 URL 목록이 포함된 파일 |
-threads N | 8 | 병렬 워커 수 |
-timeout N | 20 | 각 요청의 제한 시간(초) |
-token | false | 획득한 관리자 토큰 표시 |
-create-admin user:pass | 비어 있음 | 영구 관리자 계정 생성 |
-verbose | false | 요청, 응답 및 클레임 세부 정보 기록 |
-v | false | -verbose의 별칭 |
VULN: 조인이 성공했고 관리자 증명 엔드포인트가 HTTP 200 상태를 반환했습니다.SAFE: 조인이 성공하지 못했습니다. 예를 들어 대상이 패치되었거나, 빈 키를 사용하지 않거나, 해당 Artifactory가 아닙니다.INFO: 조인은 성공했지만 관리자 증명이 결정적인 결과를 제공하지 못했습니다. 버전과 구성을 수동으로 확인하십시오.FAIL: 대상에 연결할 수 없거나 URL이 유효하지 않습니다.SAFE 상태는 버전 및 구성 확인을 대체하지 않습니다. INFO 상태는 추가 검사가 필요한 발견 사항으로 취급해야 합니다.
-threads 및 -timeout을 조정하십시오.이 저장소에는 라이선스가 지정되지 않았습니다. 코드를 재배포하거나 다른 제품에 통합하기 전에 프로젝트 소유자에게 문의하십시오.
이 코드는 보안 연구 및 승인된 테스트를 위해 제공됩니다. 작성자와 기여자는 무단 사용, 손상, 데이터 손실 또는 이 도구 사용으로 인해 발생하는 법률 위반에 대해 책임을 지지 않습니다.
Gagaltotal666 - GhostGTR666