Received: by 2002:a05:6a10:1d13:0:0:0:0 with SMTP id pp19csp1007124pxb; Wed, 1 Sep 2021 15:07:40 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzUe616Hwj4rBloO0tjiUGdd4XF2VNYWua1LPWQW9i1P0XL+YnmBycmJGnHDwg3NkLChvv7 X-Received: by 2002:aa7:cf1a:: with SMTP id a26mr124649edy.116.1630534059880; Wed, 01 Sep 2021 15:07:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1630534059; cv=none; d=google.com; s=arc-20160816; b=Nk9UoQL/cSYbX9k8LVV679hvoRZw8V85iXm3jwMdxLiGpvGghjft/eTPQu0koPCE5w cMixJj+PvZAM3OER3E/BJutrVwg7OVyx70rQET6Pf9c//WUJiza6nK8I9SDWol+3k2BJ ji7aeT9SA4KBQSWdt2/HhJj7lVrI6F0BEASHwj7SuFpb6RAtobXXSVT48I22QiuRTdpC pGpbDFfJh8wbzThJGp+LkPi6Dq0wpmLzAZfnjOEbZs+i/k6lmkZVBC66bsAFKVtNJ21V 6INlDfl5ugXBYxMaX0x4WBFDeSgEDlXe8iqegyHbZIls1n82cutGzW5XYLLqLDjYrRut cQOw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=uOb0P8cqDZurxt+bmkGmU9JpOhPW93v2rcS7h64nEBk=; b=RNurSbHKnsaSTUm9WA6yrBqCbZbFdWkd5gq6eapvqE/P68cMWny9I0vtUdI4J1E7B5 ndvFS+thfmQffvsjN6wyK4J6hN6ZqMptWuJMiBpt0qV/4s8am4pC8hu+yzALnE8+GKwg 2lNfCEZWOWkPA+sCR4tsESxeuv5kFqOFZtCyFgsGe3XsbWO1DrDh3oBqDEUxll1IjIzI 1sYwnH9rhHkbjQisx9KgQE6YjjEjjrBK7YkDs+pN1nDkp1p4VjIY4I9cI6Flm2Li3fNY HxGeqT0ZbeHhB+0nE7mZvJ0ZjLA4/a2SP4q/F7qYdO5bfVikoVNyzU5HsCGzRwrsX9xA yfoA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b="tVq/cJxt"; 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=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id l4si15135edc.611.2021.09.01.15.07.05; Wed, 01 Sep 2021 15:07:39 -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; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b="tVq/cJxt"; 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=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1346123AbhIAMtU (ORCPT + 99 others); Wed, 1 Sep 2021 08:49:20 -0400 Received: from mail.kernel.org ([198.145.29.99]:48350 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1345677AbhIAMoz (ORCPT ); Wed, 1 Sep 2021 08:44:55 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 79828610F9; Wed, 1 Sep 2021 12:39:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1630499957; bh=dTsJCAZDOJCYDHAGrT/XoFuf+ypbwnsqUGqkEhSBU+M=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=tVq/cJxtogv7CchCm+SaVZIhfG/rO4ygG+OoslxaVFTP831WKfDRD97gDnGcZggj+ c2YBocdYvzhh6zQF653pLjQmHmGpASGT72lsNlVwRxDq/mhJ1D0bkxoedfBzVmy/SU iCdZckPQv/jruO+j1FcB+t9QjHAPF3bBchWl1ltA= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, syzbot+ff8e1b9f2f36481e2efc@syzkaller.appspotmail.com, Shreyansh Chouhan , Willem de Bruijn , "David S. Miller" , Sasha Levin Subject: [PATCH 5.13 048/113] ip_gre: add validation for csum_start Date: Wed, 1 Sep 2021 14:28:03 +0200 Message-Id: <20210901122303.573563008@linuxfoundation.org> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20210901122301.984263453@linuxfoundation.org> References: <20210901122301.984263453@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Shreyansh Chouhan [ Upstream commit 1d011c4803c72f3907eccfc1ec63caefb852fcbf ] Validate csum_start in gre_handle_offloads before we call _gre_xmit so that we do not crash later when the csum_start value is used in the lco_csum function call. This patch deals with ipv4 code. Fixes: c54419321455 ("GRE: Refactor GRE tunneling code.") Reported-by: syzbot+ff8e1b9f2f36481e2efc@syzkaller.appspotmail.com Signed-off-by: Shreyansh Chouhan Reviewed-by: Willem de Bruijn Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- net/ipv4/ip_gre.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/net/ipv4/ip_gre.c b/net/ipv4/ip_gre.c index a68bf4c6fe9b..ff34cde983d4 100644 --- a/net/ipv4/ip_gre.c +++ b/net/ipv4/ip_gre.c @@ -468,6 +468,8 @@ static void __gre_xmit(struct sk_buff *skb, struct net_device *dev, static int gre_handle_offloads(struct sk_buff *skb, bool csum) { + if (csum && skb_checksum_start(skb) < skb->data) + return -EINVAL; return iptunnel_handle_offloads(skb, csum ? SKB_GSO_GRE_CSUM : SKB_GSO_GRE); } -- 2.30.2