Grav API Plugin before 1.0.10 Path Traversal via move
Path-Traversal
위협 신호 · CVSS · EPSS · KEV
정기 패치· 높은 악용 신호 없음
CVSS
7.1high
이론적 심각도 점수
EPSS
0.3%상위 81.3%
30일 내 악용 확률 예측
KEV
미등재실측 악용 기록 없음
권장 대응 기한60일 이내CISA SSVC 기준
계획된 패치 주기 내 조치(60일 이내)
외부 노출· KEV 미등재 · 자동화 어려움 · 부분 영향 · 외부 노출
CVSS 벡터 · 메트릭
악용 경로
공격 벡터네트워크
공격 복잡도낮음
공격 요건없음
필요 권한낮음
사용자 상호작용불필요
영향
기밀성 영향높음
무결성 영향없음
가용성 영향없음
후속 기밀성없음
후속 무결성없음
후속 가용성없음
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N상세 설명
Grav API Plugin (Composer package getgrav/grav-plugin-api) before 1.0.10 fails to properly validate the slug field in the POST /pages/{route}/move endpoint. PagesController::move() sanitizes the slug only with ltrim($body['slug'], '.'), which strips leading periods but does not neutralize '/' or '..' segments. An authenticated API caller with the api.pages.write permission can supply path traversal sequences (e.g., 01.home/../../../pwned) to move an entire page directory (content and media) to an arbitrary writable location outside user/pages/, including outside the Grav installation.
AI 심층 분석
공격 시나리오 · 재현 가능한 PoC 페이로드 · 즉시 적용 가능한 차단 패치를 한 번에 받아 보세요. 보안 운영팀이 그대로 점검·티켓팅에 쓸 수 있는 형태로 정리해 드립니다.
영향받는 제품·버전
- getgrav grav0 ≤ x < 1.0.10other