Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp1453998ybl; Sat, 25 Jan 2020 00:51:20 -0800 (PST) X-Google-Smtp-Source: APXvYqy/Qjajgiv/QRtNtgTI20XEP8euPpR4PnDdFqUwMwrTC1X+L+NYv7KLFhrSUBMOEfEbtfRG X-Received: by 2002:a05:6830:14c3:: with SMTP id t3mr5543169otq.213.1579942280558; Sat, 25 Jan 2020 00:51:20 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1579942280; cv=none; d=google.com; s=arc-20160816; b=A65dOCajX14iBCZWvniRvItsYWjyEE0U57u4K856XRQ2K9cIc3VX9D1Dszt9UsAATV Q7pgY8+QZNj1fCtTAMVrU5VBhQZuy2ZJbCUzvFpPqkw72Yjdj9HzodITGWUPnvqDIfwZ EG5JRJUbpfjyjQWLbaImRJtg2EZooR63XxAMCTG6wg4QztIqjfNhgUtt4IMItd+fEL8I t4dprdO7+G5DqRGfH6hZHA8xY03LxvR/nM2qcOs3OPz8zWwz4RbSgwNZoKL6o8rNgrrc eyGLUBe0w7sQ7L6c0/FOkzFGcVG73Kf7C4cyo0L8KCcdVeDprrF6x1+NMY0oM4ec7fj9 78UQ== 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:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:dkim-signature; bh=JGAjdva52XclcmBAYiWTp7Sd6GB5NNj9om2nEpGZk4U=; b=OUGcLWFSTrgz0VAa5uYcpz6RAU1SQcedMcK4+0yu1mIR0rOyoW7GeBL7CP3to4BC4X 0aeiYgwiWOIVzOsykGuTG0JIrMgAc+M0ulv64VEfI//UVceu51qdXZtapWeb/t52qmh3 RBXRarcsuVjHRS1pZSoMNEvAYFx9cPQtS7uUGuwQawdfVDYYh/dOTfua+uLwMGBgKuDk fdM/DCK6/z2naiPaSw68S6oAR4PSv7UF56ARUOiiHFcBrrIe5IaMi6ffIw1TNjB+S4Ek DId3hWoopUt1sLF9HJjAJ859t5T9b2n6c1U8vo4HdnCfOsyyKduBsEoq0l4wcjOpgmin gW5g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@cogentembedded-com.20150623.gappssmtp.com header.s=20150623 header.b=aLDSmnkn; 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 a12si1031964oie.87.2020.01.25.00.51.08; Sat, 25 Jan 2020 00:51:20 -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=@cogentembedded-com.20150623.gappssmtp.com header.s=20150623 header.b=aLDSmnkn; 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 S1729126AbgAYItK (ORCPT + 99 others); Sat, 25 Jan 2020 03:49:10 -0500 Received: from mail-lj1-f194.google.com ([209.85.208.194]:41872 "EHLO mail-lj1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726293AbgAYItJ (ORCPT ); Sat, 25 Jan 2020 03:49:09 -0500 Received: by mail-lj1-f194.google.com with SMTP id h23so5248564ljc.8 for ; Sat, 25 Jan 2020 00:49:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cogentembedded-com.20150623.gappssmtp.com; s=20150623; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=JGAjdva52XclcmBAYiWTp7Sd6GB5NNj9om2nEpGZk4U=; b=aLDSmnknhi9UiBMok0kuHJCnAZeY4uhtKYH/X+BORsVDr5YF+JcIFAAry3K+SLxJW9 slQTT3g2gR43PUn5n6+7pN2bDRtM4PQ8g7bQUbMK1erMENPyIZi36xwsGPEoMdIu25Cw YxyoARbdk24rAXOrf8OY6A8FsQ9grxqvMTe2e3q5R55FmenLHXj8UnblpkoOSPC/3ZzI JYSERj5m8SieDB3gs2qxHpS9IQdqqTZ3dL7us3qn8p9PIiBmmpJ7uwPVaigJPvkT3CJY 5z9ApOEs8SBEVmxdjcdmko0TPJ7nrt9VnQVHmyfVMinGmi5Hvbnfsjq8Z8wuayQGQUCR slrg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=JGAjdva52XclcmBAYiWTp7Sd6GB5NNj9om2nEpGZk4U=; b=Jp612DcAxAAlvL5P8Vk1fwjknOgTtLeHvpA8BB8R4Q9MG8R0PZkMc9uK/9hY7JKcRS +M2lbWD9E0aOnv6yMyvACTPDwATkwB+iSugcJB4k4uR1jdfkVeLDKTn+saBiYwRpSXa3 jogJPW/KUlsxWuVNUty1HzInSlAYElacCVr29w5xSsUmUBQ49iLjGL41vTOTYyNPsLdY uxZAN7KBPsjEgPagByfAzuuWsJP0qc3/IAySxPgJiJRlNCroYPhisKVC/DsmI+LVtMMv +a8xnrObbINY8Dv7XXGiB/Td1W394sTip9DuNvZoFfIZnw2iRg8MawBBthRDhxNNP50y kYZg== X-Gm-Message-State: APjAAAXVo9pB8jI2rNa32M1ri5MmR5n8xjrZp85xpe4juU/8E2nRodgR /SX2ysuOdfK/04mZVU3iant0RQ== X-Received: by 2002:a2e:9c85:: with SMTP id x5mr4772403lji.50.1579942147515; Sat, 25 Jan 2020 00:49:07 -0800 (PST) Received: from ?IPv6:2a00:1fa0:4d4:a77b:25e8:958f:2b17:6e20? ([2a00:1fa0:4d4:a77b:25e8:958f:2b17:6e20]) by smtp.gmail.com with ESMTPSA id w71sm5005098lff.0.2020.01.25.00.49.06 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 25 Jan 2020 00:49:06 -0800 (PST) Subject: Re: [PATCH] net: cxgb3_main: Add CAP_NET_ADMIN check to CHELSIO_GET_MEM To: Michael Ellerman , netdev@vger.kernel.org Cc: davem@davemloft.net, linux-kernel@vger.kernel.org, security@kernel.org, ivansprundel@ioactive.com, vishal@chelsio.com References: <20200124094144.15831-1-mpe@ellerman.id.au> From: Sergei Shtylyov Message-ID: <7a7d18d3-8c8d-af05-9aa0-fa54fa0dc0b7@cogentembedded.com> Date: Sat, 25 Jan 2020 11:48:51 +0300 User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1 MIME-Version: 1.0 In-Reply-To: <20200124094144.15831-1-mpe@ellerman.id.au> Content-Type: text/plain; charset=utf-8; format=flowed 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 Hello! On 24.01.2020 12:41, Michael Ellerman wrote: > The cxgb3 driver for "Chelsio T3-based gigabit and 10Gb Ethernet > adapters" implements a custom ioctl as SIOCCHIOCTL/SIOCDEVPRIVATE in > cxgb_extension_ioctl(). > > One of the subcommands of the ioctl is CHELSIO_GET_MEM, which appears > to read memory directly out of the adapter and return it to userspace. > It's not entirely clear what the contents of the adapter memory > contains, but the assumption is that it shouldn't be accessible to all s/contains/is/? Else it sounds tautological. :-) > users. > > So add a CAP_NET_ADMIN check to the CHELSIO_GET_MEM case. Put it after > the is_offload() check, which matches two of the other subcommands in > the same function which also check for is_offload() and CAP_NET_ADMIN. > > Found by Ilja by code inspection, not tested as I don't have the > required hardware. > > Reported-by: Ilja Van Sprundel > Signed-off-by: Michael Ellerman [...] MBR, Sergei