Kernel NULL pointer dereference in target_put() during target deletion
Maintainer thường phản hồi trong vòng 2 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 38/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- c, linux
- Lĩnh vực
- backend, operating-systems
Hướng nghiên cứu
Start by reading target_put() and table_del_target(), then trace how deletion reaches them through proc_control_read_write() and how target output initialization is handled. The report has no deterministic reproducer, so first investigate the incomplete or failed initialization path described in the issue. Done means deleting a target on that path no longer causes a NULL pointer dereference.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
rtpengine version the issue has been seen with
26.3.0.0+0~mr26.3.0.0-1.el10
Used distribution and its version
Oracle Linux Server 10.1, x86_64
Linux kernel version used
6.12.0-206.104.4.4.el10uek.x86_64
CPU architecture issue was seen on (see uname -m)
x86_64
Expected behaviour you didn't see
Deleting a kernel forwarding target should safely release its resources without causing a kernel Oops, including when output initialization is incomplete or has failed.
Unexpected behaviour you saw
The VM experienced a kernel NULL pointer dereference inside target_put() in nft_rtpengine.
The call trace shows that this occurred in task context, while a thread named poller was writing to the module's proc control interface. The path goes through proc_control_read_write() and table_del_target(), rather than the incoming packet-processing path.
Kdump captured a vmcore. The VM subsequently rebooted.
Steps to reproduce the problem
We do not yet have a deterministic reproducer or an identified triggering call/packet.
Additional program output to the terminal or logs illustrating the issue
BUG: kernel NULL pointer dereference, address: 000000000000008c
#PF: supervisor write access in kernel mode
#PF: error_code(0x0002) - not-present page
Oops: Oops: 0002 [#1] PREEMPT SMP PTI
CPU: 2 UID: 986 PID: 69974 Comm: poller Kdump: loaded
Tainted: G OE
6.12.0-206.104.4.4.el10uek.x86_64 #2
RIP: 0010:target_put.part.0+0xbe/0x110 [nft_rtpengine]
Code: 50 0d 00 00 48 8b bc 28 00 07 00 00 e8 eb 38 7b d8
48 8b 83 50 0d 00 00 48 8b bc 28 f8 06 00 00 44 89 e8
48 8d 97 8c 00 00 00 <f0> 0f c1 87 8c 00 00 00
83 f8 01 75 83 e8 70 e1 78 d8 eb 84 e8 39
RAX: 00000000ffffffff
RDX: 000000000000008c
RDI: 0000000000000000
CR2: 000000000000008c
Call Trace:
<TASK>
table_del_target+0x1ac/0x230 [nft_rtpengine]
proc_control_read_write+0x5d0/0x767 [nft_rtpengine]
proc_reg_write+0x5a/0xb0
vfs_write+0x109/0x450
ksys_write+0xc1/0xf0
do_syscall_64+0x90/0x1c0
entry_SYSCALL_64_after_hwframe+0x76/0x7e
</TASK>
Anything else?
No response
- Ngôn ngữ chính
- Perl
- Star
- 992
- Fork
- 459
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Chuẩn bị môi trường
Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của sipwise/rtpengine
-
RTCP SR/RR length check ignores the fixed header, report blocks are read past the packet endĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
Maintainer thường phản hồi trong vòng 2 ngày
-
bug
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 75/100
Maintainer thường phản hồi trong vòng 2 ngày
-
SDES: new crypto key in re-INVITE answer (hold) but ROC/SSRC kept -> one-way audio after resumeCó thể đã có người làm @matteocanevari94-dot đã nhận hôm nay. Đang mởbug
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 48/100
sipwise/rtpengine#2234 · 3 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
bug
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 25/100
sipwise/rtpengine#2231 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
Tất cả issue của sipwise/rtpengine
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
libwww-perl/HTTP-Message#236 ·
-
1.severity: security
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
Maintainer thường phản hồi trong vòng 1 ngày
-
wave-followup
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
-
benchmarks/README: 'perl BNG2.pl model.bngl' runs the whole protocol, not just generate_networkĐang mởdocumentation
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
virtualmin/virtualmin-gpl#1322 ·