Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp4025123ybl; Mon, 3 Feb 2020 11:05:13 -0800 (PST) X-Google-Smtp-Source: APXvYqy5iRFEnup2cjr3rA0dqEfah8qCcGLink+9FX9dlwn2H8Ol7eu/GjCDUfCFg9tAhI99Vi+p X-Received: by 2002:a54:488d:: with SMTP id r13mr318088oic.115.1580756713432; Mon, 03 Feb 2020 11:05:13 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1580756713; cv=none; d=google.com; s=arc-20160816; b=Hu0vx0UpY7jLyjcls6VZ8nsBDHz7wtQiv2WyVRbtClduVR3k3NUyY6OJ/XAqrr+iOm RWIu24AUDED4+4vUuYTqU0KqYd/HHq4dd8V6oAIReix2OMklr1cCGqZC3T5G25ngE205 ku8t3rJIx075bKB/bizI0vU2UByenbv0xQYGczNwmw37dDxCPpHi5mdbMNuaONEs3uRa +wxYfxaHWqm2nRf+NPLVr1TjG3lop4L+dS9LMOTvVQWSKdOjCxzzAr/wdoTKRIoQt4/8 n5VtwheHEfIhN9+O3d48qfPkpyNB3AU1ByI7pRPsc4slt1lROrkhXLxOwgii3+lPylhL V8tQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=maOfM9z4ruebLzlXn/IGjx6P03a6FylWLIbXYUIzDKA=; b=CY92oUJyWZMMWWMZ9eZYZT+4NcNHKF5+l/BwySck6Lmvase0wwtpXaGKQeQf4XBbM4 8gZV1AbDn/8/CiJfATegtC5Tt78E/uFOY49L1vh4vfEE4YQUOkT7oZgCbPbnuNpqtaCy 545VUQ3/C1mBC1W9xO/s+KsxcBp0NOdkaObGZeklwa2kbRNnM6tvas/op+t5l+/F7X+t jE8dH33Q1cdj/uPpzxYN+AH8ISQorP+EZzD1gAdVaSajk63gPHQ65bVDRAFp4eMRwD3C pJRmE7M35EJXoEgRVQaGegFOpt8HnvNb+x4Gh/H5Qg4qUk7YPJIK8AMI1cX4etLwLVY5 GuDQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b="HLnj/0Qq"; 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 e23si5740034oii.173.2020.02.03.11.05.00; Mon, 03 Feb 2020 11:05:13 -0800 (PST) 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; dkim=pass header.i=@kernel.org header.s=default header.b="HLnj/0Qq"; 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 S1729658AbgBCQ2s (ORCPT + 99 others); Mon, 3 Feb 2020 11:28:48 -0500 Received: from mail.kernel.org ([198.145.29.99]:40456 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727257AbgBCQ2q (ORCPT ); Mon, 3 Feb 2020 11:28:46 -0500 Received: from localhost (unknown [104.132.45.99]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 1A23C20CC7; Mon, 3 Feb 2020 16:28:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1580747325; bh=ckcf98rypvLsz0Vp0cFslnWN27jANYoCwPDwd2GDQGs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=HLnj/0Qq+TGCNdtcGBHrJePj/sUocPS15p1Q5GyUrErLrPvBck9Gtb3HTo1qIwpgs 6ETaFxOlmdAX8CusAFtT+yJhyB5r3Lejbfkn9WZkuMB5OU39nxisitExkLqWTg7AKY am+d7dFwqmOILMhK0Sl+AMRlVNocZuNVrBzvT4PI= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Herbert Xu , Sasha Levin Subject: [PATCH 4.14 37/89] crypto: pcrypt - Fix user-after-free on module unload Date: Mon, 3 Feb 2020 16:19:22 +0000 Message-Id: <20200203161921.955878030@linuxfoundation.org> X-Mailer: git-send-email 2.25.0 In-Reply-To: <20200203161916.847439465@linuxfoundation.org> References: <20200203161916.847439465@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Herbert Xu [ Upstream commit 07bfd9bdf568a38d9440c607b72342036011f727 ] On module unload of pcrypt we must unregister the crypto algorithms first and then tear down the padata structure. As otherwise the crypto algorithms are still alive and can be used while the padata structure is being freed. Fixes: 5068c7a883d1 ("crypto: pcrypt - Add pcrypt crypto...") Cc: Signed-off-by: Herbert Xu Signed-off-by: Sasha Levin --- crypto/pcrypt.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/crypto/pcrypt.c b/crypto/pcrypt.c index a5718c0a3dc4e..1348541da463a 100644 --- a/crypto/pcrypt.c +++ b/crypto/pcrypt.c @@ -505,11 +505,12 @@ static int __init pcrypt_init(void) static void __exit pcrypt_exit(void) { + crypto_unregister_template(&pcrypt_tmpl); + pcrypt_fini_padata(&pencrypt); pcrypt_fini_padata(&pdecrypt); kset_unregister(pcrypt_kset); - crypto_unregister_template(&pcrypt_tmpl); } module_init(pcrypt_init); -- 2.20.1