🇰🇷 한글 설명
pygeoapi의 STAC FileSystemProvider 플러그인에서 경로 정규화 부재로 인한 디렉토리 탈출 취약점입니다. 인증 없이 .. 형태의 경로 조작을 통해 의도하지 않은 디렉토리 및 파일에 접근할 수 있습니다.
💡 쉬운 설명
pygeoapi 서버의 STAC 엔드포인트에 ../ 기호를 포함한 요청을 보내면 보호 없는 배포에서 숨겨진 파일과 폴더를 볼 수 있습니다. 웹 프록시 없이 직접 배포된 경우만 영향을 받습니다.
🇺🇸 원문 (English)
pygeoapi is a Python server implementation of the OGC API suite of standards. From version 0.23.0 to before version 0.23.3, a raw string path concatenation vulnerability in pygeoapi's STAC FileSystemProvider plugin can allow for requests to STAC collection based collections to expose directories without authentication. The issue manifests when pygeoapi is deployed without a proxy or web front end that would normalize URLs with .. values, along with a resource of type stac-collection defined in configuration. This issue has been patched in version 0.23.3.
📍 영향받는 시스템
pygeoapi 0.23.0 ~ 0.23.2 버전 (STAC 파일시스템 프로바이더 사용, 웹 프록시 없는 배포)
⚔️ 공격 벡터
STAC 컬렉션 엔드포인트에 ../ 경로를 포함한 URL 요청으로 상위 디렉토리 파일 목록 및 내용 노출
🛡️ 대응 방법
pygeoapi를 0.23.3 이상으로 즉시 업그레이드하거나 Nginx/Apache 리버스 프록시로 URL 정규화 구성
🔧 검증 코드
Version이 0.23.3 이상이면 패치됨, 0.23.0-0.23.2면 취약 상태, 미설치면 설치 후 확인
pip show pygeoapi | grep Version || dpkg -l | grep pygeoapi