<?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>Claude-Faf-Mcp (&lt;= 5.7.1) - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/claude-faf-mcp--5.7.1/</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, 19 Aug 2026 22:34:36 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/claude-faf-mcp--5.7.1/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>Arbitrary Local File Read and Write in claude-faf-mcp</title><link>https://feed.craftedsignal.io/briefs/2026-08-claude-faf-mcp/</link><pubDate>Wed, 19 Aug 2026 22:34:36 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-08-claude-faf-mcp/</guid><description>The claude-faf-mcp MCP server exposes arbitrary file read and write primitives through unconfined path parameters, allowing LLM-based prompt injection to access sensitive local files or modify system files.</description><content:encoded><![CDATA[<p>The <code>claude-faf-mcp</code> package (versions 5.7.1 and earlier) contains a critical path traversal vulnerability in its Model Context Protocol (MCP) tools. The server process fails to confine user-supplied <code>path</code> arguments to a trusted project directory, instead resolving paths directly into the local filesystem. By providing absolute paths or directory traversal sequences like <code>../</code>, an attacker or a prompt-injected LLM can bypass intended project restrictions to read or write files anywhere the server process has operating system permissions. This vulnerability, identified during a security audit, permits unauthorized access to sensitive local credentials, including SSH keys, cloud configuration files (e.g., <code>~/.aws/credentials</code>), and <code>.env</code> files. The issue was remediated in version 5.7.2 by implementing strict path canonicalization and directory confinement guards in <code>safe-path.ts</code>.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>An attacker influences an LLM agent to interact with the <code>claude-faf-mcp</code> server by hosting malicious content in a project file, ticket, or web page.</li>
<li>The LLM agent receives the content, triggering a malicious tool call to <code>faf_read</code> or <code>faf_write</code> via the MCP interface.</li>
<li>The attacker-controlled tool call includes a crafted <code>path</code> argument, such as <code>/home/user/.ssh/id_rsa</code> or <code>../../../../etc/passwd</code>.</li>
<li>The server's <code>getProjectPath()</code> function receives the path and processes it using <code>path.resolve()</code> without checking against a restricted project root.</li>
<li>The server executes the filesystem operation on the target path, as it assumes the request is within the legitimate <code>.faf</code> project context.</li>
<li>For <code>faf_read</code>, the server returns the contents of the unauthorized sensitive file to the LLM agent, where the attacker can then exfiltrate it.</li>
<li>For <code>faf_write</code>, the server overwrites or creates arbitrary files on the local disk using the permissions of the user running the MCP server.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation results in arbitrary local file disclosure and unauthorized file modification. An attacker can access critical secrets, API keys, and environment variables stored on the host system. Furthermore, the ability to write files allows for potential persistence or lateral movement by overwriting configuration files or adding malicious scripts to accessible directories. The impact affects any developer or system running a vulnerable version of <code>claude-faf-mcp</code> in an environment where the agent processes untrusted, attacker-controlled data.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Upgrade <code>claude-faf-mcp</code> to version 5.7.2 or later immediately to apply the path confinement logic in <code>safe-path.ts</code>.</li>
<li>If upgrading is delayed, configure the <code>FAF_ALLOWED_ROOTS</code> environment variable to restrict the server to a single, hardened project directory.</li>
<li>Audit logs for unauthorized tool execution patterns or suspicious file paths (e.g., directory traversal strings <code>../</code> or common secret paths) passed to the MCP server.</li>
<li>Ensure the MCP server process runs with the least privilege necessary, avoiding execution as a root or high-privilege user to minimize the impact of file system writes.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>vulnerability</category><category>mcp</category><category>path-traversal</category><category>arbitrary-file-read</category><category>arbitrary-file-write</category></item></channel></rss>