lkml.org 
[lkml]   [2022]   [Aug]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.18 0099/1095] ksmbd: fix memory leak in smb2_handle_negotiate
    Date
    From: Namjae Jeon <linkinjeon@kernel.org>

    commit aa7253c2393f6dcd6a1468b0792f6da76edad917 upstream.

    The allocated memory didn't free under an error
    path in smb2_handle_negotiate().

    Fixes: e2f34481b24d ("cifsd: add server-side procedures for SMB3")
    Cc: stable@vger.kernel.org
    Reported-by: zdi-disclosures@trendmicro.com # ZDI-CAN-17815
    Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
    Reviewed-by: Hyunchul Lee <hyc.lee@gmail.com>
    Signed-off-by: Steve French <stfrench@microsoft.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    fs/ksmbd/smb2pdu.c | 4 ++++
    1 file changed, 4 insertions(+)

    --- a/fs/ksmbd/smb2pdu.c
    +++ b/fs/ksmbd/smb2pdu.c
    @@ -1139,12 +1139,16 @@ int smb2_handle_negotiate(struct ksmbd_w
    status);
    rsp->hdr.Status = status;
    rc = -EINVAL;
    + kfree(conn->preauth_info);
    + conn->preauth_info = NULL;
    goto err_out;
    }

    rc = init_smb3_11_server(conn);
    if (rc < 0) {
    rsp->hdr.Status = STATUS_INVALID_PARAMETER;
    + kfree(conn->preauth_info);
    + conn->preauth_info = NULL;
    goto err_out;
    }


    \
     
     \ /
      Last update: 2022-08-15 22:28    [W:2.972 / U:0.308 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site