Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp997242ybt; Fri, 19 Jun 2020 21:03:04 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzdMvqII9Y7oBF3pf7Sx1P4YWyThR9mzxtNi9FK29+pDrfZvuHTID47Kz8VBft0+uurd5LR X-Received: by 2002:a17:906:945a:: with SMTP id z26mr6774671ejx.448.1592625784340; Fri, 19 Jun 2020 21:03:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592625784; cv=none; d=google.com; s=arc-20160816; b=Qg5uIwlq8PISFdztdWbY3YB2p8TNvKm3DtdhGkwPZcgSGfJEN6r/vya6YPHBKfMldz lbeixRgJSeupTXznjm6W7RMSPpXv309jkvIo60CrDQ66vxNqqm4D57iwnKc8dKRO0rxV m07LDfM45l2m3AIOthFZ3ZxoOZcwevV7IzcWAIe8W54SOeDpXKAoT5hcts3nrNyzhbJP 5tQU5x9zGZnnV8FTWVfUGBAscoCCSvsuROyfI5tFjiZuTgr50AGvxeNWgTrGO9yfGOU1 IKVINDn1ndx2WRumAkKVNmvGJgjYnqbf4iSa+TJq/6Rok6phUO7rihA0/tgJG1iENebc O8wQ== 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:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=CzkarxOzAp3wlDM2caXvlBd6jqwrTtoPmvf0dRUeLh0=; b=o6w7Ij2Oq3Ntj8qFgLVYxFCJihNwNhQEbqLrad+BSNhUHdd/gLYuCMp/YuErjk7+KU gGpxDYBdJNdxPeg+PuyIIna84PuNuhiR0WN2eAugHBMjayi2wURy+SW8JEbKmcZ1+Gef 5Yro2qbHTNPX0S5iMWADSA8HwbLlIoEZErTgWfP6yhvl2I59mKo70XzV2TSx02NLvGc8 xo6TTPDMK1H7uNv4nYlfHWw7ty9XmM9H+ep5ThBL7LTU+u4Ch1eiBvPjWt1F7iypoHyI 2awk1mnk6EJQr6vlyV70wbQfpk1z4MVhpbH7OQLHhrJ1RUYg3JVYrzYw+2iHhB1jE+04 lDgA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b="HJs/0WXq"; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id j12si1101957ejy.723.2020.06.19.21.02.42; Fri, 19 Jun 2020 21:03:04 -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=@kernel.org header.s=default header.b="HJs/0WXq"; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2395312AbgFSQhI (ORCPT + 99 others); Fri, 19 Jun 2020 12:37:08 -0400 Received: from mail.kernel.org ([198.145.29.99]:41202 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2389075AbgFSOsq (ORCPT ); Fri, 19 Jun 2020 10:48:46 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id C62A9217A0; Fri, 19 Jun 2020 14:48:45 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1592578126; bh=dRzrmPTneQJ2RejTL0DG0atWQiNUcoX1ztdDbR2Xwcg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=HJs/0WXqpqcz3xSsRbXDUraAdQXopTC2ZRMgnCL+1zPpFe+df3P5sqj1Ac+rjtfoK SnjjmOOzQy2uaBZ2luxkHfWnm6ithLz8yNxJn3lNcsnIH5A+ZK0P2CU+I4rhc7icWg G58POyjj5g3lNhtUIgzDMnUsH5S4GfGXBIAb2fio= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Qiujun Huang , Kalle Valo , syzbot+b1c61e5f11be5782f192@syzkaller.appspotmail.com Subject: [PATCH 4.14 063/190] ath9k: Fix use-after-free Write in ath9k_htc_rx_msg Date: Fri, 19 Jun 2020 16:31:48 +0200 Message-Id: <20200619141636.727318571@linuxfoundation.org> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200619141633.446429600@linuxfoundation.org> References: <20200619141633.446429600@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Qiujun Huang commit e4ff08a4d727146bb6717a39a8d399d834654345 upstream. Write out of slab bounds. We should check epid. The case reported by syzbot: https://lore.kernel.org/linux-usb/0000000000006ac55b05a1c05d72@google.com BUG: KASAN: use-after-free in htc_process_conn_rsp drivers/net/wireless/ath/ath9k/htc_hst.c:131 [inline] BUG: KASAN: use-after-free in ath9k_htc_rx_msg+0xa25/0xaf0 drivers/net/wireless/ath/ath9k/htc_hst.c:443 Write of size 2 at addr ffff8881cea291f0 by task swapper/1/0 Call Trace: htc_process_conn_rsp drivers/net/wireless/ath/ath9k/htc_hst.c:131 [inline] ath9k_htc_rx_msg+0xa25/0xaf0 drivers/net/wireless/ath/ath9k/htc_hst.c:443 ath9k_hif_usb_reg_in_cb+0x1ba/0x630 drivers/net/wireless/ath/ath9k/hif_usb.c:718 __usb_hcd_giveback_urb+0x29a/0x550 drivers/usb/core/hcd.c:1650 usb_hcd_giveback_urb+0x368/0x420 drivers/usb/core/hcd.c:1716 dummy_timer+0x1258/0x32ae drivers/usb/gadget/udc/dummy_hcd.c:1966 call_timer_fn+0x195/0x6f0 kernel/time/timer.c:1404 expire_timers kernel/time/timer.c:1449 [inline] __run_timers kernel/time/timer.c:1773 [inline] __run_timers kernel/time/timer.c:1740 [inline] run_timer_softirq+0x5f9/0x1500 kernel/time/timer.c:1786 Reported-and-tested-by: syzbot+b1c61e5f11be5782f192@syzkaller.appspotmail.com Signed-off-by: Qiujun Huang Signed-off-by: Kalle Valo Link: https://lore.kernel.org/r/20200404041838.10426-4-hqjagain@gmail.com Signed-off-by: Greg Kroah-Hartman --- drivers/net/wireless/ath/ath9k/htc_hst.c | 3 +++ 1 file changed, 3 insertions(+) --- a/drivers/net/wireless/ath/ath9k/htc_hst.c +++ b/drivers/net/wireless/ath/ath9k/htc_hst.c @@ -113,6 +113,9 @@ static void htc_process_conn_rsp(struct if (svc_rspmsg->status == HTC_SERVICE_SUCCESS) { epid = svc_rspmsg->endpoint_id; + if (epid < 0 || epid >= ENDPOINT_MAX) + return; + service_id = be16_to_cpu(svc_rspmsg->service_id); max_msglen = be16_to_cpu(svc_rspmsg->max_msg_len); endpoint = &target->endpoint[epid];