This blog post was co-authored by Aditya Joshi, Senior Software Engineer, Enterprise Protection and Detection.
Attackers are increasingly employing stealthier methods to avoid detection. Fileless attacks exploit software vulnerabilities, inject malicious payloads into benign system processes, and hide in memory. These techniques minimize or eliminate traces of malware on disk, and greatly reduce the chances of detection by disk-based malware scanning solutions.
To counter this threat, Azure Security Center released fileless attack detection for Windows in October 2018. Our blog post from 2018 explains how Security Center can detect shellcode, code injection, payload obfuscation techniques, and other fileless attack behaviors on Windows. Our research indicates the rise of fileless attacks on Linux workloads as well.
Today, Azure Security Center is happy to announce a preview for detecting fileless attacks on Linux. In this post, we will describe a real-world fileless attack on Linux, introduce our fileless attack detection capabilities, and provide instructions for onboarding to the preview.
Real-world fileless attack on Linux
One common pattern we see is attackers injecting payloads from packed malware on disk into memory and deleting the original malicious file from the disk. Here is a recent example:
- An attacker infects a Hadoop cluster by identifying the service running on a well-known port (8088) and uses Hadoop YARN unauthenticated remote command execution support to achieve runtime access on the machine. Note, the owner of the subscription could have mitigated this stage of the attack by configuring Security Center JIT.
- The attacker copies a file containing packed malware into a temp directory and launches it.
- The malicious process unpacks the file using shellcode to allocate a new dynamic executable region of memory in the process’s own memory space and injects an executable payload into the new memory region.
- The malware then transfers execution to the injected ELF entry point.
- The malicious process deletes the original packed malware from disk to cover its tracks.
- The injected ELF payload contains a shellcode that listens for incoming TCP connections, transmitting the attacker’s instructions.
This attack is difficult for scanners to detect. The payload is hidden behind layers of obfuscation and only present on disk for a short time. With the fileless attack detection preview, Security Center can now identify these kinds of payloads in memory and inform users of the payload’s capabilities.
Fileless attacks detection capabilities
Like fileless attack detection for Windows, this feature scans the memory of all processes for evidence of fileless toolkits, techniques and behaviors. Over the course of the preview, we will be enabling and refining our analytics to detect the following behaviors of userland malware:
- Well known toolkits and crypto mining software.
- Shellcode, injected ELF executables, and malicious code in executable regions of process memory.
- LD_PRELOAD based rootkits to preload malicious libraries.
- Elevation of privilege of a process from non-root to root.
- Remote control of another process using ptrace.
In the event of a detection, you receive an alert in the Security alerts page. Alerts contain supplemental information such as the kind of techniques used, process metadata, and network activity. This enables analysts to have a greater understanding of the nature of the malware, differentiate between different attacks, and make more informed decisions when choosing remediation steps.
The scan is non-invasive and does not affect the other processes on the system. The vast majority of scans run in less than five seconds. The privacy of your data is protected throughout this procedure as all memory analysis is performed on the host itself. Scan results contain only security-relevant metadata and details of suspicious payloads.
To sign-up for this specific preview, or our ongoing preview program, indicate your interest in the "Fileless attack detection preview."
Once you choose to onboard, this feature is automatically deployed to your Linux machines as an extension to Log Analytics Agent for Linux (also known as OMS Agent), which supports the Linux OS distributions described in this documentation. This solution supports Azure, cross-cloud and on-premise environments. Participants must be enrolled in the Standard or Standard Trial pricing tier to benefit from this feature.
To learn more about Azure Security Center, visit the Azure Security Center page.