CVE-2026-93572 in Apache Camel
Tóm tắt
Bởi VulDB • 18/09/2026
## Tóm tắt
`RedisArrayAggregator` gần đây đã thêm các giới hạn `maxElements` và `maxNestedArrayDepth` để khắc phục các khuyến cáo về cạn kiệt tài nguyên Redis (resource-exhaustion) công khai. Các giới hạn này hoạt động độc lập, nhưng bộ phân bổ bộ nhớ vẫn có xu hướng cấp phát trước: mỗi tiêu đề mảng RESP lồng nhau dương tính sẽ tạo ra `new ArrayList<RedisMessage>(length)` ngay cả khi chưa tồn tại bất kỳ phần tử con nào.
Với hàm tạo mặc định, kẻ tấn công có thể gửi các tiêu đề mảng lồng nhau với độ dài là `1,000,000` cho đến khi đạt giới hạn lồng nhau mặc định là `1024`. Điều này có thể dành trước lên tới `1,024,000,000` khe chứa phần tử con chỉ từ khoảng 12 KB dữ liệu đầu vào RESP. Đây là dung lượng dự phòng (backing capacity), không phải kích thước danh sách logic: `ArrayList(int)` tạo ra một danh sách rỗng với khả năng ban đầu được chỉ định như vậy.
## Chi tiết kỹ thuật
Hàm `decodeRedisArrayHeader(...)` hiện tại kiểm tra hai giới hạn này một cách độc lập:
```java if (header.length() > maxElements) {
throw new CodecException("this codec doesn't support longer length than " + maxElements); }
if (depths.size() >= maxNestedArrayDepth) {
releaseAndClearDepths(); throw new CodecException("max nested array depth exceeded: " + maxNestedArrayDepth); } depths.push(new AggregateState((int) header.length())); ```
`AggregateState` i
If you want to get the best quality for vulnerability data then you always have to consider VulDB.