Received: by 10.213.65.68 with SMTP id h4csp510742imn; Wed, 28 Mar 2018 07:45:27 -0700 (PDT) X-Google-Smtp-Source: AIpwx4/rHl2YBLX4VGs9sf1pOJ3lNPSYhwM18UNZbrc2ysl+5/eMJ330M0C+z3RGQ/cFAkkShG67 X-Received: by 10.101.99.213 with SMTP id n21mr2790358pgv.202.1522248327000; Wed, 28 Mar 2018 07:45:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1522248326; cv=none; d=google.com; s=arc-20160816; b=tzFrF2LBPkkBomsyYS8j3gRIOEBhOwTVVNhtvM+4MUkJOnYjaIeaRKyFwlxIN6ENbL CPF+KD8hJrctyFnQnjQLSM7Mt7tgE+OUZIcRuSXy8Jh/cVHXxsNjW9La7naB5bOIiwKG IQih/coLn7rsARhwv4wo2sK0RsVOd6JE8hkxSe6DnWuShBL0nBd47PmRv0yct2DiTtNS GrQ3PMHgkk/qMiwCV1nJayFy1yrpyeylnTm/UzWrc7/fNt+t8icBTRTE2iOLO1NnPome 0Jb72LmhD8tnMGRzdykgzeaUX7AVcH96j2on2qnaFL59Y0/aPBecAnPnJCs4RJVD1UbZ XG/A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-transfer-encoding :spamdiagnosticmetadata:spamdiagnosticoutput:content-language :accept-language:in-reply-to:references:message-id:date:thread-index :thread-topic:subject:cc:to:from:dkim-signature:dkim-signature :arc-authentication-results; bh=VRj/Ilf1n6ZTCPWZ/q0B/KzjYsvjStpCnY6xsYioZbY=; b=XJk/A0V7gfuPnpAQBwA/tSwt85vOHCq7py51ZDwFp/rZZelKgWSQyB++jmwig1hyvB kwNtqihjcvjsbWWNPsH88mb4fF092OdPTIdmwm21Sr4JtN/KEW0rYT2pP+UAyreBKqO+ bMcg0U4Zi1gKvJzBAJZLzPoSVLicqN6xpMd2u/DbgjLdPhMoY8sTB9S0Gg14ugbbmm/i JxF3FOHH+gcvtl/Qjxt6Cc/3vUel6A0BFk75rPCRyTXqPq9uKuGXqMfpsAv7lVUD4HB1 ONMHtP1ba0ZLe5+qVrZHmL+0+gFBfdxM/civnciAqPOEB5PcAIiFsLKUMB5kchNvz6MP B3qA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@ericsson.com header.s=mailgw201801 header.b=JzN4fPbl; dkim=pass header.i=@ericsson.com header.s=selector1 header.b=HyJmGc+G; 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=NONE sp=NONE dis=NONE) header.from=ericsson.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id x12si2930095pfi.181.2018.03.28.07.45.11; Wed, 28 Mar 2018 07:45:26 -0700 (PDT) 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=fail header.i=@ericsson.com header.s=mailgw201801 header.b=JzN4fPbl; dkim=pass header.i=@ericsson.com header.s=selector1 header.b=HyJmGc+G; 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=NONE sp=NONE dis=NONE) header.from=ericsson.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753489AbeC1OmR (ORCPT + 99 others); Wed, 28 Mar 2018 10:42:17 -0400 Received: from sesbmg22.ericsson.net ([193.180.251.48]:48778 "EHLO sesbmg22.ericsson.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752749AbeC1Ol5 (ORCPT ); Wed, 28 Mar 2018 10:41:57 -0400 DKIM-Signature: v=1; a=rsa-sha256; d=ericsson.com; s=mailgw201801; c=relaxed/simple; q=dns/txt; i=@ericsson.com; t=1522248114; h=From:Sender:Reply-To:Subject:Date:Message-ID:To:CC:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=hN4RvUBTa8sH26o6mndeOSyJDh7iy1bUOje0C0xdd70=; b=JzN4fPblDfGyPZ/VBwzlQn7t21fkaEaOqxWiVq287u1xsq3yfyFc991c7mRDl0su ZjJQcOG74sEkRliIS64C97kmggutnCNPfUX7ZyEduq6lLqGEKCKOqWymcHJkj+lL iZqORHZ2ROI8RsZvadDN2oMO4RB8STUj/LdfAQ03J1w=; X-AuditID: c1b4fb30-44bff7000000197d-02-5abba9b2f08b Received: from ESESSHC012.ericsson.se (Unknown_Domain [153.88.183.54]) by sesbmg22.ericsson.net (Symantec Mail Security) with SMTP id 35.00.06525.2B9ABBA5; Wed, 28 Mar 2018 16:41:54 +0200 (CEST) Received: from ESESBMB502.ericsson.se (153.88.183.169) by ESESSHC012.ericsson.se (153.88.183.54) with Microsoft SMTP Server (TLS) id 14.3.382.0; Wed, 28 Mar 2018 16:41:53 +0200 Received: from ESESBMB503.ericsson.se (153.88.183.170) by ESESBMB502.ericsson.se (153.88.183.169) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1034.26; Wed, 28 Mar 2018 16:41:53 +0200 Received: from NAM02-CY1-obe.outbound.protection.outlook.com (153.88.183.157) by ESESBMB503.ericsson.se (153.88.183.170) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1034.26 via Frontend Transport; Wed, 28 Mar 2018 16:41:53 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ericsson.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=VRj/Ilf1n6ZTCPWZ/q0B/KzjYsvjStpCnY6xsYioZbY=; b=HyJmGc+GAfH1bDLLurv1YD+5l8cf87qJTSCt3YMG73yuo/kC9ze9Csf8M2BcWp1zdfkvByowqVU+4MRTisniNGpucXzYG33ON3pJQo3Hw1YzFLCWyrGPLGCiPGnlOGZtzljgyZ2+K+h9DLZ9BUiDmRtFBJiMeaKsTfGbAtMPyTM= Received: from BN6PR15MB1553.namprd15.prod.outlook.com (10.172.152.20) by BN6PR15MB1905.namprd15.prod.outlook.com (10.174.239.141) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.631.10; Wed, 28 Mar 2018 14:41:50 +0000 Received: from BN6PR15MB1553.namprd15.prod.outlook.com ([10.172.152.20]) by BN6PR15MB1553.namprd15.prod.outlook.com ([10.172.152.20]) with mapi id 15.20.0631.010; Wed, 28 Mar 2018 14:41:50 +0000 From: Jon Maloy To: Arnd Bergmann , Ying Xue , "David S. Miller" CC: Parthasarathy Bhuvaragan , "netdev@vger.kernel.org" , "tipc-discussion@lists.sourceforge.net" , "linux-kernel@vger.kernel.org" Subject: RE: [PATCH] tipc: avoid possible string overflow Thread-Topic: [PATCH] tipc: avoid possible string overflow Thread-Index: AQHTxp2NVpY4c8ilWEu176m6nvN3U6Pls/pw Date: Wed, 28 Mar 2018 14:41:50 +0000 Message-ID: References: <20180328140302.2594031-1-arnd@arndb.de> In-Reply-To: <20180328140302.2594031-1-arnd@arndb.de> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=jon.maloy@ericsson.com; x-originating-ip: [192.75.88.130] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1;BN6PR15MB1905;7:sr9SlV2HX7gNoNacOHo+WMNR65oanSARnNoONUfRJbnOSIn15UI7UHLtIoJsUkUNuZ2ikUNso3E8CdOVlSIvka7F9w+m5+L7aXHlPtn0qAVl4rkd54ordeMgLLhWtub1Lou5hoRUfNNDE0kk25gcvSSgmpIbJxeGnnnf4PU4f91BD66HmvpTaSftnx2MwsNgnujUpAVCcqfBpx6FmItxObPFsjcagjCVWZx0KorUKpUPV7d01z/UsPsjgNU+yWy2 x-ms-exchange-antispam-srfa-diagnostics: SOS; x-ms-office365-filtering-correlation-id: 99078834-373b-4d30-46b0-08d594ba0ad0 x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:(7020095)(4652020)(5600026)(4604075)(3008032)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020);SRVR:BN6PR15MB1905; x-ms-traffictypediagnostic: BN6PR15MB1905: x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(37575265505322)(143289334528602)(9452136761055)(42262312472803)(211171220733660); x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(10201501046)(3231221)(944501327)(52105095)(93006095)(93001095)(6041310)(20161123564045)(20161123562045)(20161123558120)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);SRVR:BN6PR15MB1905;BCL:0;PCL:0;RULEID:;SRVR:BN6PR15MB1905; x-forefront-prvs: 06259BA5A2 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(39860400002)(396003)(366004)(376002)(39380400002)(346002)(13464003)(199004)(189003)(25786009)(14454004)(110136005)(2900100001)(229853002)(54906003)(316002)(478600001)(2906002)(33656002)(8936002)(8676002)(55016002)(66066001)(53936002)(9686003)(81166006)(81156014)(6436002)(5660300001)(97736004)(105586002)(4326008)(7736002)(74316002)(6246003)(3280700002)(3660700001)(7696005)(77096007)(26005)(186003)(305945005)(6506007)(59450400001)(53546011)(76176011)(486005)(102836004)(486005)(476003)(11346002)(106356001)(575784001)(86362001)(3846002)(446003)(68736007)(99286004)(6116002);DIR:OUT;SFP:1101;SCL:1;SRVR:BN6PR15MB1905;H:BN6PR15MB1553.namprd15.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; received-spf: None (protection.outlook.com: ericsson.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: ncWHt8zlLDJyyIYSxvy3jj7Dm74t//W/xh8RdKxcKed9B8eamrBwMk5zrIQQgBhEZxcnNKPyiGHofy1PGOHNNbo5xHPT4tDh0TuB5nVgZ3s5IBKoqqQu9c7OzkG2f84C+DRSsu9ZWfWBy3Y5/7C5ZwO+0j3J7EaNclI9g8HqmbODWG0KzKqhglT+KP+J/Pz9qhMlwLYoienEc1KuWrTbiOcIe5ih9cBDnY1G7wC5B79AoRxdPnZ6F4wCL8txNhlaGv6r6kzaQ/s5ljJWNIs5vd8xX69G8A0sl295Q+QIqvmWSIhMmaOUgMt18/pTYO3d7dkOcG/W7392nShykWpftA== spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 99078834-373b-4d30-46b0-08d594ba0ad0 X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Mar 2018 14:41:50.8532 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 92e84ceb-fbfd-47ab-be52-080c6b87953f X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR15MB1905 X-OriginatorOrg: ericsson.com X-Brightmail-Tracker: H4sIAAAAAAAAA02Sa0hTYRjHe8/Z5XgZvS6dD1pJi2A5r0Nrht2oYB9ShKC8RDn1oDbdxqaW CaFUECpW3sJlOUuFiWjqLHOBTebKC4mXkIwmoeKt0jQyEiPPzoK+/Z7n/3/e58JLkcKnXD8q U51D69TKLDHPnVMT/+JQcIfJkhjWvxEg3yq38+W1I7c48vGeWp7cbhTJzSNX5DOTk+QJnmLz dzlSmE0fCIXFuE4o1jv2KtrMXUQcN9E9Oo3OysyjdaHHkt0zXnbM8bUO0bUe+zAqRE3CYuRG AY6A5Yd2VIzcKSG2ISibqSbYwIxgsOynS9lAYHyyxGdKhLiRgNWbyYzAwWsEGOZK+KyrgoCN 6XeuwI6gq8zkLOFhCSxW30EMe2MNjBU3OU0kvkvAwI96khF24SiYrvy8LVDbpiPQ/1rGogw2 F2IYBwcfgEeOfh7DAnwR7IZRHjtRBHRN1Dmfd8ORMF8x5GyLsAg2BlsIhknsC1OzdQS7NIaG VyMkyz6wOPOHy7RCOAGG5hLY9D6wdj/jsrwHxupKnJcAbCagsLPdVRsMq1VVLo4B6/AAlzW9 RWD7YnYJgdA+YSOZBoBV8KbxKosFUDbseQ+FG/6bjuUgMFrWeCxLoal+mTQ4N/aCgZpZjhFx mpGPntanZKfLZCG0LjNVr9eoQ9R0Tgfa/jpW82ZYN1qcP9mHMIXEnoLi+5ZEIVeZp8/P7kNA kWJvwYpkOyVIU+Zfp3Way7rcLFrfh/wpjthXII/tTBTidGUOraJpLa37pxKUm18hurAk0B48 m9Ks0kxHVgo+fi04nl3KUy84OkW/4pYLRt9XGnbmSk2t1UdbZb3npeagpBVS4RN7w6YJ8OrN EAU9l15qSw0xLawItXSvpEGyI3kxqXTKY35/KDfDQ9lSVKTKU3me2Tr1beTxp3OOgsNtAdbx 6N234+cfnC4XRX33l4o5+gxleCCp0yv/ApVpKZo2AwAA Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org > -----Original Message----- > From: Arnd Bergmann [mailto:arnd@arndb.de] > Sent: Wednesday, March 28, 2018 10:02 > To: Jon Maloy ; Ying Xue > ; David S. Miller > Cc: Arnd Bergmann ; Parthasarathy Bhuvaragan > ; netdev@vger.kernel.org; tipc- > discussion@lists.sourceforge.net; linux-kernel@vger.kernel.org > Subject: [PATCH] tipc: avoid possible string overflow >=20 > gcc points out that the combined length of the fixed-length inputs to > l->name is larger than the destination buffer size: >=20 > net/tipc/link.c: In function 'tipc_link_create': > net/tipc/link.c:465:26: error: '%s' directive writing up to 32 bytes into= a region > of size between 26 and 58 [-Werror=3Dformat-overflow=3D] > sprintf(l->name, "%s:%s-%s:unknown", self_str, if_name, peer_str); > ^~ ~~~~~~~~ > net/tipc/link.c:465:2: note: 'sprintf' output 11 or more bytes (assuming = 75) > into a destination of size 60 > sprintf(l->name, "%s:%s-%s:unknown", self_str, if_name, peer_str); >=20 > Using snprintf() ensures that the destination is still a nul-terminated s= tring in > all cases. It's still theoretically possible that the string gets truncta= ted though, > so this patch should be carefully reviewed to ensure that either truncati= on is > impossible in practice, or that we're ok with the truncation. Theoretically, maximum bearer name is MAX_BEARER_NAME - 3 =3D 29 (because= if_name is only the part after the ":" in a bearer name, and is zero-term= inated. The lines just above in the code reveals that the maximum length of self_st= r and peer_str is 16. This taken together means that the theoretically max length of a link name = becomes: 16 + 1 + 29 + 1 + 16 + 1 + 29 =3D 93. Since we also need room for a termi= nating zero, we need to extend the tipc_link::name array to 96 bytes. I'll fix that. Thank you to for reporting this. ///jon >=20 > Fixes: 25b0b9c4e835 ("tipc: handle collisions of 32-bit node address hash > values") > Signed-off-by: Arnd Bergmann > --- > net/tipc/link.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) >=20 > diff --git a/net/tipc/link.c b/net/tipc/link.c index 1289b4ba404f..c195ba= 036035 > 100644 > --- a/net/tipc/link.c > +++ b/net/tipc/link.c > @@ -462,7 +462,8 @@ bool tipc_link_create(struct net *net, char *if_name, > int bearer_id, > sprintf(peer_str, "%x", peer); > } > /* Peer i/f name will be completed by reset/activate message */ > - sprintf(l->name, "%s:%s-%s:unknown", self_str, if_name, peer_str); > + snprintf(l->name, sizeof(l->name), "%s:%s-%s:unknown", > + self_str, if_name, peer_str); >=20 > strcpy(l->if_name, if_name); > l->addr =3D peer; > -- > 2.9.0