CVE-2024-47167
Gradio의 /queue/join 경로 매개변수의 SSRF
- 게시됨
- 2024. 10. 10.
- 업데이트됨
- 2024. 10. 11.
- CNA 할당 중
- GitHub_M
- 증거 관찰됨
- 2026. 8. 6.
기본 CVSS
nvd · CVSS 4.0
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X낮음 · 다음 30일
- 백분위수
- 40.2%
- 모델 날짜
- 2026. 9. 21.
EPSS는 통계적 추정치이지 확실성이나 영향의 척도가 아닙니다. 이를 CVSS, KEV 상태, 노출 및 환경과 결합하세요.
요약
Gradio는 빠른 프로토타이핑을 위해 설계된 오픈소스 Python 패키지입니다. 이 취약점은 `/queue/join` 엔드포인트의 **SSRF(Server-Side Request Forgery, 서버 측 요청 위조)**와 관련이 있습니다. Gradio의 `async_save_url_to_cache` 함수는 공격자가 Gradio 서버로 하여금 사용자가 제어하는 URL에 HTTP 요청을 보내도록 강제할 수 있게 합니다. 이를 통해 공격자는 로컬 네트워크 내의 내부 서버나 서비스를 대상으로 삼아 데이터를 유출하거나 원치 않는 내부 요청을 유발할 수 있습니다. 또한, 이러한 URL의 콘텐츠는 로컬에 저장되므로 공격자가 악성 파일을 서버에 업로드하기가 더 쉬워집니다. 이는 URL 가져오기를 수반하는 Video 구성 요소와 같은 구성 요소를 사용하는 Gradio 서버를 배포하는 사용자에게 영향을 미칩니다. 이 문제를 해결하려면 `gradio>=5`로 업그레이드하는 것이 좋습니다. 임시 해결책으로, 사용자는 Gradio 애플리케이션에서 URL 기반 입력을 비활성화하거나 신뢰할 수 있는 도메인으로만 크게 제한할 수 있습니다. 또한, 더 엄격한 URL 검증(예: 허용 목록 기반 검증)을 구현하고 `/queue/join` 엔드포인트를 통해 로컬 또는 내부 네트워크 주소를 요청할 수 없도록 보장하면 SSRF 공격의 위험을 완화하는 데 도움이 될 수 있습니다.
소스
1Docker화된 환경을 설정하여 Gradio 4.40.0의 취약점인 CVE-2024-47167을 재현하고 분석하며, 보안 테스트를 위한 내부 HTTP 서버와 취약한 타깃을 포함합니다.
책임 있는 사용
귀하가 소유하고 있거나 테스트할 권한이 있는 시스템에 대해서만 취약점 정보를 사용하십시오. Kitploit은 공개 연구 메타데이터에 연결되며 익스플로잇 코드나 악성 페이로드를 저장하지 않습니다.