Researchers have discovered a serious remote code execution vulnerability in the GNU C Library, also known as glibc.
glibc, the GNU Project’s implementation of the standard library for the C programming language, is a library used in GNU, Linux and other systems that use Linux as the kernel.
The flaw, a stack-based buffer overflow (CVE-2015-7547), was first reported in July 2015 by Robert Holiday of Ciena. Florian Weimer and Carlos O’Donell of Red Hat started assessing the impact of the security hole shortly after it was reported.
Without any knowledge of Holiday’s bug report, a Google engineer also discovered the vulnerability and managed to develop a fully working exploit. The search giant has not released the exploit code, but it has contributed to the development of a patch and a proof-of-concept (PoC) that helps users determine if they are affected.
“The glibc DNS client side resolver is vulnerable to a stack-based buffer overflow when the getaddrinfo() library function is used. Software using this function may be exploited with attacker-controlled domain names, attacker-controlled DNS servers, or through a man-in-the-middle attack,” Google employees wrote in a blog post on Tuesday.
According to the experts, successful exploitation of the vulnerability can lead to remote code execution, but an attacker would first need to bypass ASLR and other mitigations found on the system. Users who cannot apply the patch can follow Google’s recommendations for mitigating potential attacks.
The vulnerability, which has affected glibc since the release of version 2.9 in 2008, has been assigned an importance rating of “P2 normal” (i.e. second most important priority and normal severity).
Just over one year ago, researchers disclosed the existence of another severe glibc vulnerability (CVE-2015-0235). The issue, dubbed “GHOST,” was said to affect Linux systems as far back as 2000.