Received: by 10.192.165.156 with SMTP id m28csp1149517imm; Wed, 11 Apr 2018 13:22:14 -0700 (PDT) X-Google-Smtp-Source: AIpwx48j5RbkUlU1nakvQPli2QiSGKMxli2tJiNT25FOsm9orhhI2Zenm5nOsD2VV0rg4RC5q7qo X-Received: by 10.101.73.207 with SMTP id t15mr4583080pgs.204.1523478134850; Wed, 11 Apr 2018 13:22:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1523478134; cv=none; d=google.com; s=arc-20160816; b=gtj/pYJjiz+oMno+Si2fHsT62vbWupjEbauVIcS3fgucRD07DCFehYII+xXvXMbrG1 ZVlIyTB7lOYyh6a7qgapXaKxvpEJ1j+tpAOXp9oDgH61DImrjcOziPST/h08l54BZm+N ZlzQKRppB14JJhN2epSUOSk5bjFp0ssGrCM4fIdZ0tqjJUNsVLf9deehomETAYkXjLSB gm6oj16HyYKGfSO5kATk2BlKBGjFGZCs+mk4OZzXJhTxtjtrNV7Mn/iHUusq2Vr8WX5f T6GYeQiVGLPpBe1VRvSLgsx8Sc6DXCZPFC5As8SuSszzlAveUi30Tnwi6AebTh1pCxqA CPjw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:references :in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=RoCQvQ5KhxrUGsOV7hLWHKNXmSah3TrfaBoBowvf13Q=; b=QpEUMhOCUwPuTmHNngzPdB7XLAmNBCHSBROwSb4gBov/K0Z8hmJUJVlHkdJYxBDcPJ 4/MTo9ErL7zB8KJFP4kG5eWU+GY+YjkMivSDedxcKKgA2ZMVoHTxJm+/ilEi+kqsqqPV TK2pxBy35l56/tN3EE4eU1uwKDYlLsr8h2AhzbW74eDk1Hg/CzbdkOgEvooDhRz6GxQn YfHpmYu3deiiDIluodU3YEHKKU6prLX/FoJCbXz4tqzDp/OAoQwVTMseR196GSqjPfLT lwYfVKKLDf03D9E/2sbGyvPHgpmQRZCogRqAACFAtU2571AtQKRby5JLh6LiTEsIvQbL gIMg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id i129si1164554pgd.206.2018.04.11.13.21.38; Wed, 11 Apr 2018 13:22:14 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933197AbeDKSxC (ORCPT + 99 others); Wed, 11 Apr 2018 14:53:02 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:33590 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933172AbeDKSw6 (ORCPT ); Wed, 11 Apr 2018 14:52:58 -0400 Received: from localhost (LFbn-1-12247-202.w90-92.abo.wanadoo.fr [90.92.61.202]) by mail.linuxfoundation.org (Postfix) with ESMTPSA id EBB8EE93; Wed, 11 Apr 2018 18:52:57 +0000 (UTC) From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Daniel Micay , Kees Cook , "David S. Miller" , Sasha Levin Subject: [PATCH 4.9 015/310] qlge: Avoid reading past end of buffer Date: Wed, 11 Apr 2018 20:32:34 +0200 Message-Id: <20180411183622.956960719@linuxfoundation.org> X-Mailer: git-send-email 2.17.0 In-Reply-To: <20180411183622.305902791@linuxfoundation.org> References: <20180411183622.305902791@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.9-stable review patch. If anyone has any objections, please let me know. ------------------ From: Kees Cook [ Upstream commit df5303a8aa9a0a6934f4cea7427f1edf771f21c2 ] Using memcpy() from a string that is shorter than the length copied means the destination buffer is being filled with arbitrary data from the kernel rodata segment. Instead, use strncpy() which will fill the trailing bytes with zeros. This was found with the future CONFIG_FORTIFY_SOURCE feature. Cc: Daniel Micay Signed-off-by: Kees Cook Signed-off-by: David S. Miller Signed-off-by: Sasha Levin Signed-off-by: Greg Kroah-Hartman --- drivers/net/ethernet/qlogic/qlge/qlge_dbg.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) --- a/drivers/net/ethernet/qlogic/qlge/qlge_dbg.c +++ b/drivers/net/ethernet/qlogic/qlge/qlge_dbg.c @@ -765,7 +765,7 @@ int ql_core_dump(struct ql_adapter *qdev sizeof(struct mpi_coredump_global_header); mpi_coredump->mpi_global_header.imageSize = sizeof(struct ql_mpi_coredump); - memcpy(mpi_coredump->mpi_global_header.idString, "MPI Coredump", + strncpy(mpi_coredump->mpi_global_header.idString, "MPI Coredump", sizeof(mpi_coredump->mpi_global_header.idString)); /* Get generic NIC reg dump */ @@ -1255,7 +1255,7 @@ static void ql_gen_reg_dump(struct ql_ad sizeof(struct mpi_coredump_global_header); mpi_coredump->mpi_global_header.imageSize = sizeof(struct ql_reg_dump); - memcpy(mpi_coredump->mpi_global_header.idString, "MPI Coredump", + strncpy(mpi_coredump->mpi_global_header.idString, "MPI Coredump", sizeof(mpi_coredump->mpi_global_header.idString));