Skip to content

Commit ed67b7c

Browse files
authored
Merge pull request from GHSA-442f-wcwq-fpcf
Fix for CVE-2022-41922
2 parents 991a162 + 5660bc8 commit ed67b7c

File tree

2 files changed

+13
-9
lines changed

2 files changed

+13
-9
lines changed

CHANGELOG

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ Version 1.1.27 under development
55
--------------------------------
66

77
- Bug: PHP 8.1 compatibility: Fix CFileCache call of file_get_contents (Bregi)
8+
- Bug: CVE-2022-41922. Prevent RCE when deserializing untrusted user input (fi3wey, marcovtwout)
89

910
Version 1.1.26 September 30, 2022
1011
--------------------------------

framework/db/schema/CDbCriteria.php

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -168,18 +168,21 @@ public function __wakeup()
168168
{
169169
$map=array();
170170
$params=array();
171-
foreach($this->params as $name=>$value)
171+
if(is_array($this->params))
172172
{
173-
if(strpos($name,self::PARAM_PREFIX)===0)
173+
foreach($this->params as $name=>$value)
174174
{
175-
$newName=self::PARAM_PREFIX.self::$paramCount++;
176-
$map[$name]=$newName;
177-
}
178-
else
179-
{
180-
$newName=$name;
175+
if(strpos($name,self::PARAM_PREFIX)===0)
176+
{
177+
$newName=self::PARAM_PREFIX.self::$paramCount++;
178+
$map[$name]=$newName;
179+
}
180+
else
181+
{
182+
$newName=$name;
183+
}
184+
$params[$newName]=$value;
181185
}
182-
$params[$newName]=$value;
183186
}
184187
if (!empty($map))
185188
{

0 commit comments

Comments
 (0)