Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp3715664ybz; Mon, 27 Apr 2020 22:07:43 -0700 (PDT) X-Google-Smtp-Source: APiQypK2eT4MnCVdZ4PfIhnSyhl9HDsxD3eYReCgvO3BKgKyxrIJlyWgaDDSg92if/cb1tO4niw6 X-Received: by 2002:a17:906:ce4b:: with SMTP id se11mr24044334ejb.178.1588050463766; Mon, 27 Apr 2020 22:07:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1588050463; cv=none; d=google.com; s=arc-20160816; b=ExCcBbrSVXcyidLMlLMpq5ukTq55cVUFxaekSP8qjMrjivysO30Uzpd6uqqEfk7ski WpeYRaxNFHvOoC8JF3RZWOJXyoCRA6Nl6Rwo1uaFhusRI5aGpJN/hUW0OS2QQYMGYWRw LxppA2GHmxoCglDoP25WxAgPk0iGUoVf0xVIugZ3F8qocbtCrUkKQr40lQRt/4eG3KEg x6cU6ojBZV1EQ30U82MsEsaiUula+eGOulDi5OaEgtSGarnV6iCsZz2HW42d/8Kobxms qCqyD6HzIoOdNuVnorziZHIj26/k33EdWC7nNMjyFXnrSOe7OfyHA0SMUaapKkJ8phtP VTOQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from; bh=EzmoHalRnxjvyiwGAJ/JyBMAgvJe7idS7wD6ERiqgU4=; b=tbpRogSzfkQIsPBdFAlkuQEvLvMic45rKEy1qN7kIQnvGoguMPOzcxQmMcNqjguBkV 9fozOKVYE/rsgBjWV9wYGgkI8eWcbQARHw44jakI/btg2PwDtqjmU9XgqSklfto5YWpK YYEvqD6hWh0MaQ/Pcxj3zCdY4NPBW7NME9lk/6rVU95cBos2aW/6PBB0aA7kamGxxmVa tWYcj5qaqFAxRcVSEsKHo3oOWun1cT67VvnRsNoK51GdZoHibeGvWyHlkMiR7d97bZvr IFUGFFjW9PulDh2p33CqqkRUcw4ttvyI+LXNi2vkV+XVb3Xrs0uzmaP5cToondEHK2BF o90A== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=alibaba.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id g14si1036499ejo.108.2020.04.27.22.07.21; Mon, 27 Apr 2020 22:07:43 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=alibaba.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726291AbgD1FF1 (ORCPT + 99 others); Tue, 28 Apr 2020 01:05:27 -0400 Received: from out30-54.freemail.mail.aliyun.com ([115.124.30.54]:53195 "EHLO out30-54.freemail.mail.aliyun.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726042AbgD1FF1 (ORCPT ); Tue, 28 Apr 2020 01:05:27 -0400 X-Alimail-AntiSpam: AC=PASS;BC=-1|-1;BR=01201311R691e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=e01e01358;MF=tianjia.zhang@linux.alibaba.com;NM=1;PH=DS;RN=12;SR=0;TI=SMTPD_---0TwvHWrt_1588050323; Received: from localhost(mailfrom:tianjia.zhang@linux.alibaba.com fp:SMTPD_---0TwvHWrt_1588050323) by smtp.aliyun-inc.com(127.0.0.1); Tue, 28 Apr 2020 13:05:24 +0800 From: Tianjia Zhang To: jeyu@kernel.org, corbet@lwn.net, rdunlap@infradead.org, mchehab+samsung@kernel.org, tglx@linutronix.de, akpm@linux-foundation.org, gregkh@linuxfoundation.org, pawan.kumar.gupta@linux.intel.com, jgross@suse.com Cc: linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, tianjia.zhang@linux.alibaba.com Subject: [PATCH v2] module: Allow to disable modsign in kernel cmdline Date: Tue, 28 Apr 2020 13:05:23 +0800 Message-Id: <20200428050523.47253-1-tianjia.zhang@linux.alibaba.com> X-Mailer: git-send-email 2.17.1 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This option allows to disable modsign completely at the beginning, and turn off by set the kernel cmdline `no_modsig_enforce` when `CONFIG_MODULE_SIG_FORCE` is enabled. Yet another change allows to always show the current status of modsign through `/sys/module/module/parameters/sig_enforce`. Signed-off-by: Jia Zhang Signed-off-by: Tianjia Zhang --- Documentation/admin-guide/kernel-parameters.txt | 6 ++++++ kernel/module.c | 8 ++++++++ 2 files changed, 14 insertions(+) diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt index 7bc83f3d9bdf..00ed7566959f 100644 --- a/Documentation/admin-guide/kernel-parameters.txt +++ b/Documentation/admin-guide/kernel-parameters.txt @@ -3190,6 +3190,12 @@ noirqdebug [X86-32] Disables the code which attempts to detect and disable unhandled interrupt sources. + no_modsig_enforce + [KNL] When CONFIG_MODULE_SIG_FORCE is set, this option + allows to disable modsign completely at the beginning. + This means that modules without (valid) signatures will + success to load. + no_timer_check [X86,APIC] Disables the code which tests for broken timer IRQ sources. diff --git a/kernel/module.c b/kernel/module.c index 646f1e2330d2..0e68e1286377 100644 --- a/kernel/module.c +++ b/kernel/module.c @@ -269,6 +269,14 @@ static void module_assert_mutex_or_preempt(void) static bool sig_enforce = IS_ENABLED(CONFIG_MODULE_SIG_FORCE); module_param(sig_enforce, bool_enable_only, 0644); +#ifdef CONFIG_MODULE_SIG_FORCE +static int __init set_no_modsig_enforce(char *str) +{ + sig_enforce = false; + return 1; +} +__setup("no_modsig_enforce", set_no_modsig_enforce); +#endif /* !CONFIG_MODULE_SIG_FORCE */ /* * Export sig_enforce kernel cmdline parameter to allow other subsystems rely -- 2.17.1