🇰🇷 한글 설명
Envoy 프록시의 Lua 필터에서 use-after-free 취약점이 발견되었습니다. 응답 단계에서 실행되는 Lua 스크립트가 응답 본문을 재작성하여 설정된 버퍼 제한을 초과할 경우, 헤더 참조 오류로 인해 메모리 손상 및 서비스 거부(DoS)가 발생할 수 있습니다.
💡 쉬운 설명
특정 조건에서 Envoy 프록시가 처리할 수 있는 데이터 크기를 넘어서면 프로그램이 갑자기 종료될 수 있는 오류입니다. 이로 인해 웹 서비스가 중단되어 정상적인 이용이 불가능해질 수 있습니다.
🇺🇸 원문 (English)
Envoy is an open source edge and service proxy. Envoy versions earlier than 1.36.2, 1.35.6, 1.34.10, and 1.33.12 contain a use-after-free vulnerability in the Lua filter. When a Lua script executing in the response phase rewrites a response body so that its size exceeds the configured per_connection_buffer_limit_bytes (default 1MB), Envoy generates a local reply whose headers override the original response headers, leaving dangling references and causing a crash. This results in denial of service. Updating to versions 1.36.2, 1.35.6, 1.34.10, or 1.33.12 fixes the issue. Increasing per_connection_buffer_limit_bytes (and for HTTP/2 the initial_stream_window_size) or increasing per_request_buffer_limit_bytes / request_body_buffer_limit can reduce the likelihood of triggering the condition but does not correct the underlying memory safety flaw.
📍 영향받는 시스템
Envoy versions earlier than 1.36.2, 1.35.6, 1.34.10, and 1.33.12
⚔️ 공격 벡터
Lua 스크립트를 통해 응답 본문 크기를 설정된 버퍼 제한(per_connection_buffer_limit_bytes) 이상으로 확장하여 메모리 오류 유도
🛡️ 대응 방법
Envoy를 최신 보안 패치 버전(1.36.2, 1.35.6, 1.34.10, 1.33.12 이상)으로 업데이트하십시오.
🔧 검증 코드
출력된 Envoy 버전을 확인하여 취약점이 해결된 버전(1.36.2, 1.35.6, 1.34.10, 1.33.12 이상)인지 대조하십시오.
envoy --version 2>/dev/null || dpkg -l | grep envoy