Vigil@nce: Linux kernel, denial of service via unix socket
November 2010 by Vigil@nce
This bulletin was written by Vigil@nce : http://vigilance.fr/
SYNTHESIS OF THE VULNERABILITY
A local attacker can use several unix sockets, in order to create a denial of service.
Creation date: 24/11/2010
DESCRIPTION OF THE VULNERABILITY
A program can create different socket types: tcp, udp, unix, etc.
When a program using unix sockets ends, the kernel calls the wait_for_unix_gc() (Garbage Collector) function of the net/unix/garbage.c file, in order to free resources.
However, this function does not call unix_gc() to immediately free resources. When several programs run, the quantity of resources waiting to be freed increases, until all memory is depleted.
A local attacker can therefore use several unix sockets, in order to create a denial of service.
ACCESS TO THE COMPLETE VIGIL@NCE BULLETIN