blob: b888ffb1009038ae07fc2614d42acbdf73a551fd (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
semantic: 0.983
graphic: 0.873
device: 0.790
socket: 0.764
vnc: 0.756
boot: 0.678
network: 0.672
performance: 0.656
files: 0.633
permissions: 0.619
other: 0.609
debug: 0.525
PID: 0.488
KVM: 0.412
semantic: 0.981
debug: 0.206
other: 0.047
performance: 0.033
files: 0.026
PID: 0.009
device: 0.006
network: 0.004
permissions: 0.003
boot: 0.003
KVM: 0.003
graphic: 0.003
socket: 0.002
vnc: 0.001
x86 BLSI and BLSR semantic bug
Description of problem
The result of instruction BLSI and BLSR is different from the CPU. The value of CF is different.
Steps to reproduce
Compile this code
void main() {
asm("blsi rax, rbx");
}
Execute and compare the result with the CPU. The value of CF is exactly the opposite. This problem happens with BLSR, too.
Additional information
This bug is discovered by research conducted by KAIST SoftSec.
|