userspace: Additional checks in K_SYSCALL_MEMORY
This macros needed additional checks before invoking
arch_buffer_validate.
- size can not be less then 0. Some functions invoke this macro
using signed type which will be promote to unsigned when invoking
arch_buffer_validate. We need to do an early check.
- We need to check for possible overflow, since a malicious user
application could use a negative number that would be promoted
to a big value that would cause a integer overflow when adding it
to the buffer address, leading to invalid checks.
Signed-off-by:
Flavio Ceolin <flavio.ceolin@intel.com>
Loading
Please sign in to comment