🔍 CVE-2026-115522

5.3
CVSS Score
MEDIUM
2026-10-28
2026-11-05 17:17
✅ 완료

🇰🇷 한글 설명

google-adk(Python)의 FileArtifactService는 app_name을 파일 경로 구성에 포함하지 않아, 같은 FileArtifactService 루트 디렉터리와 user_id를 공유하는 여러 애플리케이션 간 아티팩트가 서로 노출되거나 덮어써지거나 삭제될 수 있습니다. 2.7.0 및 1.39.1에서 레거시 경로 폴백이 제거되고 앱별 경로 범위 지정이 강제되어 수정되었습니다.

💡 쉬운 설명

같은 저장소를 사용하는 서로 다른 앱이 서로의 파일을 볼 수 있거나 지울 수 있는 문제입니다. 해당 라이브러리를 최신 수정 버전으로 업데이트하면 앱끼리 데이터가 분리됩니다.

🇺🇸 원문 (English)

Exposure of Resource to Wrong Sphere (CWE-668) in FileArtifactService in Google Agent Development Kit (ADK) for Python (google-adk) versions 1.19.0 before 1.39.1 and 2.0.0a1 before 2.7.0 allows a caller in one application to list, read, overwrite, or delete artifacts belonging to another application when both applications share a FileArtifactService root directory and use the same user_id (and session_id for session-scoped artifacts). FileArtifactService accepted app_name across its public API methods but omitted app_name when constructing on-disk paths (root/users/{user_id}/... instead of root/apps/{app_name}/users/{user_id}/...). Version 2.6.0 scoped writes by app_name but retained a legacy root/users/{user_id} fallback for reads and deletes; version 2.7.0 and the 1.x backport in version 1.39.1 removed the fallback and enforce full per-app path scoping.

📍 영향받는 시스템

google-adk(Python) 1.19.0 이상 1.39.1 미만, 2.0.0a1 이상 2.7.0 미만

⚔️ 공격 벡터

같은 FileArtifactService 루트 디렉터리와 user_id를 공유하는 다른 애플리케이션이 아티팩트를 조회·읽기·덮어쓰기·삭제하여 대상 앱의 데이터에 접근

🛡️ 대응 방법

google-adk를 1.39.1 이상 또는 2.7.0 이상으로 업그레이드하고, 서로 다른 앱이 동일한 FileArtifactService 루트 디렉터리를 공유하지 않도록 분리

🔧 검증 코드

출력된 버전이 1.19.0~1.39.0 또는 2.0.0a1~2.6.x 범위에 해당하면 취약하므로 1.39.1(1.x) 또는 2.7.0(2.x) 이상으로 업그레이드가 필요하며, 패키지가 없으면 출력이 비어 있습니다.

Shell / Script
pip show google-adk 2>/dev/null | grep -i '^version'

📊 CVSS Vector String

CVSS Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N

💻 영향받는 소프트웨어

Python