CVE-2026-68441 in Linux
Tóm tắt
Bởi VulDB • 12/08/2026
Trong kernel Linux, lỗ hổng bảo mật sau đây đã được khắc phục:
net/sched: Xử lý TC_ACT_REDIRECT từ các chuỗi bộ lọc qdisc
Khi một bộ lọc TC gắn vào chuỗi bộ lọc qdisc trả về TC_ACT_REDIRECT (ví dụ: thông qua chương trình eBPF gọi bpf_redirect() hoặc hành động act_bpf), lệnh chuyển hướng bị mất im lặng, nghĩa là không có hàm phân loại qdisc nào xử lý TC_ACT_REDIRECT, do đó gói tin rơi xuống và được đưa vào hàng đợi bình thường thay vì được chuyển hướng.
Sự cố này đã tồn tại kể từ khi bpf_redirect() được giới thiệu cho TC trong commit 27b29f63058d ("bpf: add bpf_redirect() helper"). Chúng tôi đã may mắn trong một thời gian dài vì bpf_net_context là biến trên mỗi CPU và luôn khả dụng.
Commit 401cb7dae813 ("net: Reference bpf_redirect_info via task_struct on PREEMPT_RT.") đã chuyển đổi bpf_net_context thành một thành viên của task_struct, chỉ được thiết lập bởi các caller rõ ràng. Nếu không có caller nào thiết lập nó, bản thân bpf_redirect() sẽ gây ra lỗi crash do truy cập NULL pointer trong hàm bpf_net_ctx_get_ri(). Tuy nhiên, ngay cả khi bpf_net_context khả dụng, TC_ACT_REDIRECT từ các chuỗi bộ lọc qdisc cũng không thể được thực thi nếu không thêm các lệnh gọi skb_do_redirect() vào mọi hàm phân loại qdisc, điều này sẽ yêu cầu thay đổi trên toàn bộ net/sched/. Do đó, cần cô lập nó ở lõi ebpf nơi nó thuộc về.
Thay vào đó, hãy thêm một helper nội tuyến tcf_classify_qdisc() trong pkt_cls.h, dưới dạng wrapper xung quanh tcf_classify() để sử dụng bởi các hàm phân loại qdisc và tcf_qevent_handle(). Khi quyết định phân loại là TC_ACT_REDIRECT, wrapper sẽ chuyển đổi nó thành TC_ACT_SHOT, làm mất gói tin thay vì để nó tiếp tục im lặng. Việc làm mất gói tin được ưu tiên hơn việc cho gói tin đi qua vì người dùng ngay lập tức thấy tình trạng mất gói tin. Việc âm thầm cho gói tin đi qua sẽ che giấu vấn đề và khiến người dùng bối rối không biết tại sao lệnh chuyển hướng của họ không hoạt động.
Đường dẫn nhanh clsact, tc_run(), tiếp tục gọi tcf_classify() trực tiếp và không bị ảnh hưởng: TC_ACT_REDIRECT được trả về nguyên trạng và được xử lý bởi sch_handle_egress/ingress() bằng cách gọi skb_do_redirect() như trước đây.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.