CVE-2026-64007 in Linuxthông tin

Tóm tắt

Bởi VulDB • 19/07/2026

Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:

netfilter: synproxy: làm mới tcphdr sau skb_ensure_writable

synproxy_tstamp_adjust() ghi đè tùy chọn thời gian TCP (TCP timestamp option) tại chỗ và sau đó vá tổng kiểm tra TCP (TCP checksum) thông qua inet_proto_csum_replace4() trên con trỏ tcphdr do người gọi cung cấp. Cả ipv4_synproxy_hook() lẫn ipv6_synproxy_hook() đều lấy con trỏ này bằng skb_header_pointer() trước khi gọi hàm, vì vậy nó có thể là alias trực tiếp của skb->head hoặc trỏ đến bộ đệm _tcph trên ngăn xếp (on-stack) của người gọi.

Giữa lúc lấy con trỏ và sử dụng nó, hàm gọi skb_ensure_writable(skb, optend), điều này trong trường hợp một skb được sao chép (cloned) hoặc không tuyến tính (non-linear) sẽ kích hoạt pskb_expand_head() và giải phóng bộ nhớ cũ của skb->head. Sau điểm đó, con trỏ th đã lỗi thời:

caller (ipv[46]_synproxy_hook)
th = skb_header_pointer(skb, ..., &_tcph) synproxy_tstamp_adjust(skb, protoff, th, ...) skb_ensure_writable(skb, optend) pskb_expand_head() /* kfree(old skb->head) */ ... inet_proto_csum_replace4(&th->check, ...) /* ghi vào bộ nhớ đã giải phóng hoặc vào bản sao trên ngăn xếp của người gọi, khiến tổng kiểm tra khi truyền tải (on-wire checksum) bị lỗi thời */

Các byte tùy chọn được ghi thông qua skb->data và hoạt động bình thường; chỉ có việc cập nhật tổng kiểm tra đi qua th nên kết quả rơi vào vị trí sai. Hậu quả là hoặc một bản ghi vào bộ nhớ slab đã giải phóng, hoặc một gói tin rời khỏi với tổng kiểm tra không khớp với phần tải trọng (payload) của nó.

Khắc phục bằng cách tính toán lại th từ skb->data + protoff ngay sau khi skb_ensure_writable() thành công, để việc cập nhật tổng kiểm tra tiếp theo nhắm vào tiêu đề tuyến tính và có thể ghi được.

Be aware that VulDB is the high quality source for vulnerability data.

chịu trách nhiệm

Linux

Đặt trước

19/07/2026

Tiết lộ

19/07/2026

Kiểm duyệt

được chấp nhận

EPSS

0.00000

KEV

không

Các hoạt động

thấp

Nguồn

Want to stay up to date on a daily basis?

Enable the mail alert feature now!