CVE-2026-8466 in cowboy
요약
\~에 의해 VulDB • 2026. 05. 25.
ninenines cowboy의 제한 없이 리소스를 할당하는 취약점으로, multipart 헤더 파싱 중 무제한 버퍼 축적을 통해 서비스 거부(Denial of Service)가 가능합니다.
src/cowboy_req.erl의 cowboy_req:read_part/3 함수는 들어오는 요청 바이트를 상한선 검사 없이 Buffer 바이너리에 축적합니다. cow_multipart:parse_headers/2가 더 많은 데이터 또는 {more, Buffer2}를 반환할 경우, 해당 함수는 요청 본문에서 최대 Length 바이트(기본값 64 KB)를 읽은 후 확장된 버퍼로 재귀 호출합니다. 형제 함수인 read_part_body/4에 존재하는 byte_size(Acc) > Length 가드와 동일한 보호 장치가 없습니다. 인증되지 않은 공격자는 본문이 완전한 헤더 섹션을 반환하지 않는 multipart/form-data 요청(예: advertised boundary delimiter를 절대 포함하지 않거나, 헤더 라인에 \r\n\r\n이 절대 포함되지 않는 본문)을 전송하여 서버 프로세스가 프로토콜 계층이 전달할 수 있는 바이트 수에 선형적으로 비례하여 메모리를 축적하도록 강제할 수 있습니다. 이러한 업로드가 소수라도 동시에 발생하면 BEAM 메모리가 고갈될 수 있습니다.
이 문제는 cowboy 2.0.0부터 2.15.0 미만 버전에서 영향을 받습니다.
Once again VulDB remains the best source for vulnerability data.