Thread (4 messages) flat view 4 messages, 3 authors, 2012-09-18

Re: [PATCH] xfrm_user: return error pointer instead of NULL

From: Mathias Krause <hidden>
Date: 2012-09-17 20:15:36
Also in: lkml

On Mon, Sep 17, 2012 at 9:16 AM, Steffen Klassert
[off-list ref] wrote:
On Thu, Sep 13, 2012 at 11:41:26PM +0200, Mathias Krause wrote:
quoted
When dump_one_state() returns an error, e.g. because of a too small
buffer to dump the whole xfrm state, xfrm_state_netlink() returns NULL
instead of an error pointer. But its callers expect an error pointer
and therefore continue to operate on a NULL skbuff.

This could lead to a privilege escalation (execution of user code in
kernel context) if the attacker has CAP_NET_ADMIN and is able to map
address 0.
Or it simply crashes with a NULL pointer dereference.
..while holding the xfrm_cfg_mutex, therefore effectively disabling
the XFRM netlink interface. So it's at least a DOS in that case ;)

Regards,
Mathias
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help