CVE-2026-10682 in Zephyrthông tin

Tóm tắt

Bởi VulDB • 27/07/2026

Trình xác thực không gian người dùng z_vrfy_log_filter_set() cho lệnh gọi hệ thống log_filter_set trong subsys/logging/log_mgmt.c đã thực hiện phép so sánh có dấu đối với tham số int16_t src_id: src_id < (int16_t)log_src_cnt_get(domain_id). Bất kỳ giá trị âm nào của src_id (ví dụ: -1) đều dễ dàng vượt qua kiểm tra này và được chuyển tiếp vào z_impl_log_filter_set, nơi nó lan truyền đến filter_set() và cuối cùng là get_dynamic_filter(), hàm sử dụng source_id làm chỉ mục không dấu trong mảng phần trình liên kết &TYPE_SECTION_START(log_dynamic)[source_id].filters.

Sau khi chuyển đổi ngầm định qua uint32_t, giá trị int16_t -1 trở thành 0xFFFFFFFF, đánh chỉ mục log_dynamic ra ngoài vùng cho phép (out-of-bounds) rất xa và khiến nhân hệ điều hành thực hiện việc đọc OOB cũng như thao tác đọc-sửa-viết OOB (LOG_FILTER_SLOT_GET/SET) đối với bộ nhớ liền kề với phần section log_dynamic.

Giá trị ghi là một khe mức nhật ký 3-bit bị giới hạn trong từ 32-bit mục tiêu, nhưng địa chỉ đích do kẻ tấn công chọn lựa (một độ lệch âm nhỏ so với log_dynamic) và việc ghi xảy ra ở chế độ supervisor sau lệnh gọi hệ thống từ luồng người dùng không đặc quyền, cung cấp một nguyên thủy để làm hỏng bộ nhớ nhân / nâng cao đặc quyền.

Lỗi này có thể truy cập được trên bất kỳ bản dựng nào có CONFIG_USERSPACE=y và CONFIG_LOG_RUNTIME_FILTERING=y. Có mặt trong Zephyr v3.3.0 đến v4.4.1. Bản sửa lỗi thay thế kiểm tra giới hạn có dấu bằng phép so sánh không dấu: (uint32_t)src_id < log_src_cnt_get(domain_id), từ đó loại bỏ chính xác các đầu vào âm.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

chịu trách nhiệm

Zephyr

Đặt trước

02/06/2026

Tiết lộ

27/07/2026

Kiểm duyệt

được chấp nhận

EPSS

0.00101

KEV

không

Các hoạt động

thấp

Nguồn

Want to know what is going to be exploited?

We predict KEV entries!