🔍 CVE-2024-43371

4.5
CVSS Score
MEDIUM
2024-08-21
2026-06-17 07:50
✅ 완료

🇰🇷 한글 설명

CKAN 데이터 관리 시스템의 여러 플러그인(XLoader, DataPusher 등)에서 리소스 URL에 대한 검증 부재로 인해 서버 측 요청 위조(SSRF) 취약점이 발견되었습니다. 공격자는 악의적인 URL을 사용하여 시스템이 접근해서는 안 되는 내부 또는 외부 리소스를 강제로 요청하게 만들 수 있습니다.

💡 쉬운 설명

시스템이 파일을 가져올 때 주소를 제대로 확인하지 않아 발생하는 문제입니다. 공격자가 가짜 주소를 입력하면, 시스템이 내부의 비밀 정보나 허가되지 않은 사이트에 대신 접속하여 정보를 가져오게 만들 수 있습니다.

🇺🇸 원문 (English)

CKAN is an open-source data management system for powering data hubs and data portals. There are a number of CKAN plugins, including XLoader, DataPusher, Resource proxy and ckanext-archiver, that work by downloading the contents of local or remote files in order to perform some actions with their contents (e.g. pushing to the DataStore, streaming contents or saving a local copy). All of them use the resource URL, and there are currently no checks to limit what URLs can be requested. This means that a malicious (or unaware) user can create a resource with a URL pointing to a place where they should not have access in order for one of the previous tools to retrieve it (known as a Server Side Request Forgery). Users wanting to protect against these kinds of attacks can use one or a combination of the following approaches: (1) Use a separate HTTP proxy like Squid that can be used to allow / disallow IPs, domains etc as needed, and make CKAN extensions aware of this setting via the ckan.download_proxy config option. (2) Implement custom firewall rules to prevent access to restricted resources. (3) Use custom validators on the resource url field to block/allow certain domains or IPs. All latest versions of the plugins listed above support the ckan.download_proxy settings. Support for this setting in the Resource Proxy plugin was included in CKAN 2.10.5 and 2.11.0.

📍 영향받는 시스템

CKAN 및 관련 플러그인(XLoader, DataPusher, Resource proxy, ckanext-archiver) 구버전

⚔️ 공격 벡터

악의적인 URL이 포함된 리소스를 생성하여 시스템이 내부 네트워크나 제한된 자원에 접근하도록 유도

🛡️ 대응 방법

ckan.download_proxy 설정을 사용하여 HTTP 프록시를 적용하거나, 방화벽 규칙 및 커스텀 URL 검증기를 구현하십시오.

🔧 검증 코드

설치된 CKAN 및 플러그인의 버전을 확인하여 취약점이 해결된 최신 버전(Resource Proxy의 경우 CKAN 2.10.5/2.11.0 이상)인지 확인합니다.

Shell / Script
pip list | grep -E 'ckan|ckanext-archiver|ckanext-datapusher|ckanext-xloader'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:H/I:N/A:N

💻 영향받는 소프트웨어

Spring Data REST