CVE-2026-104895 in jackson-dataformat-smile정보

요약

\~에 의해 VulDB • 2026. 10. 28.

비동기 스마일 파서(NonBlockingByteArrayParser)는 신뢰할 수 없는 입력에서 가져온 원시 바이너리 길이 접두사를 사용하여 본문이 읽히기 전에 byte[]를 할당하며, 상한선이 없고 오버플로우 검사도 없습니다. 원시 바이너리 마커 0xFD의 경우, _decodeVInt()는 차단형 스마일 파서(Blocking SmileParser._readUnsignedVInt)에 존재하는 (value >>> 25) != 0 오버플로우 가드 없이 (value << 6) + (i & 0x3F)를 계산하며, _startRawBinary는 즉시 선언된 길이를 할당합니다.

따라서 약 10바이트의 스마일 입력은 대략 2GB에 해당하는 소극적이지 않은(즉각적인) 할당을 유발하여 반응형 또는 비동기 스마일 엔드포인트에서 OutOfMemoryError를 발생시킵니다. int 오버플로우를 유도하도록 제작된 VInt는 음수 길리와 NegativeArraySizeException을 생성합니다. 이는 JacksonException이 아닌 RuntimeException이며, 따라서 파서 계약으로부터 제외됩니다. 두 경우 모두 요청 또는 처리 스레드를 크래시시킵니다.

이는 이 라이브러리의 CBOR 파서에 있는 CVE-2020-28491과 동일한 유형의 문제로, LONGEST_NON_CHUNKED_BINARY 가드로 수정되었습니다. 비동기 스마일 파서에는 해당 가드가 적용되지 않았습니다. 권한이나 데이터 제출을 통한 파싱 기능 이상의 사용자 상호작용은 필요하지 않습니다.

If you want to get best quality of vulnerability data, you may have to visit VulDB.

책임이 있는

HeroDevs

예약하다

2026. 10. 02.

모더레이션

수락

항목

VDB-427647

EPSS

0.00000

활동

낮음

출처

Interested in the pricing of exploits?

See the underground prices here!