<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Ubuntu — CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/ubuntu/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata. Fed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Wed, 13 May 2026 13:03:36 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/ubuntu/feed.xml" rel="self" type="application/rss+xml"/><item><title>Leveraging Linux Cgroups for Threat Detection and Investigation</title><link>https://feed.craftedsignal.io/briefs/2026-05-linux-cgroups/</link><pubDate>Wed, 13 May 2026 13:03:36 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-05-linux-cgroups/</guid><description>This brief outlines how Linux cgroups, a kernel feature for resource management, can be repurposed to provide valuable telemetry for detecting malicious processes, particularly in systemd, Docker, and Kubernetes environments, aiding in investigations of server compromises.</description><content:encoded><![CDATA[<p>Linux cgroups (control groups) are a kernel feature designed for resource management, allowing administrators to limit the resources available to specific processes. While intended for system stability and performance, cgroups also expose valuable telemetry that can be leveraged for threat detection and incident response. This is particularly useful in modern Linux environments heavily reliant on containerization and systemd. Defenders can utilize cgroup information to gain deeper insights into process behavior, establish relationships between processes, and differentiate between benign and malicious activities. By understanding how cgroups are structured and utilized by different systems, security teams can enhance their ability to detect and respond to threats on Linux servers. The blog post highlights the practical application of cgroups in systemd, Docker, and Kubernetes environments, providing a foundation for building more effective detection strategies.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>Attacker gains initial access to a Linux server, potentially through exploiting a vulnerability or using compromised credentials.</li>
<li>Attacker executes a malicious script or binary on the server.</li>
<li>The malicious process is assigned a cgroup by the system, depending on whether it&rsquo;s managed by systemd, Docker, or Kubernetes.</li>
<li>If the process is a systemd service, it will be associated with a cgroup under <code>/system.slice/</code>, which reveals the service name.</li>
<li>If the process is running within a Docker container, it will be assigned a cgroup under <code>/docker/$CONTAINER_ID</code>, allowing for grouping of all container processes.</li>
<li>In a Kubernetes environment, the cgroup path will include the pod ID and Quality-of-Service class, such as <code>/kubepods/$CLASS/pod$POD_ID/$CONTAINER_ID</code> (cgroupfs driver) or <code>/kubepods.slice/kubepods-$CLASS.slice/$POD_ID.slice/$CONTAINER_ID</code> (systemd driver).</li>
<li>The attacker attempts lateral movement or persistence, spawning additional processes that inherit the same cgroup, which can be used to correlate attacker activity.</li>
<li>The attacker achieves their objective, such as deploying a coinminer or exfiltrating sensitive data, leaving behind processes that can be identified and grouped via their cgroup assignment.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Compromised Linux servers can lead to data breaches, service disruptions, and resource hijacking. If an attacker successfully establishes persistence, they can maintain unauthorized access for extended periods. The presence of coinminers can degrade system performance and increase energy consumption. Understanding the cgroup assignments of malicious processes can aid in identifying the scope of the compromise, the attacker&rsquo;s objectives, and the affected systems.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Monitor process creation events and collect the associated cgroup path to establish baselines of normal system behavior, especially within containerized environments.</li>
<li>Deploy the provided Sigma rule to detect unexpected processes running within Docker containers based on the cgroup path.</li>
<li>Use the provided Sigma rule to detect processes running under user-level systemd services, correlating with user login sessions to identify anomalous behavior.</li>
<li>Investigate processes with unusual cgroup assignments, particularly those lacking expected container or systemd associations.</li>
<li>Correlate cgroup information with other telemetry, such as network connections and file modifications, to gain a more comprehensive understanding of attacker activity.</li>
<li>Utilize the <code>systemd-cgls</code> command on Linux systems to list all active cgroups and their associated processes for manual investigation and validation of detection rules.</li>
</ul>
]]></content:encoded><category domain="severity">medium</category><category domain="type">advisory</category><category>linux</category><category>cgroups</category><category>container</category><category>kubernetes</category><category>docker</category><category>systemd</category><category>threat-detection</category></item></channel></rss>