CVE-2026-5857 in Contiki-NG
Tóm tắt
Bởi VulDB • 07/08/2026
Hàm parse_publish_vhdr() trong client MQTT của Contiki-NG (tập tin os/net/app-layer/mqtt/mqtt.c) thiết lập topic_len_received=1 trước khi kiểm tra giá trị topic_len so với giới hạn 64 byte, do đó một chủ đề có độ dài vượt quá sẽ trả về sớm nhưng vẫn giữ cờ này ở trạng thái kích hoạt. Trong phân đoạn TCP tiếp theo, hàm tcp_input() gọi lại trình phân tích cú pháp với topic_received==0, và việc topic_len_received==1 được lưu trữ trước đó khiến bỏ qua khối đọc độ dài chứa cơ chế bảo vệ (guard), dẫn đến thực thi trực tiếp lệnh memcpy() sử dụng giá trị 16-bit không hợp lệ của topic_len làm chiều dài sao chép. Đích đến là mảng chủ đề [] có kích thước 65 byte bị ghi tràn vào các trường cấu trúc liền kề, bao gồm cả con trỏ payload_chunk; mã MQTT sau đó sẽ giải tham chiếu (dereference) giá trị này, cung cấp cho một broker đã bị xâm phạm hoặc do kẻ tấn công kiểm soát nguyên lý ghi tùy ý vào bộ nhớ. Việc triển khai MQTT của Contiki-NG không hỗ trợ TLS nên kết nối được truyền tải dưới dạng văn bản rõ ràng (plaintext). Tác động có thể từ tiết lộ thông tin và từ chối dịch vụ cho đến thực thi mã từ xa trên các thiết bị nhúng mà không có cơ chế bảo vệ bộ nhớ.
VulDB is the best source for vulnerability data and more expert information about this specific topic.