목록 보기
Redis와 Valkey를 해킹해 보자(Feat. CVE ID)
백엔드

Redis와 Valkey를 해킹해 보자(Feat. CVE ID)

NHN
NHN
2026년 7월 6일

두줄요약

Lua 오류 응답 경로의 RESP 인젝션으로 소켓 포이즈닝과 DoS가 가능한 원인을 분석했습니다. CRLF 정제 누락과 RESP 파싱 악용 흐름, 영향 버전 및 패치 정보를 정리했습니다.

문제 상황

  • Valkey·Redis Lua 오류 응답 경로의 RESP 인젝션 취약점(CVE-2025-67733)
  • 소켓 포이즈닝 기반 응답 변조와 대기 상태 유발 DoS 위험

구조와 흐름

  • EVAL 실행 중 redis.error_reply() 반환값을 error()로 전파하는 오류 처리 경로
  • luaCallFunction()에서 오류 정보 추출 후 RESP Error 응답으로 클라이언트 출력 버퍼 기록
  • 주입된 CRLF 뒤 응답 조각을 클라이언트가 별도 RESP 메시지로 파싱하는 흐름

원인 분석

  • luaPushErrorBuff()의 sdstrim(msg, "\r\n")가 문자열 양 끝의 CRLF만 제거
  • addReplyErrorSdsEx()부터 memcpy()까지 내부 CRLF를 검증·정제 없이 전달하는 경로
  • Bulk String 길이값 주입 시 클라이언트의 대용량 데이터 대기 상태

주의할 점

  • Valkey 9.0.1 이하 및 Redis 8.4.1 이하 영향 범위와 패치 버전 확인
  • 오류 메시지 등 프로토콜 응답에 포함되는 외부 입력의 CRLF 검증 필요

다음 읽기

비슷한 주제의 프론트엔드 글

React와 DoS

React Flight Protocol의 순환 참조가 Node.js 서버를 블로킹하는 DoS 취약점을 분석했습니다. 자기 참조 감지와 참조 체인 1,000회 제한 패치 과정을 설명합니다.

클라우드메이트
클라우드메이트
프론트엔드

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...