[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZXqwP7NscRtE1uGL@francesco-nb.int.toradex.com>
Date: Thu, 14 Dec 2023 08:35:27 +0100
From: Francesco Dolcini <francesco@...cini.it>
To: David Lin <yu-hao.lin@....com>
Cc: Brian Norris <briannorris@...omium.org>,
"linux-wireless@...r.kernel.org" <linux-wireless@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"kvalo@...nel.org" <kvalo@...nel.org>,
"francesco@...cini.it" <francesco@...cini.it>,
Pete Hsieh <tsung-hsien.hsieh@....com>,
"stable@...r.kernel.org" <stable@...r.kernel.org>
Subject: Re: [EXT] Re: [PATCH v2] wifi: mwifiex: fix STA cannot connect to AP
Hello David,
On Thu, Dec 14, 2023 at 02:22:57AM +0000, David Lin wrote:
> > From: Brian Norris <briannorris@...omium.org>
...
> > Nitpick: "fix STA cannot connect to AP" isn't the best commit message; that
> > could describe an enormous number of fixes. Maybe something more like
> > "Configure BSSID consistently when starting AP"?
>
> Thanks for your suggestion. I will change commit message as you
> suggested. Does it mean I should create another patch from v1?
Just create `[PATCH v3] wifi: mwifiex: fix STA cannot connect to AP`
Add the change suggested by Brian and the tags you received on this v2:
- Reviewed-by: Francesco Dolcini <francesco.dolcini@...adex.com>
- Tested-by: Rafael Beims <rafael.beims@...adex.com> # Verdin iMX8MP / SD8997 SD
- Acked-by: Brian Norris <briannorris@...omium.org>
> > Not directly related to this patch, but while you're expanding the size of this
> > command buffer: it always felt like a security-hole-in-waiting that none of
> > these command producers do any kinds of bounds checking.
> > We're just "lucky" that these function only generate contents of ~100 bytes at
> > max, while MWIFIEX_SIZE_OF_CMD_BUFFER=2048. But, just add a few more
> > user-space controlled TLV params, and boom, we'll have ourselves a nice
> > little CVE.
> >
> > It probably wouldn't hurt to significantly write much of this driver, but at a
> > minimum, we could probably use a few checks like this:
> >
> > cmd_size += sizeof(struct host_cmd_tlv_mac_addr);
> > if (cmd_size > MWIFIEX_SIZE_OF_CMD_BUFFER)
> > return -1;
> > // Only touch tlv *after* the bounds check.
> >
> > That doesn't need to block this patch, of course.
> >
> > Brian
> >
>
> I will modify the code for next patch.
I would suggest not modify this in this patch, we should fix all the code that
is subjected to this potential issue.
I would personally do a follow-up patch just to add the check to avoid
overflowing the cmd buffer everywhere it is used.
Francesco
Powered by blists - more mailing lists