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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-59718-PoC — Fortinet이 2025년 12월 9일에 밀접하게 연관된 두 가지 인증 우회 취약점을 발표했습니다. 두 결함 모두 FortiCloud SSO 로그인 기능의 SAML 응답 처리 과정에서 암호화 서명(CWE-347)의 부적절한 검증과 관련되어 있습니다. | Kitploit
도구/GitHubGitHub/exfil0/cve-2025-59718-poc
Payload GenerationVulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingAuthenticationLearning & EducationRed Teaming
GitHubexfil0/cve-2025-59718-poc

CVE-2025-59718-PoC

Fortinet이 2025년 12월 9일에 밀접하게 연관된 두 가지 인증 우회 취약점을 발표했습니다. 두 결함 모두 FortiCloud SSO 로그인 기능의 SAML 응답 처리 과정에서 암호화 서명(CWE-347)의 부적절한 검증과 관련되어 있습니다.

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2025-59718 익스플로잇 위저드

개요

이 도구는 CVE-2025-59718에 대한 개념 증명(PoC) 익스플로잇 스크립트입니다. CVE-2025-59718은 Fortinet 제품(FortiOS, FortiProxy, FortiSwitchManager 등)에서 FortiCloud SSO를 위한 SAML 메시지의 암호화 서명 검증이 부적절하여 발생하는 치명적인 인증 우회 취약점입니다. 이 취약점으로 인해 인증되지 않은 원격 공격자가 서명되지 않은 SAML 응답을 제작 및 전송하여 인증을 우회하고 관리자 권한을 획득할 수 있습니다.

중요 사항: 이 스크립트는 교육, 연구 및 승인된 테스트 목적으로만 사용해야 합니다. 명시적 허가 없이 시스템에 무단으로 사용하는 것은 불법이며 비윤리적입니다. 항상 관련 법률을 준수하고 적절한 승인을 받은 후 테스트하십시오.

이 스크립트는 단일 또는 대량 대상 스캔, 선택적 프록시 사용, SAML 토큰 재사용 및 세션 하이재킹 시뮬레이션, 구성 파일 다운로드와 같은 인증 후 작업을 지원합니다. 효율성을 위해 멀티스레딩을 사용하고 결과를 파일에 기록하여 분석합니다.

면책 조항

  • 보안 권고: 영향을 받는 버전, 패치 및 완화 조치에 대한 자세한 내용은 Fortinet의 공식 권고(FG-IR-25-647)를 참조하십시오.
  • 활발한 악용: 2025년 12월 22일 기준으로 이 취약점은 실제 환경에서 활발히 악용되고 있습니다. 즉시 패치를 적용하거나 FortiCloud SSO를 비활성화하십시오.
  • 윤리적 사용: 이 PoC는 취약점의 영향을 인식시키기 위해 제작되었습니다. 프로덕션 시스템이나 허가 없이 사용하지 마십시오. 작성자는 오용에 대해 어떠한 책임도 지지 않습니다.
  • 완화 권장 사항: 수정된 버전(예: FortiOS 7.4.9 이상)으로 업그레이드하고 CLI를 통해 FortiCloud SSO를 비활성화하십시오:
    root@kitploit:~
    config system global
    set admin-forticloud-sso-login disable
    end
    

기능

  • 대상 모드: 단일 대상, 쉼표로 구분된 목록 또는 파일 기반 입력.
  • 멀티스레딩: 대량 스캔을 위한 병렬 처리(기본값: 10개 스레드).
  • 프록시 지원: 프록시를 통한 트래픽 라우팅(예: Burp Suite 차단).
  • SAML 페이로드 생성: 우회를 위해 서명되지 않은 SAML 응답을 동적으로 생성합니다.
  • 취약점 확인: HTTP 상태 및 응답 키워드를 통해 성공 여부를 확인합니다.
  • 인증 후 작업: 시스템 구성 파일의 선택적 다운로드.
  • 재사용 및 하이재킹: SAML 토큰 재사용 및 SSO 세션 하이재킹 시뮬레이션(제공된 토큰 사용).
  • 로깅 및 출력: 상세한 콘솔 로그, 취약한 대상은 TXT 파일에 저장, CSV로 보고서 저장.
  • 명령줄 인터페이스: 비대화형 사용을 위한 유연한 인수.

요구 사항

  • Python 버전: 3.8 이상.
  • 종속성: pip을 통해 설치:
    root@kitploit:~
    pip install requests argparse
    
    (스크립트는 대부분의 기능에 표준 라이브러리를 사용하므로 이 외에 추가 설치가 필요하지 않습니다.)
  • 환경: Linux, macOS 및 Windows에서 테스트되었습니다. 대상에 네트워크 접근이 가능해야 합니다.
  • 권한: 파일 I/O(예: 로그 및 구성 파일 쓰기)에 충분한 권한이 필요합니다.

설치

  1. 스크립트를 복제하거나 다운로드합니다(예: exploit.py).
  2. 종속성을 설치합니다:
    root@kitploit:~
    pip install -r requirements.txt
    
    (필요한 경우 requirements.txt 파일을 생성하여 requests 및 argparse를 포함시킵니다.)
  3. 스크립트를 실행 가능하게 설정합니다(Unix 계열 시스템):
    root@kitploit:~
    chmod +x exploit.py
    

사용법

Python으로 스크립트를 실행합니다:

root@kitploit:~
python exploit.py [options]

명령줄 인수

  • --target <IP/hostname>: 스캔할 단일 대상(예: 192.168.1.1 또는 example.com)
  • --targets <쉼표로 구분된 목록>: 여러 대상(예: 192.168.1.1,example.com)
  • --file <경로>: 한 줄에 하나의 대상이 있는 파일
  • --username <이름>: SAML 페이로드에서 가장할 사용자 이름(기본값: admin)
  • --endpoint <경로>: SAML 로그인 엔드포인트(기본값: /remote/saml/login)
  • --max-threads <int>: 최대 동시 스레드 수(기본값: 10, 권장 최대: 50)
  • --saml-token <토큰>: 재사용/하이재킹을 위한 Base64로 인코딩된 SAML 토큰(선택 사항)
  • --proxy <url>: 프록시 URL(예: )

참고: 대상 옵션이 제공되지 않으면 스크립트는 오류와 함께 종료됩니다.

예제

  1. 단일 대상 스캔:

    root@kitploit:~
    python exploit.py --target 192.168.1.1 --username admin --proxy http://127.0.0.1:8080
    

    로컬 프록시를 통해 단일 장치를 스캔하며 admin으로 가장합니다.

  2. 목록에서 대량 스캔:

    root@kitploit:~
    python exploit.py --targets 192.168.1.1,example.com --max-threads 20 --post-auth-config
    

    여러 대상을 병렬로 스캔하고 성공 시 구성 다운로드를 활성화합니다.

  3. 토큰 재사용을 사용한 파일 기반 스캔:

    root@kitploit:~
    python exploit.py --file targets.txt --saml-token <base64_token> --endpoint /custom/saml
    

    targets.txt의 대상을 처리하고 토큰 재사용/하이재킹을 시도합니다.

  4. 비대화형 전체 스캔:

    root@kitploit:~
    python exploit.py --file targets.txt --username superadmin --max-threads 15 --post-auth-config --output-file results.csv
    

    사용자 정의 사용자 이름, 높은 스레드 수, 구성 다운로드, 사용자 정의 출력 파일.

작동 방식

  1. 입력 파싱: CLI 인수를 통해 대상 및 옵션을 수집합니다.
  2. SAML 페이로드: 동적 타임스탬프와 대상별 필드를 포함한 위조된 서명되지 않은 SAML 응답을 생성합니다.
  3. 익스플로잇 시도: SAML 엔드포인트로 POST 요청을 보내고 성공 여부(200/302 + "dashboard"와 같은 키워드)를 확인합니다.
  4. 익스플로잇 후 작업:
    • 쿠키와 URL을 로깅합니다.
    • 선택적으로 /api/v2/monitor/system/config/backup을 통해 구성을 다운로드합니다.
    • 토큰이 제공된 경우 재사용/하이재킹을 시뮬레이션합니다(새 세션 사용).
  5. 출력: 취약한 세부 정보를 TXT 파일로, 공격 지표를 CSV 파일(예: 대상, 공격 유형, 결과, 상태)로 저장합니다.
  6. 오류 처리: 네트워크 문제, 파일 I/O, 잘못된 입력에 대한 강력한 처리; 충돌 없이 오류 로깅.

출력 형식

  • 콘솔 로그: 실시간 진행 상황, 성공, 경고, 오류.
  • vulnerable_targets.txt: 쿠키와 URL이 포함된 취약한 장치 목록.
  • attack_report.csv: 대상, 사용자 이름, 공격 유형(예: Config Download, SAML Token Replay), 결과(Success/Failed), 상태 코드가 포함된 구조화된 보고서.

예제 CSV 행:

root@kitploit:~
Target,Username,Attack Type,Result,Status Code
https://192.168.1.1,admin,Config Download,Success,200

제한 사항

  • 오탐/미탐: FortiCloud SSO가 활성화되어 있다고 가정합니다. 비활성화되었거나 패치된 버전에서는 실패할 수 있습니다.
  • 네트워크 의존성: 대상에 직접 또는 프록시 접근이 필요합니다. 15초 후 타임아웃됩니다.
  • 토큰 기능: 재사용/하이재킹은 시뮬레이션입니다. 실제 세션 도용에는 사용자 정의 로직이 필요합니다.
  • 스레드 안전성: 파일 쓰기에 잠금을 사용합니다. 높은 스레드 수는 리소스에 부담을 줄 수 있습니다.
  • 지속성 없음: 단일 실행 이상으로 세션을 유지하지 않습니다.

문제 해결

  • 연결 오류: 네트워크/방화벽을 확인하고 디버깅을 위해 --proxy를 사용하십시오.
  • 잘못된 대상: IP/호스트명이 확인 가능한지 확인하십시오. 프로토콜 접두사는 필요하지 않습니다.
  • 종속성 문제: requests와 argparse가 설치되었는지 확인하십시오.
  • 대규모 스캔: 리소스 제한이 발생하면 --max-threads를 줄이십시오.

기여

이것은 PoC입니다. 개선 사항(예: 더 나은 탐지, 추가 기능)에 대한 기여는 풀 리퀘스트를 통해 환영합니다. 안전과 윤리에 중점을 두십시오.

참고 자료

  • Fortinet 보안 권고: FG-IR-25-647
  • CVE 세부 정보: CVE-2025-59718
  • 관련: 공격에서 CVE-2025-59719와 함께 자주 사용됨.

마지막 업데이트: 2025년 12월 22일

도구 다운로드
http://127.0.0.1:8080
  • --post-auth-config: 인증 후 구성 다운로드 활성화(플래그, 기본적으로 비활성화)
  • --vulnerable-file <경로>: 취약한 대상을 저장할 파일(기본값: vulnerable_targets.txt)
  • --output-file <경로>: 공격 보고서를 위한 CSV 파일(기본값: attack_report.csv)