Exploiting uses of uninitialized stack variables in linux kernels to leak kernel pointers

Haehyun Cho, Jinbum Park, Joonwon Kang, Tiffany Bao, Ruoyu Wang, Yan Shoshitaishvili, Adam Doupé, Gail Joon Ahn

Research output: Contribution to conferencePaperpeer-review

Abstract

Information leaks are the most prevalent type of vulnerabilities among all known vulnerabilities in Linux kernel. Many of them are caused by the use of uninitialized variables or data structures. It is generally believed that the majority of information leaks in Linux kernel are low-risk and do not have severe impact due to the difficulty (or even the impossibility) of exploitation. As a result, developers and security analysts do not pay enough attention to mitigating these vulnerabilities. Consequently, these vulnerabilities are usually assigned low CVSS scores or without any CVEs assigned. Moreover, many patches that address uninitialized data use bugs in Linux kernel are not accepted, leaving billions of Linux systems vulnerable. Nonetheless, information leak vulnerabilities in Linux kernel are not as low-risk as people believe. In this paper, we present a generic approach that converts stack-based information leaks in Linux kernel into kernel-pointer leaks, which can be used to defeat modern security defenses such as KASLR. Taking an exploit that triggers an information leak in Linux kernel, our approach automatically converts it into a highly impactful exploit that leaks pointers to either kernel functions or the kernel stack. We evaluate our approach on four known CVEs and one security patch in Linux kernel and demonstrate its effectiveness. Our findings provide solid evidence for Linux kernel developers and security analysts to treat information leaks in Linux kernel more seriously.

Original languageEnglish (US)
StatePublished - 2020
Event14th USENIX Workshop on Offensive Technologies, WOOT 2020, co-located with USENIX Security 2020 - Vitual, Online
Duration: Apr 11 2020 → …

Conference

Conference14th USENIX Workshop on Offensive Technologies, WOOT 2020, co-located with USENIX Security 2020
CityVitual, Online
Period4/11/20 → …

ASJC Scopus subject areas

  • Computer Networks and Communications
  • Hardware and Architecture
  • Information Systems
  • Software

Fingerprint Dive into the research topics of 'Exploiting uses of uninitialized stack variables in linux kernels to leak kernel pointers'. Together they form a unique fingerprint.

Cite this