lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Wed, 7 Sep 2022 01:54:05 -0700 From: Li Zhong <floridsleeves@...il.com> To: linux-kernel@...r.kernel.org Cc: peterz@...radead.org, jpoimboe@...nel.org, jbaron@...mai.com, rostedt@...dmis.org, ardb@...nel.org, tglx@...utronix.de, mingo@...hat.com, bp@...en8.de, dave.hansen@...ux.intel.com, x86@...nel.org, hpa@...or.com, Li Zhong <floridsleeves@...il.com> Subject: [PATCH v2] arch/x86/kernel: check the return value of insn_decode_kernel() insn_decode() could fail and the insn.length could be invalid. So we need to check the return value first. Signed-off-by: Li Zhong <floridsleeves@...il.com> --- arch/x86/kernel/jump_label.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/arch/x86/kernel/jump_label.c b/arch/x86/kernel/jump_label.c index f5b8ef02d172..59385700f579 100644 --- a/arch/x86/kernel/jump_label.c +++ b/arch/x86/kernel/jump_label.c @@ -20,9 +20,10 @@ int arch_jump_entry_size(struct jump_entry *entry) { struct insn insn = {}; + int ret; - insn_decode_kernel(&insn, (void *)jump_entry_code(entry)); - BUG_ON(insn.length != 2 && insn.length != 5); + ret = insn_decode_kernel(&insn, (void *)jump_entry_code(entry)); + BUG_ON(ret < 0 || (insn.length != 2 && insn.length != 5)); return insn.length; } -- 2.25.1
Powered by blists - more mailing lists