diff options
Diffstat (limited to 'results/classifier/010/semantic/gitlab_semantic_bextr')
| -rw-r--r-- | results/classifier/010/semantic/gitlab_semantic_bextr | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/results/classifier/010/semantic/gitlab_semantic_bextr b/results/classifier/010/semantic/gitlab_semantic_bextr deleted file mode 100644 index ff13d5385..000000000 --- a/results/classifier/010/semantic/gitlab_semantic_bextr +++ /dev/null @@ -1,54 +0,0 @@ -semantic: 0.993 -graphic: 0.790 -device: 0.717 -debug: 0.603 -boot: 0.516 -vnc: 0.471 -socket: 0.397 -PID: 0.234 -performance: 0.233 -network: 0.219 -permissions: 0.188 -other: 0.099 -files: 0.099 -KVM: 0.091 -semantic: 0.982 -debug: 0.687 -other: 0.037 -files: 0.029 -performance: 0.017 -PID: 0.008 -device: 0.007 -network: 0.006 -permissions: 0.002 -socket: 0.002 -KVM: 0.002 -graphic: 0.002 -boot: 0.002 -vnc: 0.001 - -x86 BEXTR semantic bug -Description of problem -The result of instruction BEXTR is different with from the CPU. The value of destination register is different. I think QEMU does not consider the operand size limit. - -Steps to reproduce - -Compile this code - -void main() { - asm("mov rax, 0x17b3693f77fb6e9"); - asm("mov rbx, 0x8f635a775ad3b9b4"); - asm("mov rcx, 0xb717b75da9983018"); - asm("bextr eax, ebx, ecx"); -} - -Execute and compare the result with the CPU. - -CPU -RAX = 0x5a - -QEMU -RAX = 0x635a775a - -Additional information -This bug is discovered by research conducted by KAIST SoftSec. |