Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp283116ybz; Thu, 23 Apr 2020 23:49:43 -0700 (PDT) X-Google-Smtp-Source: APiQypKvlHub+aycWMt/vsIbxJCnqjdbWeC2ZjBJRGj0/Z77kKgMY+65RQEb3CBKYfKHpPrbXD8s X-Received: by 2002:a17:906:809:: with SMTP id e9mr5638208ejd.81.1587710983177; Thu, 23 Apr 2020 23:49:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587710983; cv=none; d=google.com; s=arc-20160816; b=CdX3ZfDv+k9AO74c6sgDNKWB0xHEidC17oVJ6OzhlRafTwfE7b8LT6bYQarsB1BdKn lAuXkIkjCuaVtRnWwMeZTFoyMLS8FT3UdH4TzCnknitE08C/zjgoVTh/YIm1R/Ax88Df EFH8xakmmVUePC3g7SmgYVDxL6yFa0PHZpQ0s5w5FqqHLqyD31E/9DS9Hht7fi/ymjGU MY7cL21iJiLBW6ADhFJrgKUQjacTHX7oevgunpTKSyR6AcLNAkhZHBUA03nDJvmhaIf3 Gm4cwZumRzTt8y2ujelPuHvzYhtvYKsgbD8BWG3FIzaIUSQVlgiYWg8cx08A/PJjzm/C kGVQ== 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 :content-language:mime-version:user-agent:date:message-id :organization:cc:to:subject:from:ironport-sdr:ironport-sdr; bh=yYNwIBjY5tA6tzG1ZJbyHDc+4l9l3VonDcgiFQHkbso=; b=OliQY0uUC3L7kyCfMr6NIcA214Isz1QGVCgUASYZTDz7Mv+a/dIni693ZJ0bKK/Gua HMvBfuP0F9xewSTv8U8+y0llMj8Ju9X8LfuNQ5tgjQ9++IvVYI71N7my007YBpOIPqoq XwoTqxT/gvL6p6QlrLUNmK16NB/dqgKHzUuvx4rSXCDjUuvw+h9nTRJJuNQzGbew6BtY wR1EfDWthe2zlhjup29QJqQ2s3BKbngRkEPBJAyU1v91dvvlEYqVw6BkmcThnGb1bq2R 3fwEWOiyhGrLwd0/AMj7lQeMCIKfs8v+KVOXQxjA4dvdwpGLhb0AHzx9iHZxjwpWIi7B 1a5Q== 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=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id v21si2526047eja.226.2020.04.23.23.49.20; Thu, 23 Apr 2020 23:49: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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726494AbgDXGpn (ORCPT + 99 others); Fri, 24 Apr 2020 02:45:43 -0400 Received: from mga17.intel.com ([192.55.52.151]:23572 "EHLO mga17.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726072AbgDXGpn (ORCPT ); Fri, 24 Apr 2020 02:45:43 -0400 IronPort-SDR: eSVOhYbpE/RyQWdfBypNZZb8Uo9cSrmR/CJSiUGb7391vDsV+W7a45lnLsHerIcbBpPwpTLLYe qCHFSvLqF7yQ== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Apr 2020 23:45:42 -0700 IronPort-SDR: UFNXNo99gi3xSih5Mq+nRTg6KILpleImFdiu+1kkn0Jnd7ve0e89Sogsrwh6VVH+oGkDfDwL7A p0O+pGedimpg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,310,1583222400"; d="scan'208";a="291465264" Received: from linux.intel.com ([10.54.29.200]) by fmsmga002.fm.intel.com with ESMTP; 23 Apr 2020 23:45:42 -0700 Received: from [10.249.228.69] (abudanko-mobl.ccr.corp.intel.com [10.249.228.69]) by linux.intel.com (Postfix) with ESMTP id 30F71580100; Thu, 23 Apr 2020 23:45:40 -0700 (PDT) From: Alexey Budankov Subject: [PATCH v3 0/3] perf: make Perf tool aware of SELinux access control To: Arnaldo Carvalho de Melo Cc: Jiri Olsa , Namhyung Kim , Alexander Shishkin , Peter Zijlstra , Ingo Molnar , Andi Kleen , linux-kernel , "selinux@vger.kernel.org" , "linux-security-module@vger.kernel.org" Organization: Intel Corp. Message-ID: Date: Fri, 24 Apr 2020 09:45:39 +0300 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Changes in v3: - mention "CAP_PERFMON or CAP_SYS_ADMIN" instead of sole CAP_PERFMON or CAP_SYS_ADMIN capability in the docs and messages to support use case of newer Perf tool on kernel w/o CAP_PERFMON - reverted double new line in "No permission to enable %s event.\n\n" - updated security.txt content with new messages wording v2: https://lore.kernel.org/lkml/66f2975b-4a69-b428-7dc5-d9aa40b3c673@linux.intel.com/ Changes in v2: - implemented minor doc and code changes to substitute CAP_SYS_ADMIN with CAP_PERFMON capability; - introduced Perf doc file with instructions on how to enable and use perf_event LSM hooks for mandatory access control to perf_event_open() syscall; v1: https://lore.kernel.org/lkml/b8a0669e-36e4-a0e8-fd35-3dbd890d2170@linux.intel.com/ repo: git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git perf/core sha1: ee097e8ee56f8867cbbf45fe2a06f6b9e660c39c Extend Perf tool with the check of /sys/fs/selinux/enforce value and notify in case access to perf_event_open() syscall is restricted by the enforced SELinux policy settings. See new added security.txt file for exact steps how the changes look like and how to test the patch set. --- Alexey Budankov (3): perf docs: extend CAP_SYS_ADMIN with CAP_PERFMON where needed perf tool: make Perf tool aware of SELinux access control perf docs: introduce security.txt file to document related issues tools/perf/Documentation/perf-intel-pt.txt | 2 +- tools/perf/Documentation/security.txt | 237 +++++++++++++++++++++ tools/perf/util/cloexec.c | 4 +- tools/perf/util/evsel.c | 39 ++-- 4 files changed, 264 insertions(+), 18 deletions(-) create mode 100644 tools/perf/Documentation/security.txt -- 2.24.1