<?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>Python — CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/tags/python/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata — refreshed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Wed, 08 Apr 2026 21:12:54 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/tags/python/feed.xml" rel="self" type="application/rss+xml"/><item><title>First Time Python Process Creates macOS Launch Agent or Daemon</title><link>https://feed.craftedsignal.io/briefs/2026-06-python-launch-agent-persistence/</link><pubDate>Wed, 08 Apr 2026 21:12:54 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-06-python-launch-agent-persistence/</guid><description>This rule detects the initial creation or modification of a macOS LaunchAgent or LaunchDaemon plist file by a Python process, a common persistence technique employed by attackers using malicious scripts, compromised dependencies, or model file deserialization.</description><content:encoded><![CDATA[<p>This threat brief highlights the malicious use of Python to establish persistence on macOS systems. Attackers can achieve Python code execution through various means, including malicious scripts, compromised dependencies, or even model file deserialization vulnerabilities (such as pickle or PyTorch <code>__reduce__</code> exploits). Once code execution is achieved, attackers can drop plist files into LaunchAgent or LaunchDaemon directories, ensuring their payload survives reboots and user logouts. This persistence mechanism allows the attacker to maintain access and control over the compromised host. Legitimate Python processes typically do not create persistence mechanisms in this manner, making the first occurrence of such activity a strong indicator of compromise.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>The attacker gains initial access to the macOS system through methods such as exploiting vulnerabilities, social engineering, or phishing.</li>
<li>The attacker achieves code execution within a Python process. This can occur via a malicious script, a compromised Python package, or by exploiting deserialization vulnerabilities like <code>pickle.load</code> or <code>torch.load</code>.</li>
<li>The malicious Python script crafts a LaunchAgent or LaunchDaemon plist file. This plist file contains configuration details about the program to be executed, including its path, arguments, and execution triggers.</li>
<li>The Python process writes the crafted plist file to either the <code>/Library/LaunchAgents/</code> (for user-level persistence) or <code>/Library/LaunchDaemons/</code> (for system-level persistence) directory.</li>
<li>The LaunchAgent or LaunchDaemon is automatically loaded by <code>launchd</code> at login or boot, according to the configuration specified in the plist file.</li>
<li>The program specified in the plist file is executed, giving the attacker persistent access to the compromised system.</li>
<li>The attacker can then use this persistent access to perform various malicious activities, such as data exfiltration, lateral movement, or deploying additional malware.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>A successful attack can lead to persistent compromise of macOS systems. Attackers can maintain unauthorized access, execute arbitrary code, steal sensitive data, or use the compromised system as a foothold for further attacks within the network. The impact can range from individual user data theft to widespread organizational breaches, depending on the attacker&rsquo;s objectives and the system&rsquo;s role within the network.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Deploy the Sigma rule &ldquo;Detect Python Launch Agent/Daemon Creation&rdquo; to your SIEM to identify when a Python process creates a LaunchAgent or LaunchDaemon plist file.</li>
<li>Enable Elastic Defend endpoint logging to capture <code>event.action:&quot;launch_daemon&quot;</code> events, which are necessary for the Sigma rule to function correctly.</li>
<li>Prioritize investigation of alerts generated by the Sigma rule, focusing on understanding the program arguments, run-at-load configuration, and keep-alive settings within the created plist file.</li>
<li>Implement strict dependency management and vulnerability scanning for Python environments to prevent the use of compromised packages.</li>
<li>Monitor for processes loading model files (<code>torch.load</code>, <code>pickle.load</code>) and investigate any suspicious activity to prevent exploitation of deserialization vulnerabilities.</li>
</ul>
]]></content:encoded><category domain="severity">medium</category><category domain="type">advisory</category><category>persistence</category><category>macos</category><category>python</category></item><item><title>Memory Exhaustion Vulnerability in Widely Used Python Library</title><link>https://feed.craftedsignal.io/briefs/2026-03-memory-exhaustion-flaw/</link><pubDate>Thu, 19 Mar 2026 17:46:05 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-03-memory-exhaustion-flaw/</guid><description>A memory exhaustion vulnerability (CVE-2026-33155) exists in a widely used Python library, affecting services like SageMaker, DataHub, and acryl-datahub due to an incomplete patch for CVE-2025-58367, requiring pinning to version 8.6.2.</description><content:encoded>&lt;p>A critical memory exhaustion vulnerability, identified as CVE-2026-33155, has been discovered in a widely used Python library downloaded approximately 29 million times per month. This vulnerability poses a significant threat to services that rely on the affected library, including Amazon SageMaker, DataHub, and acryl-datahub. The issue stems from an incomplete patch for a previous vulnerability, CVE-2025-58367, related to restricted unpickling. Organizations that applied the initial patch may…&lt;/p>
</content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>memory-exhaustion</category><category>vulnerability</category><category>denial-of-service</category><category>python</category><category>supply-chain</category></item></channel></rss>