2023-02-16 02:26:49

by Li zeming

[permalink] [raw]
Subject: [PATCH] lkdtm: perms: Increase pointer assignment check

Increase the check after the pointer allocates memory. If these two
functions are used, at least increase some robustness.

Signed-off-by: Li zeming <[email protected]>
---
drivers/misc/lkdtm/perms.c | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/misc/lkdtm/perms.c b/drivers/misc/lkdtm/perms.c
index b93404d65650..a5d8dce5ce49 100644
--- a/drivers/misc/lkdtm/perms.c
+++ b/drivers/misc/lkdtm/perms.c
@@ -180,15 +180,19 @@ static void lkdtm_EXEC_STACK(void)
static void lkdtm_EXEC_KMALLOC(void)
{
u32 *kmalloc_area = kmalloc(EXEC_SIZE, GFP_KERNEL);
- execute_location(kmalloc_area, CODE_WRITE);
- kfree(kmalloc_area);
+ if (kmalloc_area) {
+ execute_location(kmalloc_area, CODE_WRITE);
+ kfree(kmalloc_area);
+ }
}

static void lkdtm_EXEC_VMALLOC(void)
{
u32 *vmalloc_area = vmalloc(EXEC_SIZE);
- execute_location(vmalloc_area, CODE_WRITE);
- vfree(vmalloc_area);
+ if (vmalloc_area) {
+ execute_location(vmalloc_area, CODE_WRITE);
+ vfree(vmalloc_area);
+ }
}

static void lkdtm_EXEC_RODATA(void)
--
2.18.2