Thread (42 messages) 42 messages, 3 authors, 2014-08-12

Re: [PATCH RFC v2 net-next 08/16] bpf: add hashtable type of BPF maps

From: Alexei Starovoitov <hidden>
Date: 2014-07-23 21:42:05
Also in: lkml, netdev

On Wed, Jul 23, 2014 at 1:33 PM, Kees Cook [off-list ref] wrote:
quoted
quoted
quoted
+       htab->slab_name = kasprintf(GFP_USER, "bpf_htab_%p", htab);
This leaks a kernel heap memory pointer to userspace. If a unique name
needed, I think map_id should be used instead.
it leaks, how? slabinfo is only available to root.
The same code exists in conntrack:
net/netfilter/nf_conntrack_core.c:1767
Right, in extreme cases, there are system configurations where leaking
addresses even to root can be considered a bug. There are a lot of
these situations in the kernel still, that's true. However, if we can
at all avoid it, I'd really like to avoid adding new ones. Nearly all
the cases of using a memory pointer is for uniqueness concerns, but I
think can already get that from the map_id.
ok. fair enough. I think slab name doesn't have to be unique anymore.
It's used to be a requirement in older kernels. If it is ok to reuse now,
I'll just use the same for all hash-type maps.
Advice from slab expert would be great...
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help