🇰🇷 한글 설명
@langchain/langgraph-checkpoint-redis의 RedisSaver와 ShallowRedisSaver 클래스에서 사용자 제공 필터 키와 값이 적절히 이스케이프되지 않아 발생하는 RediSearch 쿼리 인젝션 취약점입니다. 공격자가 RediSearch 특수 구문 문자를 필터에 포함시켜 쿼리 로직을 조작하고 접근 제어를 우회할 수 있습니다.
💡 쉬운 설명
데이터베이스 검색 기능에서 사용자 입력이 제대로 검증되지 않아 공격자가 검색 명령을 변조할 수 있습니다. 이를 통해 본래 접근 불가능한 데이터에 접근하는 것이 가능합니다.
🇺🇸 원문 (English)
@langchain/langgraph-checkpoint-redis is the Redis checkpoint and store implementation for LangGraph. A query injection vulnerability exists in the @langchain/langgraph-checkpoint-redis package's filter handling. The RedisSaver and ShallowRedisSaver classes construct RediSearch queries by directly interpolating user-provided filter keys and values without proper escaping. RediSearch has special syntax characters that can modify query behavior, and when user-controlled data contains these characters, the query logic can be manipulated to bypass intended access controls. This vulnerability is fixed in 1.0.2.
📍 영향받는 시스템
@langchain/langgraph-checkpoint-redis 버전 1.0.2 미만
⚔️ 공격 벡터
사용자 제공 필터 매개변수에 RediSearch 특수 구문 문자(예: 괄호, 따옴표 등)를 삽입하여 쿼리 구조 변조
🛡️ 대응 방법
@langchain/langgraph-checkpoint-redis를 1.0.2 이상으로 업그레이드
🔧 검증 코드
표시된 버전이 1.0.2 이상이면 안전하고, 1.0.2 미만 버전이 나타나면 즉시 업그레이드 필요합니다.
npm ls @langchain/langgraph-checkpoint-redis 2>/dev/null | grep '@langchain/langgraph-checkpoint-redis'