From 05ed9b00104b3da2e9cb0d541b5c5bbceb027fde Mon Sep 17 00:00:00 2001 From: Christian Krinitsin Date: Sun, 1 Jun 2025 21:19:28 +0200 Subject: adjust classifier --- .../semantic_issues/gitlab_semantic_bzhi | 38 ++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 classification/semantic_issues/gitlab_semantic_bzhi (limited to 'classification/semantic_issues/gitlab_semantic_bzhi') diff --git a/classification/semantic_issues/gitlab_semantic_bzhi b/classification/semantic_issues/gitlab_semantic_bzhi new file mode 100644 index 00000000..b86da08c --- /dev/null +++ b/classification/semantic_issues/gitlab_semantic_bzhi @@ -0,0 +1,38 @@ +x86 BZHI semantic bug +Description of problem +The result of instruction BZHI is different from the CPU. The value of destination register and SF of EFLAGS are different. + +Steps to reproduce + +Compile this code + + +void main() { + asm("mov rax, 0xb1aa9da2fe33fe3"); + asm("mov rbx, 0x80000000ffffffff"); + asm("mov rcx, 0xf3fce8829b99a5c6"); + asm("bzhi rax, rbx, rcx"); +} + + + +Execute and compare the result with the CPU. + +CPU + +RAX = 0x0x80000000ffffffff +SF = 1 + + +QEMU + +RAX = 0xffffffff +SF = 0 + + + + + + +Additional information +This bug is discovered by research conducted by KAIST SoftSec. -- cgit 1.4.1