Date of Award
In this paper, we present a working research prototype codeid-elf for ELF binaries based on its Windows counterpart codeid, which can identify kernels through relocation entries extracted from the binaries. We show that relocation-based signatures are unique and distinct and thus, can be used to accurately determine Linux kernel versions and derandomize the base address of the kernel in memory (when kernel Address Space Layout Randomization is enabled). We evaluate the effectiveness of codeid-elf on a subset of Linux kernels and find that the relocations in kernel code have nearly 100\% code coverage and low similarity (uniqueness) across various kernels. Finally, we show that codeid-elf, which leverages relocations in kernel code, can detect all kernel versions in the test set with almost 100% page hit rate and nearly zero false negatives.
Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial 4.0 License
Bhatt, Manish, "Leveraging Relocations in ELF-binaries for Linux Kernel Version Identification" (2018). University of New Orleans Theses and Dissertations. 2528.
Available for download on Wednesday, December 20, 2023