Received: by 2002:ac0:aed5:0:0:0:0:0 with SMTP id t21csp41404imb; Thu, 28 Feb 2019 15:21:28 -0800 (PST) X-Google-Smtp-Source: APXvYqyaVL62PrY8yLnIdwAsZpq8bfaKrDssko9j/+OJW0vZM/cryQLsC0PZOLWZcwy/sHewqUJE X-Received: by 2002:a63:c042:: with SMTP id z2mr1689820pgi.307.1551396088676; Thu, 28 Feb 2019 15:21:28 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1551396088; cv=none; d=google.com; s=arc-20160816; b=j/eUv8/xTViUq3kgFwMnIHcxORw1t+5XMhZOKAF5S1MRX/8ZOGaC0/b895MfPzMUtk d8yTfpzCyNttPtqMZ2fN+L0gJo71I3RYYfB5YIMwwgdZaUiVnXnkZ24dzoezhDB7wKe0 taqHqJnI5w5T4DziLh4DO7L72gXOxewTfVq8PmX5GCZHKHlBx/Vfo9gMnXpxUfYGsI3U 8b+Xamxd3Cl03yiLWFhl5L0arm1JsQrtXKFSLW+vHVtf6bqWUQWUEE9C3yMYpbXO1Yvc kLqm+JiXEEymGIiXypTEj5pcOutFCNKBtbmX+0e6nHnltZFqXA8YOS5HyjydMNI13PiX gp+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:from:subject:references :mime-version:message-id:in-reply-to:date:dkim-signature; bh=lPxhHuM5mKH0BPh+9uIH/O2ZNSFUoc0j+pAFXqN/7ag=; b=FHWCJp6ec0CBVhDSYV1UpwPwA1xXlieoSJEnJ/B5ciYXRj8wX/wDmG5CuiWXSkdeQo qy/ANAxVToOxsVOZxTG0+wYEv2PITZmkneWjRAPE2k6OtAIpQyyyOPO1tYoATvr1Nvg9 cGpfxexXiHAtXtEXpvjmvXPLc1PcyTLghjpkFF36YRDNcTcYC3Ft9v3LFhrZejHjY1Ek HdfFp6Rv7BU50nu6ZqkXKQM1b8m36t6kCJsGz+vtgtideo91VI0NGHTcM5elGvO3HaPs RwMIxtT7MRSQOXINNnkh4n2uwgOXhOHr+57zAQYl5W446asKD8pnjLxNh/lRaEQOFFku beoA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=YuQBXUQb; 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; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id p1si19116491plb.289.2019.02.28.15.21.11; Thu, 28 Feb 2019 15:21:28 -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=@google.com header.s=20161025 header.b=YuQBXUQb; 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; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387931AbfB1XMt (ORCPT + 99 others); Thu, 28 Feb 2019 18:12:49 -0500 Received: from mail-io1-f74.google.com ([209.85.166.74]:50342 "EHLO mail-io1-f74.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387911AbfB1XMr (ORCPT ); Thu, 28 Feb 2019 18:12:47 -0500 Received: by mail-io1-f74.google.com with SMTP id d7so16724884ios.17 for ; Thu, 28 Feb 2019 15:12:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=date:in-reply-to:message-id:mime-version:references:subject:from:to :cc; bh=lPxhHuM5mKH0BPh+9uIH/O2ZNSFUoc0j+pAFXqN/7ag=; b=YuQBXUQbPIWoFplIAUppYybOIHWam8OtfTUAEL8bWFQuH+gK2Lg+nhgjgeyFIg2APu TTsAV6Y4XCcERjl0cOTXY3F0VQ2dTEB6bqnuC/JnNexIojSPRlpvVlXsDf0bVCtPRVA7 yA2PxzrOGbz8bmR43HPwD1Bwp0zb9EagvFpRZS02lKXbannLoupS2Xn7Ze03YF5yOD+s UnTk4Q6ltWm5xg8SYuv56VVEqetoFmedWsteo7Yue+vOt3YMnj49JzcOC0xXxyE87ZE0 LF4vT+KZK9iqZSukgefDut2lWdcm4jIqnlIRtwYZhHrH6/16pJu/FioGP5KT7tQKjwIu D+9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:in-reply-to:message-id:mime-version :references:subject:from:to:cc; bh=lPxhHuM5mKH0BPh+9uIH/O2ZNSFUoc0j+pAFXqN/7ag=; b=RGswkcYodMVPXUnlZWfRHAmYJG+srzsGFavg/3yQJSmx0vy9ri4yybLbQmYcC0Rv1M NDPuxR2Dv+1EQJXYiO+uxPJatwwHoAAwoB+ssjA4OdLYFzXO+/dExH/ZjQiMO1qIIbky 6FfW1WX/LmAQXM6OEX0bQkUC/fjB4ziHETC005O8X/ak7k/qzjB44XvLYLLFKZh0Z8la 2NSE+Jn1MUY8CK+tbLIULNvKsMJlFWeHWeFxLcx1beHWyH3pX2wlDtnD2lzqQvaPKjbC 5Ye8H+4NNk/88JPIT6nLldywiVdnvN6H3CGGkwGBSY1MJwlOhYUj2qq8rxYD8vUJwhd6 ezOA== X-Gm-Message-State: APjAAAWVhG8Jdeth5u6eOhiIIz5+UNgQuhjzcRQdLy0U0AC0ytjKFQo7 exPSeP9Cqx4WzwYKO9JlL4RcxaCN7XFYSeecFfVDHw== X-Received: by 2002:a24:1a17:: with SMTP id 23mr1520953iti.9.1551395566409; Thu, 28 Feb 2019 15:12:46 -0800 (PST) Date: Thu, 28 Feb 2019 15:11:52 -0800 In-Reply-To: <20190228231203.212359-1-matthewgarrett@google.com> Message-Id: <20190228231203.212359-16-matthewgarrett@google.com> Mime-Version: 1.0 References: <20190228231203.212359-1-matthewgarrett@google.com> X-Mailer: git-send-email 2.21.0.352.gf09ad66450-goog Subject: [PATCH 16/27] acpi: Disable ACPI table override if the kernel is locked down From: Matthew Garrett To: jmorris@namei.org Cc: linux-security-module@vger.kernel.org, linux-kernel@vger.kernel.org, dhowells@redhat.com 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 From: Linn Crosetto From the kernel documentation (initrd_table_override.txt): If the ACPI_INITRD_TABLE_OVERRIDE compile option is true, it is possible to override nearly any ACPI table provided by the BIOS with an instrumented, modified one. When securelevel is set, the kernel should disallow any unauthenticated changes to kernel space. ACPI tables contain code invoked by the kernel, so do not allow ACPI tables to be overridden if the kernel is locked down. Signed-off-by: Linn Crosetto Signed-off-by: David Howells Reviewed-by: "Lee, Chun-Yi" cc: linux-acpi@vger.kernel.org --- drivers/acpi/tables.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/acpi/tables.c b/drivers/acpi/tables.c index 48eabb6c2d4f..f3b4117cd8f3 100644 --- a/drivers/acpi/tables.c +++ b/drivers/acpi/tables.c @@ -531,6 +531,11 @@ void __init acpi_table_upgrade(void) if (table_nr == 0) return; + if (kernel_is_locked_down("ACPI table override")) { + pr_notice("kernel is locked down, ignoring table override\n"); + return; + } + acpi_tables_addr = memblock_find_in_range(0, ACPI_TABLE_UPGRADE_MAX_PHYS, all_tables_size, PAGE_SIZE); -- 2.21.0.352.gf09ad66450-goog