무슨 일이 있었나
NVD는 CVE-2026-72742(CVSS 8.6, 높음)를 발표했으며, DSPy의 구조화된 출력 어댑터에서 공격자의 영향을 받은 LLM 출력으로 인해 트리거되는 임의의 로컬 파일 읽기 취약점을 설명합니다.
왜 중요한가
DSPy는 LLM 파이프라인 프로그래밍을 위한 Stanford NLP 프레임워크이며, 이는 구조화된 출력 파싱이 LLM 생성 콘텐츠를 개발자 제어인 것처럼 신뢰하는 더 광범위한 패턴을 보여줍니다. 이를 통해 모델 출력에 영향을 줄 수 있는 공격자(프롬프트 인젝션 또는 손상된 모델을 통해)가 파이프라인을 실행하는 호스트에서 로컬 파일을 유출할 수 있습니다.
공격 경로
JSONAdapter와 ChatAdapter는 parse_value를 통해 신뢰할 수 없는 LLM 완성을 TypeAdapter 검증으로 파싱합니다. 파싱된 Image 또는 Audio 타입 출력의 url 필드에 주입된 파일시스템 경로는 encode_image/encode_audio를 트리거하여 모든 로컬 파일을 읽고 base64 인코딩한 후 모델의 응답 파이프라인을 통해 유출합니다.
영향받는 시스템
DSPy 3.3.0b1
완화 방안
수정이 릴리스되면 DSPy를 업그레이드하고, 타입 Image/Audio 출력의 url 필드를 원격 HTTP(S) URL로만 검증/제한하며 로컬 파일 경로를 거부합니다.