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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
demo-cve-2022-21449 | Kitploit
도구/GitHubGitHub/volodymyr-hladkyi-symphony/demo-cve-2022-21449
Vulnerability AnalysisWeb Application ExploitationCryptographyPenetration TestingAuthenticationLearning & Education
GitHubvolodymyr-hladkyi-symphony/demo-cve-2022-21449

demo-cve-2022-21449

저장소 보기

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
1년 전아직 검토되지 않음

데모 프로젝트: CVE-2022-21449 취약점

이 프로젝트는 Java의 ECDSA 서명 검증에 영향을 미치는 CVE-2022-21449 취약점을 시연합니다. 이 취약점은 0 값(r=0, s=0)의 서명을 사용하여 악의적인 공격자가 서명 검증을 우회할 수 있게 합니다. 이 프로젝트는 보안 패치가 적용되지 않은 Java 17에서 EC 서명이 포함된 실제 및 가짜 JWT 토큰을 사용하여 이 문제를 보여줍니다.

기능

  • 실제 JWT 토큰: EC 개인 키로 서명된 유효한 JWT 토큰.
  • 가짜 JWT 토큰: 서명이 0으로 설정된 JWT 토큰(r=0, s=0).
  • 검증: 취약점으로 인해 가짜 토큰이 검증을 통과할 수 있음을 보여줍니다.

사전 요구 사항

  • Java 17 (CVE-2022-21449 보안 패치가 적용되지 않은 버전).
  • Maven 프로젝트 빌드용.

프로젝트 구조

  • JwtGenerator: 실제 및 가짜 JWT 토큰을 생성합니다.
  • JwtUtils: 공개 EC 키를 사용하여 JWT 토큰을 검증합니다.
  • SecurityConfig: 토큰 기반 인증을 시연하도록 Spring Security를 구성합니다.
  • ProtectedController: 토큰 기반 접근 제어를 테스트할 수 있는 엔드포인트를 제공합니다.

JwtGenerator 콘솔 앱 사용 방법

JwtGenerator 클래스는 유효한 JWT 토큰과 가짜 JWT 토큰을 모두 생성하여 출력하는 독립형 콘솔 애플리케이션입니다.

실행 단계

  1. 프로젝트 빌드:

    root@kitploit:~
    mvn clean install
    
  2. JwtGenerator 클래스 실행:

    root@kitploit:~
    mvn exec:java -Dexec.mainClass="com.symphony_solutions.demo.util.JwtGenerator"
    
  3. 출력: 애플리케이션은 다음을 출력합니다:

    • 유효한 JWT 토큰.
    • 서명이 0으로 설정된 가짜 JWT 토큰.

    예시:

    root@kitploit:~
    === Valid JWT ===
    eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJhbGljZSIsInJvbGVzIjpbIkFETUlOIiwiVVNFUiJdLCJpYXQiOjE2NzAwMDAwMDAsImV4cCI6MTY3MDAzNjAwMH0.<signature>
    
    === Fake JWT with zero signature ===
    eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJib2IiLCJyb2xlcyI6WyJBRE1JTiIsIlVTRVIiXSwiaWF0IjoxNjcwMDAwMDAwLCJleHAiOjE2NzAwMzYwMDB9.<zeroed_signature>
    
  4. 토큰 사용:

    • 토큰을 복사하여 애플리케이션 또는 다른 도구에서 취약점을 테스트하는 데 사용하세요.

취약점 시연

  1. 애플리케이션 시작:

    root@kitploit:~
    mvn spring-boot:run
    
  2. 보호된 엔드포인트 접근:

    • 유효한 토큰을 사용하여 /protected/user 또는 /protected/admin에 접근하세요.
    • 가짜 토큰을 사용하여 취약점으로 인해 무단 접근이 가능함을 시연하세요.
  3. 엔드포인트:

    • /protected/user: USER 또는 ADMIN 역할이 필요합니다.
    • /protected/admin: ADMIN 역할이 필요합니다.

중요 참고 사항

  • 이 프로젝트는 교육 목적으로만 제공됩니다. 프로덕션 환경에서 사용하지 마세요.
  • CVE-2022-21449를 완화하려면 Java 버전이 보안 패치로 업데이트되었는지 확인하세요.

참고 자료

  • CVE-2022-21449 세부 정보
  • Java 보안 업데이트

라이선스

이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여됩니다.

도구 다운로드