The Linux kernel now more secure than ever
August 20, 2010
After more than five years after a critical security flaw was discovered in the Linux kernel, it has finally been purged of a privilege-escalation vulnerability that allowed untrusted local users to gain unfettered rights to the operating system's most secure locations.
Linux kernel maintainers of the central Linux repositary issued a security fix last week that completely removed the security hole.
While Linux afficionados stopped short of declaring it a security vulnerability, they stressed that the patch should be installed as soon as possible.
The security vulnerability was described as long ago as April 2005 by researcher Gael Delalleu, but it remained largely overlooked until Rafal Wojtczuk, a researcher at Invisible Things Lab, started investigating related security issues.
In a paper published August 17, Wojtczuk outlined a method that exploits the underlying security flaw using the Xorg server, which is instrumental in providing graphical user interface functions in Linux and is also referred to as the X server.
The RAM memory corruption flaw stems from two memory regions of the X server that grow in opposite directions in the address space, an attribute inherited from the x86 architecture designed by Intel. Potential hackers can force the two regions to collide, causing critical control data to be replaced with values that allow the X server to be hijacked, and very easily in some remote cases.
The security bulletin accompanying the Linux kernel fix described the implementation of “a guard page below a grow-down stack segment.”
“One very important aspect the attack demonstrates, is how difficult it is to bring security to a desktop platform, where one of the biggest challenges is to let applications talk to the GUI layer (e.g., the X server in the case of Linux), which usually involves a very fat GUI protocol (think X protocol, or Win32 GUI API) and a very complex GUI server, but at the same time keep things secure,” Joanna Rutkowska, a fellow security researcher at Invisible Things Lab blogged.
It's a fairly exotic exploit, and can only be used locally, unless combined with an unrelated vulnerability. But its ability to remain unrepaired in the kernel for more than five years challenges the very contention among many Linux promoters that the open-source platform is more secure because anyone can examine its source code.
The lesson here is that the ability to do so doesn't guarantee that anyone will, even when they have the kind of generous guidance provided by Delalleu.
Some Linux distributions appear to have issued updates that closed the hole, but not all of them did. SUSE Enterprise versions 9, 10, and 11 and some versions of openSUSE aren't vulnerable though, according to H-Security, which said the SUSE security team issued a fix for the issue as early as October 2004.
Even if it took five years to fix, it's refreshing to know that the security hole has been removed for good. Some will ask why did it take so long to fix in the first place. Well, as they say, nothing's perfect, not even Linux.
You can link to the Internet Security web site as much as you like.