🇰🇷 한글 설명
GeoNetwork는 공간 참조 자원을 관리하는 카탈로그 애플리케이션입니다. 4.0.0-alpha.1부터 4.2.16 및 4.4.11 이전 버전에서는 클라이언트 요청에 query 필드가 생략되면 Elasticsearch 기반 검색 프록시가 접근 제어 필터 주입을 건너뛸 수 있습니다. 이로 인해 공개되어서는 안 되는 메타데이터 레코드의 전체 색인 내용이 인증 없이 노출될 수 있습니다. 해당 문제는 4.2.16 및 4.4.11 버전에서 수정되었습니다.
💡 쉬운 설명
GeoNetwork의 공개 검색 기능에 결함이 있어, 원래 외부에 보이면 안 되는 지리 정보 데이터가 로그인 없이 조회될 수 있습니다. 해당 버전을 사용 중이라면 즉시 업데이트해야 합니다.
🇺🇸 원문 (English)
GeoNetwork is a catalog application to manage spatially referenced resources. From 4.0.0-alpha.1 until 4.2.16 and 4.4.11, the Elasticsearch-backed search proxy can skip GeoNetwork's access-control filter injection when a client request has an omitted query field. The request is then forwarded to Elasticsearch without group visibility, draft exclusion, record ownership, or portal-specific filtering. An unauthenticated remote attacker can use the affected public search API to retrieve the full indexed contents of metadata records that should not be publicly visible. This issue is fixed in versions 4.2.16 and 4.4.11.
📍 영향받는 시스템
GeoNetwork 4.0.0-alpha.1 ~ 4.2.16 미만 및 4.4.11 미만 버전
⚔️ 공격 벡터
인증되지 않은 원격 공격자가 query 필드를 생략한 공개 검색 API 요청을 보내 접근 제어를 우회하고 비공개 메타데이터를 조회
🛡️ 대응 방법
GeoNetwork를 4.2.16 이상 또는 4.4.11 이상으로 업데이트
🔧 검증 코드
출력된 버전이 4.2.16 미만(4.2.x 계열) 또는 4.4.11 미만(4.4.x 계열), 또는 4.0.0-alpha.1~4.1.x 범위이면 취약하며, 4.2.16 이상 또는 4.4.11 이상이면 패치된 버전입니다. 명령 결과가 없으면 URL/포트를 환경에 맞게 수정하세요.
curl -s http://localhost:8080/geonetwork/srv/api/version 2>/dev/null | grep -oE '"version":"[^"]+"'