Re: [RFC PATCH 1/1] net: kcm: Use sk_psock size for kcm_psock_cache

From: Jakub Kicinski
Date: Wed Jul 13 2022 - 14:16:46 EST


On Wed, 13 Jul 2022 12:32:04 +0600 Khalid Masum wrote:
> `struct sock` has a member `sk_user_data`, which got its memory allocated
> in `kcm_attach` by `kcm_psock_cache` with the size of `kcm_psock`. Which
> is not enough when the member is used as `sk_psock` causing out of bound
> read.
>
> Use `sk_psock` size to allocate memory instead for `sk_user_data`.
>
> Reported-by: syzbot+1fa91bcd05206ff8cbb5@xxxxxxxxxxxxxxxxxxxxxxxxx
> Signed-off-by: Khalid Masum <khalid.masum.92@xxxxxxxxx>

Odd CC list, it looks like a netdev problem but netdev@ is not copied.

We had an other parson looking at this on netdev. Is this happening
when legit kernel socket gets mixed with BPF sockmap?

Does this fix work?

https://lore.kernel.org/netdev/165030056960.5073.6664402939918720250.stgit@xxxxxxxxxxxxxxxxxxxx/