Abstract
Protecting the Linux kernel from malicious activities is of paramount importance. Several approaches have been proposed to analyze kernel-level vulnerabilities. Existing studies, however, have a strong focus on the attack type (e.g., buffer overflow). In this paper, we report on our analysis of 1,858 Linux kernel vulnerabilities covering a period of Jan 2010-Jan 2020. We classify these vulnerabilities from the attacker’s view using various criteria such as the attacker’s objective, the targeted subsystems of the kernel, the location from which vulnerabilities can be exploited (i.e., locally or remotely), the impact of the attack on confidentiality, system integrity and availability, and the complexity level associated with exploiting vulnerabilities. Our findings indicate the presence of a large number of low-complexity vulnerabilities. Most of them can be exploited from the local system, leading to attacks that can severely compromise the kernel quality of service, and allow attackers to gain privileged access
Similar content being viewed by others
Notes
//www.linux.com/news/linux-kernel-49-here-and-its-largest-release-ever
References
Wang, P., Krinke, J., Lu, K., Li, G., Dodier-Lazaro, S.: How double-fetch situations turn into double-fetch vulnerabilities: a study of double fetches in the Linux kernel. In: InUSENIX Security Symposium, 2017 Aug 16
Xu, W., Li, J., Shu, J., Yang, W., Xie, T., Zhang, Y., Gu, D.: From collision to exploitation: unleashing use-after-free vulnerabilities in linux kernel. In: Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security, pp. 414–425. ACM (2015)
Gens, D., Schmitt, S., Davi, L., Sadeghi, AR.: K-miner: Uncovering memory corruption in linux. In: Proceedings of the 2018 Annual Network and Distributed System Security Symposium (NDSS), San Diego, CA (2018)
Bagherzadeh, M., Kahani, N., Bezemer, C.P., Hassan, A.E., Dingel, J., Cordy, J.R.: Analyzing a decade of Linux system calls. Empir. Softw. Eng. 23(3), 1519–51 (2018)
National Vulnerability Database. http://nvd.nist.gov
Ahmed, M., Mahmood, A.N., Hu, J.: A survey of network anomaly detection techniques. J. Netw. Comput. Appl. 1(60), 19–31 (2016)
Ghosh, D., Sharman, R., Rao, H.R., Upadhyaya, S.: Self-healing systems–survey and synthesis. J. Decis. Support Syst. 42(4), 2164–2185 (2007)
Simmons, C., Ellis, C., Shiva, S., Dasgupta, D., Wu, Q.: AVOIDIT: a cyber attack taxonomy. Technical report: CS-09-003, University of Memphis (2009)
Lough, D.: A taxonomy of computer attacks with applications to wireless networks. PhD thesis dissertation, Virginia Polytechnic Institute and State University (2001)
Alvarez, G., Petrovic, S.: A new taxonomy of web attacks suitable for efficient encoding. J. Comput. Secur. 22(5), 435–449 (2003)
Howard, J.D.: An analysis of security incidents on the Internet. PhD thesis dissertation, Carnegie Mellon University, Department of Engineering and Public Policy (1997)
Landwehr, C.E., Bull, A.R., McDermott, J.P., Choi, W.S.: A taxonomy of computer program security flaws, with examples. ACM Comput. Surv. 26(3), 211–254 (1994)
Bishop, M.: A taxonomy of Unix and network security vulnerabilities. Technical report, Department of Computer Science, University of California at Davis (1995)
Chen, H., Mao, Y., Wang, X., Zhou, D., Zeldovich, N., Frans Kaashoek, M.: Linux kernel vulnerabilities: state-of-the-art defenses and open problems. In: Proceedings of the Second Asia-Pacific Workshop on Systems (2011)
Mokhov, S., Laverdire, M., Benredjem, D.: Taxonomy of Linux kernel vulnerability solutions. In: Proceedings of the International Joint Conferences on Computer, Information, and Systems Sciences, and Engineering (2007)
Argyroudis, P., Glynos, D.: Protecting the core kernel exploitation mitigations. Black Hat Europe (2011)
Zhou, M., Chen, Q., Mockus, A., Wu, F.: On the scalability of Linux kernel maintainers’ work. In: Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering 2017 Aug 21 (pp. 27–37). ACM
Mell, P., Scarfone, K., Romanosky, S.: A complete guide to the common vulnerability scoring system version 2.0. http://www.first.org/cvss/cvss-guide.html
Santos, O.: The sequel, the evolution of scoring security vulnerabilities (2016)
Eiram, C., Martin, B.: The CVSSv2 shortcomings, faults, and failures formulation. Technical report, Forum of Incident Response and Security Teams (FIRST) (2013)
Dang, T., Wagner, D.: The performance cost of shadow stacks and stack canaries, pp. 1–12
Canepa, G.: How to secure network services using TCP wrappers in Linux (2016)
KASAN, The Kernel Address Sanitizer (KASAN). www.kernel.org/doc/html/v4.10/dev-tools/kasan.html (2017)
Wu, W., Chen, Y., Xu, J., Xing, X., Gong, X., Zou, W.: FUZE: towards facilitating exploit generation for kernel use-after-free vulnerabilities. In: 27th USENIX Security Symposium (USENIX Security 18), pp. 781–797 (2018)
Caballero, J., Grieco, G., Marron, M., Nappa, A.: Undangle: early detection of dangling pointers in use-after-free and double-free vulnerabilities. In: Proceedings of the 2012 International Symposium on Software Testing and Analysis, pp. 133–143. ACM (2012)
Lee, B., Song, C., Jang, Y., Wang, T., Kim, T., Lu, L., Lee, W.: Preventing use-after-free with dangling pointers nullification. In: NDSS (2015)
Smatch the source matcher. http://smatch.sourceforge.net/. Accessed on 30/3/2021
Coccinelle: A program matching and transformation tool for systems code. http://coccinelle.lip6.fr/. Accessed on 20/12/2018
Abal, I., Brabrand, C., Wsowski, A.: Effective bug finding in c programs with shape and effect abstractions. In: International Conference on Verification. Model Checking, and Abstract Interpretation, pp. 34–54. Springer, Cham (2017)
Tsyrklevich, E., Yee, B.: Dynamic detection and prevention of race conditions in file accesses. PhD diss, University of California, San Diego (2003)
National Security Agency (NSA) and Federal Bureau of Investigation (FBI). Russian GRU 85th GTsSS Deploys Previously Undisclosed Drovorub Malware. August 2020 Rev 1.0
Xu, W., Li, J., Shu, J., Yang, W., Xie, T., Zhang, Y., Gu, D.: From collision to exploitation: unleashing use-after-free vulnerabilities in linux kernel. In: Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security 2015 Oct 12 (pp. 414–425). ACM
Allodi, L., Banescu, S., Femmer, H., Beckers, K.: . Identifying relevant information cues for vulnerability assessment using CVSS. In: Proceedings of the Eighth ACM Conference on Data and Application Security and Privacy (pp. 119–126). ACM (2018, March)
Mell, P., Scarfone, K., Romanosky, S.: A complete guide to the common vulnerability scoring system version 2.0. In: Published by FIRST-Forum of Incident Response and Security Teams (vol. 1, p. 23) (2007, June)
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Shameli-Sendi, A. Understanding Linux kernel vulnerabilities. J Comput Virol Hack Tech 17, 265–278 (2021). https://doi.org/10.1007/s11416-021-00379-x
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11416-021-00379-x