🇰🇷 한글 설명
Grav API 플러그인의 CorsMiddleware가 인증된 /api/v1 엔드포인트에 대해 과도하게 허용적인 CORS 설정을 제공합니다. 이로 인해 공격자가 탈취한 JWT를 사용하여 임의의 웹사이트에서 인증된 API 요청을 보내고 데이터를 유출하거나 계정을 수정할 수 있습니다.
💡 쉬운 설명
웹사이트의 보안 문이 너무 넓게 열려 있어, 다른 사이트에서 몰래 내 계정 권한을 이용해 정보를 빼가거나 설정을 바꿀 수 있는 문제입니다. 공격자가 사용자의 로그인 정보를 가로채면 마치 본인인 것처럼 행동할 수 있습니다.
🇺🇸 원문 (English)
Grav API Plugin is a RESTful API for Grav CMS that provides full headless access to your site's content. Prior to 1.0.0-rc.16, the Grav API plugin CorsMiddleware returns Access-Control-Allow-Origin: * and permissive OPTIONS responses for authenticated /api/v1 endpoints. JavaScript from any origin can submit an attacker-obtained JWT through the Authorization or X-API-Token header, read the authenticated response, and perform write operations with the token owner's privileges, enabling data exfiltration and account modification. This issue is fixed in version 1.0.0-rc.16.
📍 영향받는 시스템
Grav API Plugin 1.0.0-rc.16 미만 버전
⚔️ 공격 벡터
CORS 설정 오류를 악용한 Cross-Origin 요청을 통한 인증된 API 호출 및 데이터 조작
🛡️ 대응 방법
Grav API Plugin을 1.0.0-rc.16 이상의 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 플러그인 버전이 1.0.0-rc.16보다 낮은지 확인하십시오.
grep -r "Grav API Plugin" /path/to/grav/plugins/api/version.php 2>/dev/null || echo 'Plugin not found'