Dec 3, 2024 by Zacharia Mansouri | 495 views
Linux powers a wide range of devices across various environments, including cloud platforms and embedded systems. These systems, ranging from personal computers to critical infrastructure like medical devices and autonomous vehicles, are key targets for cyber threats. As Linux continues to grow in areas like cloud computing and the Internet of Things (IoT), securing these systems becomes increasingly crucial. This blog post explores the diversity of Linux environments, common malware types, and vulnerabilities that pose significant risks in cloud and embedded settings.
Linux computing spans diverse environments such as:
Let’s focus on two of these: cloud platforms and embedded systems.
Cloud Platforms: according to a W³Techs study (December 3, 2024), Linux powers 54.8% of websites where the operating system is identifiable. This dominance is further reflected in the use of popular web server software like Apache and Nginx, which predominantly run on Linux. Major cloud providers, including Amazon Web Services (AWS), Google Cloud, and Microsoft Azure, also offer extensive support for Linux-based virtual machines, driven by the growing demand for cloud infrastructure. Containers provide a lightweight, flexible, and scalable solution for packaging and deploying applications. Docker, along with its Linux-based containers, has become a core component of DevOps, supporting everything from microservices to cloud-native applications. These containers are created from images that bundle applications with their dependencies, with DockerHub hosting millions of these images. Popular official images on DockerHub typically include base operating systems such as Ubuntu, Alpine, and CentOS, as well as environments like Node.js, Python, and MySQL. Common security concerns with containers include:
The 10 most vulnerable images found with a scan of the top 20 most downloaded official images from DockerHub are: python, node, golang, wordpress, nginx, httpd, redis, mysql, postgres and memcached.
Embedded Systems: embedded devices have long been utilized in industrial settings, but only recently have they begun being part of many facets of our daily lives, largely driven by the rise of the “Internet of Things” (IoT) revolution. However, the push for rapid time-to-market and the inclusion of innovative features to captivate users often leaves these interconnected devices highly susceptible to critical security vulnerabilities. the Linux Foundation’s 2020 Kernel History Report highlights Linux’s expanding role in safety and security-critical products, ranging from medical devices to autonomous vehicles and spacecraft. The report also emphasizes Linux’s active development, noting an average of over 10 commits per hour. This continuous improvement is driven by a growing pool of contributors, including individual developers and organizations, reflecting the collaborative strength of the Linux community.
The diversity of Linux targets is also driven by the wide range of devices using it, each with different architectures, loaders/libraries, and operating systems. Let’s explore these aspects in more detail.
Computer Architectures: Linux supports a wide range of architectures, with examples like MIPS 32-bit, ARM 32-bit, and x86 32-bit used by malware such as the Mirai botnet. ARM, in particular, poses challenges due to its many variations in CPU architectures.
Loaders and Libraries: Linux programs use the ELF file format, which specifies a loader to prepare executables in memory. The presence of the correct loader is essential for program execution, alongside specific libraries. Some Linux programs are dynamically linked with alternative libraries like uClibc
or musl
, which offer smaller and more efficient options compared to the traditional glibc
.
Operating Systems: the ELF format includes an “OS/ABI” field meant to indicate the operating system required for execution, but this field is often ignored by modern Linux kernels. For example, binaries specifying “FreeBSD” as their OS/ABI may still run on Linux if they are dynamically linked, as their syscall numbers and arguments can align. However, statically linked programs typically crash due to mismatched syscalls between FreeBSD and Linux.
Here are some common types of malware:
Most commonly vulnerabilities exploited by malwares include: unpatched software, misconfigurations, unsecure code and phishing/social engineering. The five most common Linux malware types in 2022 were:
Linux servers are sometimes used as storage or command-and-control (C&C) servers for malware targeting Windows and Android systems. Advanced Persistent Threat (APT) groups exploit BPF (Berkeley Packet Filter) filters to install backdoors, leveraging the enhanced functionality of BPF and the difficulty in detecting such abuse. Learn more about BPF/eBPF. This form of exploitation presents a significant challenge for security teams, as the inclusion of BPF bytecode in malware complicates detection, blocking, and analysis efforts. In 2022, the three most exploited Linux vulnerabilities were:
Web-based attacks account for 97% of all attacks, while non-web-based attacks make up 3%. The three most common attacks leveraging protocol anomalies, as seen in HTTP protocol event anomalies in 2022, were:
Attacks listed in the TOP 10 OWASP attacks account for 70.5% of all attacks in 2022. The five most common attacks among these were:
Linux’s widespread use across diverse sectors, ranging from cloud platforms to embedded systems, makes it a prime target for cyber threats. As the backbone of critical infrastructure, including medical devices and autonomous vehicles, securing Linux systems is essential. The rise of containers in cloud-native applications introduces additional vulnerabilities, with misconfigurations and outdated software increasing the risk.
Malware targeting Linux has evolved, with botnets, ransomware, cryptocurrency miners, web shells, and rootkits being some of the most common threats. The abuse of techniques like BPF filters for backdoors and the exploitation of Linux kernel vulnerabilities highlight the growing sophistication of attacks.
Web-based attacks dominate, with SQL injection, XSS, and command injection being the most common vulnerabilities. However, non-web-based attacks, like brute-force, DoS, and RCE, also remain significant threats. Regular patching, secure coding practices, and configuration management are critical to mitigate these risks.
As Linux continues to expand in IoT, cloud, and embedded systems, security must remain a top priority. The lessons learned from current threats and vulnerabilities will shape the development of stronger security measures, ensuring the resilience of Linux against evolving attacks.
This blog post is licensed under CC BY-SA 4.0