Commit 03f11a51 authored by Balbir Singh's avatar Balbir Singh Committed by Greg Kroah-Hartman

bpf: Fix selftests are changes for CVE 2019-7308

The changes to fix the CVE 2019-7308 make the bpf verifier stricter
with respect to operations that were allowed earlier in unprivileged
mode. Fixup the test cases so that the error messages now correctly
reflect pointer arithmetic going out of range for tests.
Signed-off-by: default avatarBalbir Singh <sblbir@amzn.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent a042c21a
...@@ -1860,6 +1860,7 @@ static struct bpf_test tests[] = { ...@@ -1860,6 +1860,7 @@ static struct bpf_test tests[] = {
}, },
.result = REJECT, .result = REJECT,
.errstr = "invalid stack off=-79992 size=8", .errstr = "invalid stack off=-79992 size=8",
.errstr_unpriv = "R1 stack pointer arithmetic goes out of range",
}, },
{ {
"PTR_TO_STACK store/load - out of bounds high", "PTR_TO_STACK store/load - out of bounds high",
...@@ -2243,6 +2244,8 @@ static struct bpf_test tests[] = { ...@@ -2243,6 +2244,8 @@ static struct bpf_test tests[] = {
BPF_EXIT_INSN(), BPF_EXIT_INSN(),
}, },
.result = ACCEPT, .result = ACCEPT,
.result_unpriv = REJECT,
.errstr_unpriv = "R1 stack pointer arithmetic goes out of range",
}, },
{ {
"unpriv: cmp of stack pointer", "unpriv: cmp of stack pointer",
...@@ -7013,6 +7016,7 @@ static struct bpf_test tests[] = { ...@@ -7013,6 +7016,7 @@ static struct bpf_test tests[] = {
}, },
.fixup_map1 = { 3 }, .fixup_map1 = { 3 },
.errstr = "pointer offset 1073741822", .errstr = "pointer offset 1073741822",
.errstr_unpriv = "R0 pointer arithmetic of map value goes out of range",
.result = REJECT .result = REJECT
}, },
{ {
...@@ -7034,6 +7038,7 @@ static struct bpf_test tests[] = { ...@@ -7034,6 +7038,7 @@ static struct bpf_test tests[] = {
}, },
.fixup_map1 = { 3 }, .fixup_map1 = { 3 },
.errstr = "pointer offset -1073741822", .errstr = "pointer offset -1073741822",
.errstr_unpriv = "R0 pointer arithmetic of map value goes out of range",
.result = REJECT .result = REJECT
}, },
{ {
...@@ -7203,6 +7208,7 @@ static struct bpf_test tests[] = { ...@@ -7203,6 +7208,7 @@ static struct bpf_test tests[] = {
BPF_EXIT_INSN() BPF_EXIT_INSN()
}, },
.errstr = "fp pointer offset 1073741822", .errstr = "fp pointer offset 1073741822",
.errstr_unpriv = "R1 stack pointer arithmetic goes out of range",
.result = REJECT .result = REJECT
}, },
{ {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment