<?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>Software-Supply-Chain - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/tags/software-supply-chain/</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>Fri, 19 Jun 2026 20:01:30 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/tags/software-supply-chain/feed.xml" rel="self" type="application/rss+xml"/><item><title>JupyterLab Git Extension Stored XSS to RCE (CVE-2026-54527)</title><link>https://feed.craftedsignal.io/briefs/2026-06-jupyterlab-git-xss-rce/</link><pubDate>Fri, 19 Jun 2026 20:01:30 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-06-jupyterlab-git-xss-rce/</guid><description>A stored cross-site scripting (XSS) vulnerability, identified as CVE-2026-54527, in the `jupyterlab-git` JupyterLab extension (versions &gt;= 0.30.0b3, &lt; 0.54.0a1), specifically in `PlainTextDiff.ts`, allows an adversary with Git commit access to execute arbitrary JavaScript in a victim's browser and achieve Remote Code Execution (RCE) on the JupyterLab server by crafting a malicious filename in a Git commit that, when viewed as a rename diff, triggers the XSS payload to steal `_xsrf` cookies, open a terminal, and execute arbitrary shell commands to exfiltrate data.</description><content:encoded><![CDATA[<p>Amazon Web Services (AWS) Security discovered CVE-2026-54527, a high-severity stored cross-site scripting (XSS) vulnerability within the <code>jupyterlab-git</code> JupyterLab extension (versions &gt;= 0.30.0b3, &lt; 0.54.0a1). This flaw specifically resides in the <code>createHeader()</code> method of the <code>PlainTextDiff.ts</code> component, which insecurely renders Git filenames directly to <code>innerHTML</code> without sanitization when displaying diffs for renamed files in commit history. Exploitation requires an adversary to have commit access to a shared Git repository; they craft a malicious filename (e.g., <code>&lt;img src=x onerror=eval(atob(&quot;base64_payload&quot;))&gt;.py</code>), rename it in a subsequent commit, and push it. When a victim views the rename diff of this file in the Git History tab, the injected JavaScript executes in their browser, reading the <code>_xsrf</code> cookie, opening a JupyterLab terminal via <code>POST /api/terminals</code>, and subsequently executing arbitrary shell commands to achieve full Remote Code Execution (RCE). This allows attackers to exfiltrate secrets, credentials, and sensitive data from the victim's JupyterLab environment. The vulnerability impacts organizations utilizing JupyterLab with the vulnerable <code>jupyterlab-git</code> extension installed, potentially leading to widespread compromise of development and data science environments.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>An adversary with commit access to a shared Git repository crafts a file with a malicious filename containing a JavaScript payload (e.g., <code>&lt;img src=x onerror=eval(atob(&quot;base64_payload&quot;))&gt;.py</code>).</li>
<li>The adversary performs a Git commit, renaming the crafted file, and pushes both the file creation and rename commits to the shared Git repository.</li>
<li>A victim user clones or pulls the repository into their JupyterLab environment.</li>
<li>The victim navigates to the Git History tab within JupyterLab, clicks the commit containing the rename, and then clicks the renamed malicious file to view its diff.</li>
<li>JupyterLab's <code>PlainTextDiff.ts</code> component, specifically the <code>createHeader()</code> method, renders the unsanitized malicious filename directly into the Document Object Model (DOM) via <code>innerHTML</code>, executing the embedded JavaScript payload in the victim's browser session.</li>
<li>The executed JavaScript reads the victim's <code>_xsrf</code> cookie, constructs and sends a <code>POST</code> request to the JupyterLab server's <code>/api/terminals</code> endpoint to open a new terminal session.</li>
<li>The JavaScript establishes a WebSocket connection to the newly created terminal and sends arbitrary shell commands for execution on the underlying JupyterLab server.</li>
<li>The shell commands execute with the privileges of the JupyterLab server process, leading to Remote Code Execution (RCE) and potential exfiltration of credentials or sensitive data from the victim's environment.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation of CVE-2026-54527 leads to full Remote Code Execution (RCE) on the JupyterLab server where the victim's session is running. This grants an attacker unauthorized access to the victim's code, data, environment variables, and any credentials accessible from that environment. Attackers can leverage this RCE to exfiltrate sensitive information, install backdoors, move laterally within the network, or disrupt development and data science workflows. The attack vectors are widespread across any organization using JupyterLab with the vulnerable <code>jupyterlab-git</code> extension in a collaborative Git environment.</p>
<h2 id="recommendation">Recommendation</h2>
<ol>
<li>Immediately patch the <code>jupyterlab-git</code> extension to a version equal to or greater than 0.54.0a1 to remediate CVE-2026-54527.</li>
<li>Deploy the Sigma rules &quot;Detects CVE-2026-54527 Exploitation — JupyterLab Terminal Creation&quot; and &quot;Detects CVE-2026-54527 Exploitation — Suspicious JupyterLab Child Process&quot; to your SIEM and tune them for your environment's baseline JupyterLab activity.</li>
<li>Enable comprehensive <code>webserver</code> logging for all JupyterLab instances to capture <code>POST</code> requests to <code>/api/terminals</code> and other suspicious API endpoints, enabling the &quot;Detects CVE-2026-54527 Exploitation — JupyterLab Terminal Creation&quot; rule.</li>
<li>Enable <code>process_creation</code> logging on all servers hosting JupyterLab instances to monitor for unusual child processes spawned by JupyterLab or Python processes, enabling the &quot;Detects CVE-2026-54527 Exploitation — Suspicious JupyterLab Child Process&quot; rule.</li>
</ol>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>xss</category><category>rce</category><category>jupyterlab</category><category>git</category><category>web-vulnerability</category><category>software-supply-chain</category><category>ghsa</category></item><item><title>Network-AI: Improper Neutralization of Special Elements used in an OS Command (CVE-2026-54051)</title><link>https://feed.craftedsignal.io/briefs/2026-06-network-ai-cmd-injection/</link><pubDate>Fri, 19 Jun 2026 13:43:05 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-06-network-ai-cmd-injection/</guid><description>The `network-ai` package, versions prior to 5.9.1, is vulnerable to a critical command injection flaw (CVE-2026-54051) where the `ShellExecutor` component fails to properly neutralize shell metacharacters when processing commands, allowing an attacker to achieve arbitrary command execution as the orchestrator process by bypassing allowlist controls.</description><content:encoded><![CDATA[<p>A critical command injection vulnerability, tracked as CVE-2026-54051, exists in the <code>network-ai</code> npm package, specifically affecting versions prior to 5.9.1. The flaw stems from a mismatch between the <code>SandboxPolicy.isCommandAllowed</code> function, which performs allowlist glob-matching on the entire command string, and the <code>ShellExecutor</code> which then executes this string directly via <code>/bin/sh -c</code>. This discrepancy allows an attacker to inject shell metacharacters (e.g., <code>;</code>, <code>|</code>, <code>$(...)</code>) into a command that would otherwise be approved by a broad wildcard allowlist entry (e.g., <code>git *</code>, <code>npm *</code>). This bypasses the intended security control meant to contain a compromised agent, enabling arbitrary command execution with the privileges of the orchestrator process on Linux and macOS systems. The vulnerability was publicly disclosed on June 19, 2026, via a GitHub Security Advisory (GHSA-qw6v-5fcf-5666).</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>An attacker compromises or controls a <code>network-ai</code> agent process.</li>
<li>The <code>network-ai</code> orchestrator's <code>SandboxPolicy</code> includes a broad wildcard allowlist entry for commands (e.g., <code>git *</code>, <code>npm *</code>, <code>node *</code>).</li>
<li>The attacker crafts a malicious command string containing shell metacharacters, such as <code>git status; id &gt; /tmp/pwned.txt</code>.</li>
<li>The <code>SandboxPolicy.isCommandAllowed</code> function evaluates the full malicious string, and due to the glob-matching logic, it incorrectly determines the command is allowed.</li>
<li>The <code>ShellExecutor.execute</code> method proceeds to execute the approved string by invoking <code>/bin/sh -c &quot;git status; id &gt; /tmp/pwned.txt&quot;</code>.</li>
<li>The <code>/bin/sh</code> interpreter processes the shell metacharacters (specifically the semicolon), executing both <code>git status</code> and the injected <code>id &gt; /tmp/pwned.txt</code> command.</li>
<li>Arbitrary command execution is achieved, typically as the orchestrator process, allowing the attacker to bypass the intended sandbox controls and potentially escalate privileges or exfiltrate data.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation of CVE-2026-54051 leads to arbitrary command execution on the system running the <code>network-ai</code> orchestrator process. This vulnerability completely undermines the primary security mechanism designed to prevent a compromised agent from executing unauthorized commands. Attackers can leverage this to gain full control over the orchestrator, leading to data exfiltration, further lateral movement, or deployment of additional malicious payloads. While specific victim numbers are not provided, any organization utilizing <code>network-ai</code> with broad wildcard allowlist entries in its <code>SandboxPolicy</code> on Linux or macOS systems is susceptible to this critical flaw.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li><strong>Upgrade immediately:</strong> Update <code>network-ai</code> package to version 5.9.1 or later to apply the patch for CVE-2026-54051.</li>
<li><strong>Refine allowlists:</strong> Review and harden <code>SandboxPolicy</code> allowlist configurations, avoiding overly broad wildcard entries like <code>node *</code> or <code>npm *</code> even after patching.</li>
<li><strong>Enable logging:</strong> Ensure <code>process_creation</code> logging (e.g., via Sysmon for Linux/macOS) is enabled to capture execution of shell interpreters and their command-line arguments.</li>
<li><strong>Deploy Sigma rules:</strong> Deploy the provided Sigma rules to detect suspicious <code>sh -c</code> invocations and anomalous command executions.</li>
</ul>
]]></content:encoded><category domain="severity">critical</category><category domain="type">advisory</category><category>command-injection</category><category>rce</category><category>node.js</category><category>linux</category><category>macos</category><category>software-supply-chain</category></item><item><title>CrowdStrike 2026 Technology Threat Landscape Report: China's Ambitions Fuel Attacks</title><link>https://feed.craftedsignal.io/briefs/2026-06-china-tech-threats/</link><pubDate>Fri, 19 Jun 2026 05:22:20 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-06-china-tech-threats/</guid><description>The CrowdStrike 2026 Technology Threat Landscape Report highlights the pervasive targeting of the technology sector by China-nexus and eCrime adversaries, employing tactics like password spraying, vulnerability exploitation, supply chain compromises (e.g., Axios npm package, GitHub repositories), and malware distribution (macOS info stealers via OpenClaw lures) to achieve intelligence collection, intellectual property theft, and financial extortion.</description><content:encoded><![CDATA[<p>The CrowdStrike 2026 Technology Threat Landscape Report reveals the technology sector as the primary target for both state-sponsored and eCrime adversaries during the period of April 1, 2025, to March 31, 2026. China-nexus groups, including MURKY PANDA, MUSTANG PANDA, OVERCAST PANDA, SUNRISE PANDA, and WARP PANDA, accounted for over 58% of state-sponsored intrusions, driven by goals of intelligence collection, intellectual property theft, and supply chain compromise. These actors utilized methods such as password spraying and exploiting vulnerabilities. DPRK-nexus groups like FAMOUS CHOLLIMA and STARDUST CHOLLIMA targeted the sector for financial gain through fraudulent employment schemes and supply chain compromises, notably the Axios npm package. eCrime adversaries conducted 65% of hands-on-keyboard operations, focusing on extortion, leveraging initial access brokers, distributing malware via lures (e.g., fake OpenClaw skills for macOS info stealers), and injecting malicious code into platforms like GitHub repositories.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li><strong>Initial Access</strong>: Adversaries gain initial entry through various means, including password spraying attacks (observed with MURKY PANDA), exploitation of public-facing vulnerabilities in applications or infrastructure (WARP PANDA), or by luring victims with social engineering tactics (e.g., fake OpenClaw skills distributing macOS info stealers).</li>
<li><strong>Execution &amp; Persistence</strong>: Upon successful compromise or user interaction, malware (such as the macOS information stealer) is executed. Attackers then establish and maintain persistent access within the targeted environment, often through methods not explicitly detailed in the report.</li>
<li><strong>Lateral Movement &amp; Credential Access</strong>: Threat actors move deeper into the network, frequently leveraging stolen credentials or exploiting internal weaknesses, to reach critical systems and high-value data.</li>
<li><strong>Data Collection</strong>: Adversaries identify and gather sensitive information, including intellectual property, source code from private repositories (as seen with Crimson Collective's activities), and other data aligned with intelligence collection objectives.</li>
<li><strong>Supply Chain Compromise</strong>: In some instances, attackers inject malicious code into widely used software components (e.g., STARDUST CHOLLIMA compromising the Axios npm package) or directly into public code repositories (e.g., the Glassworm actor compromising GitHub repositories).</li>
<li><strong>Data Exfiltration</strong>: The collected intellectual property, sensitive data, or compromised code is then transferred out of the victim's network to adversary-controlled infrastructure.</li>
<li><strong>Impact &amp; Extortion</strong>: The ultimate objectives include intelligence collection, intellectual property theft, and financial gain. eCrime adversaries frequently resort to extortion, often by listing organizations on dedicated leak sites (572 tech organizations observed).</li>
</ol>
<h2 id="impact">Impact</h2>
<p>The technology sector faces severe consequences from these attacks, encompassing significant intelligence collection losses, intellectual property theft, and financial damage. State-sponsored actors, particularly China-nexus groups, aim to steal cutting-edge innovations and AI capabilities, hindering competitive advantage. eCrime groups extensively use extortion, naming 572 technology organizations on leak sites, vastly exceeding other sectors. Supply chain compromises, such as the STARDUST CHOLLIMA compromise of the Axios npm package, can expose millions of downstream users and poison open-source ecosystems, leading to widespread collateral damage and erosion of trust in software components. DPRK-nexus activities also contribute to financial losses through fraudulent employment schemes.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Deploy the Sigma rules in this brief to your SIEM and tune for your environment to detect macOS information stealers and suspicious application activity.</li>
<li>Implement strong multi-factor authentication (MFA) and monitor authentication logs for password spraying attempts, referencing the threat from MURKY PANDA.</li>
<li>Monitor process creation and network connections on macOS endpoints to detect suspicious activity indicative of the macOS information stealer distributed via &quot;OpenClaw-related lures&quot;.</li>
<li>Scrutinize software supply chain integrity, including regular audits of <code>npm</code> package dependencies and GitHub repository activity, to mitigate risks highlighted by the STARDUST CHOLLIMA and Glassworm compromises.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>intelligence-collection</category><category>espionage</category><category>supply-chain-compromise</category><category>software-supply-chain</category><category>extortion</category><category>state-sponsored</category><category>ecrime</category><category>macos</category><category>github</category></item></channel></rss>