Unrated severityNVD Advisory· Published May 11, 2020· Updated Sep 17, 2024
ARM Platform Uses Signed Integer Comparison When Validating Syscall Numbers
CVE-2020-10024
Description
The arm platform-specific code uses a signed integer comparison when validating system call numbers. An attacker who has obtained code execution within a user thread is able to elevate privileges to that of the kernel. See NCC-ZEP-001 This issue affects: zephyrproject-rtos zephyr version 1.14.0 and later versions. version 2.1.0 and later versions.
Affected products
1- Range: 1.14.0
Patches
36da1361c71a1arch: arm: userspace: fix syscall ID validation
1 file changed · +4 −1
arch/arm/core/swap_helper.S+4 −1 modified@@ -411,7 +411,10 @@ _do_syscall: /* validate syscall limit */ ldr ip, =K_SYSCALL_LIMIT cmp r6, ip - blt valid_syscall_id + /* The supplied syscall_id must be lower than the limit + * (Requires unsigned integer comparison) + */ + blo valid_syscall_id /* bad syscall id. Set arg1 to bad id and set call_id to SYSCALL_BAD */ str r6, [r0, #0]
61fc061fc43btests: kernel: userspace: extend bad syscall-ID test-case
1 file changed · +4 −0
tests/kernel/mem_protect/userspace/src/main.c+4 −0 modified@@ -1112,6 +1112,10 @@ void test_bad_syscall(void) arch_syscall_invoke0(INT_MAX); + expect_fault = true; + expected_reason = K_ERR_KERNEL_OOPS; + + arch_syscall_invoke0(UINT_MAX); } static struct k_sem recycle_sem;
d4f1e731307ftests: kernel: userspace: extend bad syscall-ID test-case
1 file changed · +4 −0
tests/kernel/mem_protect/userspace/src/main.c+4 −0 modified@@ -1083,6 +1083,10 @@ void test_bad_syscall(void) arch_syscall_invoke0(INT_MAX); + expect_fault = true; + expected_reason = K_ERR_KERNEL_OOPS; + + arch_syscall_invoke0(UINT_MAX); } static struct k_sem recycle_sem;
Vulnerability mechanics
Generated by null/stub on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.
References
5- docs.zephyrproject.org/latest/security/vulnerabilities.htmlmitrex_refsource_MISC
- github.com/zephyrproject-rtos/zephyr/pull/23323mitrex_refsource_MISC
- github.com/zephyrproject-rtos/zephyr/pull/23498mitrex_refsource_MISC
- github.com/zephyrproject-rtos/zephyr/pull/23535mitrex_refsource_MISC
- zephyrprojectsec.atlassian.net/browse/ZEPSEC-30mitrex_refsource_MISC
News mentions
0No linked articles in our index yet.