lkml.org 
[lkml]   [2018]   [Jul]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH] audit: fix potential null dereference 'context->module.name'
    Date
    The variable 'context->module.name' may be null pointer when
    kmalloc return null, so it's better to check it before using
    to avoid null dereference.

    Signed-off-by: Yi Wang <wang.yi59@zte.com.cn>
    Reviewed-by: Jiang Biao <jiang.biao2@zte.com.cn>
    ---
    kernel/auditsc.c | 11 ++++++++---
    1 file changed, 8 insertions(+), 3 deletions(-)

    diff --git a/kernel/auditsc.c b/kernel/auditsc.c
    index e80459f..4830b83 100644
    --- a/kernel/auditsc.c
    +++ b/kernel/auditsc.c
    @@ -1272,8 +1272,12 @@ static void show_special(struct audit_context *context, int *call_panic)
    break;
    case AUDIT_KERN_MODULE:
    audit_log_format(ab, "name=");
    - audit_log_untrustedstring(ab, context->module.name);
    - kfree(context->module.name);
    + if (context->module.name) {
    + audit_log_untrustedstring(ab, context->module.name);
    + kfree(context->module.name);
    + } else
    + audit_log_format(ab, "(null)");
    +
    break;
    }
    audit_log_end(ab);
    @@ -2409,7 +2413,8 @@ void __audit_log_kern_module(char *name)
    struct audit_context *context = current->audit_context;

    context->module.name = kmalloc(strlen(name) + 1, GFP_KERNEL);
    - strcpy(context->module.name, name);
    + if (context->module.name)
    + strcpy(context->module.name, name);
    context->type = AUDIT_KERN_MODULE;
    }

    --
    1.8.3.1
    \
     
     \ /
      Last update: 2018-07-24 07:59    [W:5.305 / U:0.032 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site