<?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/" xmlns:webfeeds="http://webfeeds.org/rss/1.0"><channel><title>Cpe:2.3:a:synk:sweater_comb:*:*:*:*:*:*:*:* - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/cpes/cpe2.3asynksweater_comb/</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, 28 Aug 2026 21:37:47 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/cpes/cpe2.3asynksweater_comb/feed.xml" rel="self" type="application/rss+xml"/><image><url>https://feed.craftedsignal.io/favicon-32x32.png</url><title>CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/</link><width>32</width><height>32</height></image><webfeeds:icon>https://feed.craftedsignal.io/favicon.svg</webfeeds:icon><item><title>Command Injection in Synk Sweater Comb</title><link>https://feed.craftedsignal.io/briefs/2026-08-synk-sweater-comb-injection/</link><pubDate>Fri, 28 Aug 2026 21:37:47 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-08-synk-sweater-comb-injection/</guid><description>Synk Sweater Comb before version 3.8.8 contains a command injection vulnerability in the expectGitBranch() function, allowing arbitrary OS command execution via crafted .vervet.yaml configuration files.</description><content:encoded><![CDATA[<p>Synk Sweater Comb versions prior to 3.8.8 are vulnerable to a command injection flaw originating from the processing of the .vervet.yaml configuration file. The vulnerability exists within the expectGitBranch() function located in src/lint.ts, where user-supplied input from the 'linters.&lt;key&gt;.optic-ci.original' branch name field is concatenated directly into a template literal. This unsanitized string is then passed to the Node.js child_process.exec() function. An attacker who can influence the contents of the repository's configuration file can gain arbitrary OS command execution privileges when a victim executes the linting process. This flaw allows for lateral movement, data exfiltration, or persistence on the developer workstation or CI/CD runner environment where the tool is executed. Defenders should prioritize updating Synk Sweater Comb to version 3.8.8 or higher.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>Attacker gains write access to a repository containing a .vervet.yaml configuration file.</li>
<li>Attacker modifies the 'linters.&lt;key&gt;.optic-ci.original' field within the .vervet.yaml file.</li>
<li>Attacker injects shell metacharacters and arbitrary commands into the branch name string.</li>
<li>Victim triggers the Synk Sweater Comb linting process within the directory.</li>
<li>The expectGitBranch() function reads the malicious branch name from the configuration file.</li>
<li>The unsanitized input is passed directly to the shell via child_process.exec().</li>
<li>The operating system executes the attacker-supplied commands with the privileges of the user running the lint command.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation allows for remote code execution on the target system. This could lead to a full compromise of a developer's workstation or a CI/CD build pipeline, potentially resulting in unauthorized access to source code, secrets, or internal network segments if the runner is improperly scoped.</p>
<h2 id="recommendation">Recommendation</h2>
<ol>
<li>Upgrade Synk Sweater Comb to version 3.8.8 or later immediately to patch the command injection vulnerability in src/lint.ts.</li>
<li>Audit all repositories using .vervet.yaml for suspicious branch name fields or injected shell syntax (e.g., semicolons, pipe characters, backticks).</li>
<li>Limit the permissions of CI/CD runners to ensure that if arbitrary code execution occurs, the attacker cannot reach sensitive internal resources.</li>
</ol>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>vulnerability</category><category>remote-code-execution</category><category>ci-cd-security</category></item></channel></rss>