<?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>CodeIgniter Framework - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/codeigniter-framework/</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, 07 Aug 2026 21:31:01 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/codeigniter-framework/feed.xml" rel="self" type="application/rss+xml"/><item><title>CodeIgniter Path Traversal via UploadedFile::move()</title><link>https://feed.craftedsignal.io/briefs/2026-08-codeigniter-path-traversal/</link><pubDate>Fri, 07 Aug 2026 21:31:01 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-08-codeigniter-path-traversal/</guid><description>CodeIgniter Framework versions prior to 4.7.4 contain a path traversal vulnerability in the UploadedFile::move() method that allows attackers to write files to arbitrary filesystem locations when unsanitized client filenames are processed.</description><content:encoded><![CDATA[<p>CodeIgniter Framework versions prior to 4.7.4 are susceptible to a path traversal vulnerability tracked as CVE-2026-63222. The vulnerability exists within the <code>UploadedFile::move()</code> method. When this method is invoked without a second argument, the framework defaults to using the original filename provided by the client without performing necessary sanitization.</p>
<p>An attacker can exploit this by crafting a malicious filename containing path traversal sequences, such as &quot;../../&quot;, to escape the intended upload directory and overwrite or create files elsewhere on the server. If the application is configured to allow direct execution of uploaded content, this flaw could be leveraged to gain remote code execution. It is critical to note that the patch introduced in version 4.7.4 only mitigates the issue when the method is used without a second argument. Applications that explicitly pass user-provided filenames to the second argument of <code>move()</code> remain vulnerable unless developers implement explicit sanitization logic.</p>
<h2 id="impact">Impact</h2>
<p>Successful exploitation allows for arbitrary file write on the host server. This could lead to the overwriting of sensitive configuration files, the placement of web shells in public directories, or the corruption of system files, potentially leading to full system compromise depending on web server permissions and file system structure.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Upgrade to CodeIgniter Framework v4.7.4 or later immediately.</li>
<li>If upgrading is not feasible, implement a workaround by using <code>getRandomName()</code> for destination files or by explicitly sanitizing any user-provided filenames using <code>sanitize_filename()</code> before passing them to the <code>move()</code> method.</li>
<li>Audit application code for instances where <code>UploadedFile::move()</code> is called with a second argument derived from <code>$file-&gt;getName()</code> or <code>$file-&gt;getClientName()</code> and ensure these are properly validated.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>web-application-vulnerability</category><category>path-traversal</category><category>codeigniter</category></item></channel></rss>