Skip to content

Commit 68a1310

Browse files
colinmollenhourmark-netalico
authored andcommitted
Merge pull request from GHSA-h632-p764-pjqm
Co-authored-by: Mark Lewis <[email protected]>
1 parent d31571c commit 68a1310

File tree

2 files changed

+14
-1
lines changed
  • app/code/core/Mage/Catalog/Model/Product/Attribute/Backend
  • lib/Varien/Io

2 files changed

+14
-1
lines changed

app/code/core/Mage/Catalog/Model/Product/Attribute/Backend/Media.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -276,6 +276,12 @@ public function addImage(
276276
$move = false,
277277
$exclude = true
278278
) {
279+
if (strpos($file, chr(0)) !== false
280+
|| preg_match('#(^|[\\\\/])\.\.($|[\\\\/])#', $file)
281+
) {
282+
throw new Exception('Detected malicious path or filename input.');
283+
}
284+
279285
$file = realpath($file);
280286

281287
if (!$file || !file_exists($file)) {

lib/Varien/Io/File.php

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -459,10 +459,17 @@ public function read($filename, $dest = null)
459459
* @param int $mode
460460
*
461461
* @return int|boolean
462+
* @throws Exception
462463
*/
463464
public function write($filename, $src, $mode = null)
464465
{
465-
if (!$this->_isValidSource($src) || !$this->_isFilenameWriteable($filename)) {
466+
if (strpos($filename, chr(0)) !== false
467+
|| preg_match('#(^|[\\\\/])\.\.($|[\\\\/])#', $filename)
468+
) {
469+
throw new Exception('Detected malicious path or filename input.');
470+
}
471+
472+
if (!$this->_IsValidSource($src) || !$this->_isFilenameWriteable($filename)) {
466473
return false;
467474
}
468475

0 commit comments

Comments
 (0)