From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by sourceware.org (Postfix) with ESMTP id 8E5113858D32; Thu, 13 Apr 2023 12:37:40 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 8E5113858D32 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=foss.arm.com Authentication-Results: sourceware.org; spf=none smtp.mailfrom=foss.arm.com Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id BCE51D75; Thu, 13 Apr 2023 05:38:24 -0700 (PDT) Received: from [10.2.78.76] (unknown [10.2.78.76]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 966EF3F73F; Thu, 13 Apr 2023 05:37:39 -0700 (PDT) Message-ID: Date: Thu, 13 Apr 2023 13:37:38 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.9.0 Subject: Re: RFC: Adding a SECURITY.md document to the Binutils Content-Language: en-GB To: Siddhesh Poyarekar , Nick Clifton , Binutils Cc: "gdb@sourceware.org" References: <1c38b926-e003-0e21-e7f1-3d5dbec2aabf@redhat.com> <5b147005-bd28-4cf9-b9e7-479ef02cb1ad@foss.arm.com> <5d044987-39eb-a060-1b2b-9d07b1515e7d@gotplt.org> <73bc480a-a927-2773-8756-50350f76dfbf@gotplt.org> <4ed86e65-0b7f-11d4-8061-2c5d0b1e147e@foss.arm.com> <7b6b10f8-e480-8efa-fbb8-4fc4bf2cf356@gotplt.org> From: Richard Earnshaw In-Reply-To: <7b6b10f8-e480-8efa-fbb8-4fc4bf2cf356@gotplt.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-3487.4 required=5.0 tests=BAYES_00,KAM_DMARC_STATUS,KAM_LAZY_DOMAIN_SECURITY,MEDICAL_SUBJECT,NICE_REPLY_A,SPF_HELO_NONE,SPF_NONE,TXREP autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On 13/04/2023 12:53, Siddhesh Poyarekar wrote: > On 2023-04-13 06:25, Richard Earnshaw wrote: >> So mention of networks reminds me that you don't always need privilege >> escalation to have a security compromise - simply transmitting a file >> to a third party, if that wasn't intended, would be enough. > > None of the tools can guarantee this with untrusted input when executing > as a local user; this is why the last bit of sandboxing to analyze > untrusted input comes in. > >> So I would suggest: >> >> A security bug is one that threatens the security of a system or >> network, or might compromise the security of data stored on it.  In >> the context of GNU Binutils there are two ways in which such bugs >> might occur.  In the first, the programs themselves might be tricked >> into a direct compromise of security.  In the second, the tools might >> introduce > > "Direct compromise of security" is essentially what we're trying to > define more strongly to prevent spurious CVE assignments. If a user can be tricked into opening a corrupt file (eg object file) and that causes a buffer overflow that's then used to send another file to a third party, you can't really pretend that's not a direct compromise of security. We live in the real world and this sort of threat is real. > >> a vulnerability in the generated output that was not already present >> in the files used as input. >> >> Note: none of the programs in the GNU Binutils suite need elevated >> system privileges (eg setuid) to operate and we recommend that users >> do not use them from accounts where such privileges are automatically >> available. > > We did have CVE-2021-20197, so it's not always setuid. Which is exactly the sort of scenario I was trying to exclude by this statement - don't run the tools with elevated privileges. R. > > Thanks, > Sid