From: "Kumar Kartikeya Dwivedi" <memxor@gmail.com>
To: "Rik van Riel" <riel@surriel.com>, "Alexei Starovoitov" <ast@kernel.org>
Cc: "Quentin Monnet" <qmo@kernel.org>,
"Daniel Borkmann" <daniel@iogearbox.net>,
"Andrii Nakryiko" <andrii@kernel.org>,
"Eduard Zingerman" <eddyz87@gmail.com>,
"Martin KaFai Lau" <martin.lau@linux.dev>,
"Song Liu" <song@kernel.org>,
"Yonghong Song" <yonghong.song@linux.dev>,
"Jiri Olsa" <jolsa@kernel.org>,
"Emil Tsalapatis" <emil@etsalapatis.com>, <bpf@vger.kernel.org>,
<linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] bpf: fix array-index-out-of-bounds in print_bpf_insn
Date: Mon, 24 Aug 2026 22:45:40 +0200 [thread overview]
Message-ID: <DKXGUP3WYZAD.1ZH64HX717QXD@gmail.com> (raw)
In-Reply-To: <20260824164143.485301ca@fangorn>
On Mon Aug 24, 2026 at 10:41 PM CEST, Rik van Riel wrote:
> syzkaller triggers UBSAN array-index-out-of-bounds and panic_on_warn
> panic in print_bpf_insn() when loading a BPF program containing
> BPF_LDX | BPF_MEMSX | BPF_DW.
>
> bpf_ldsx_string[] holds three entries for B/H/W (s8/s16/s32).
> BPF_DW gives index 3 and reads past the array. check_subprogs()
> prints the program via bpf_diag_program_structure() before
> do_check() validates the instruction, so the illegal insn reaches
> the disassembler.
>
> UBSAN: array-index-out-of-bounds in kernel/bpf/disasm.c:306:21
> index 3 is out of range for type 'char *[3]'
> print_bpf_insn+0x2328/0x2940 kernel/bpf/disasm.c:306
> format_disasm_line kernel/bpf/diagnostics.c:633
> diag_print_insn_context+0x3a5/0x930 kernel/bpf/diagnostics.c:783
> bpf_diag_source+0x615/0x14a0 kernel/bpf/diagnostics.c:896
> bpf_diag_program_structure+0x1f9/0x280 kernel/bpf/diagnostics.c:1215
> check_subprogs+0x5c3/0x650 kernel/bpf/verifier.c:3057
> bpf_check+0x1935/0x89f0 kernel/bpf/verifier.c:21097
> bpf_prog_load+0x17dd/0x2990 kernel/bpf/syscall.c:3133
>
> Guard any size index beyond the corresponding string table and emit
> BUG_ldx instead of accessing memory beyond the end of the the array.
>
> Fixes: f835bb622299 ("bpf: Add kernel/bpftool asm support for new instructions")
> Assisted-by: claw:muse-spark-1.2 syzkaller
> Signed-off-by: Rik van Riel <riel@surriel.coM>
> ---
Already fixed by https://lore.kernel.org/bpf/20260820022020.3450479-2-memxor@gmail.com.
pw-bot: cr
> [...]
next prev parent reply other threads:[~2026-08-24 20:45 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-24 20:41 [PATCH] bpf: fix array-index-out-of-bounds in print_bpf_insn Rik van Riel
2026-08-24 20:45 ` Kumar Kartikeya Dwivedi [this message]
2026-08-24 21:23 ` bot+bpf-ci
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=DKXGUP3WYZAD.1ZH64HX717QXD@gmail.com \
--to=memxor@gmail.com \
--cc=andrii@kernel.org \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=eddyz87@gmail.com \
--cc=emil@etsalapatis.com \
--cc=jolsa@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=martin.lau@linux.dev \
--cc=qmo@kernel.org \
--cc=riel@surriel.com \
--cc=song@kernel.org \
--cc=yonghong.song@linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.