diff options
Diffstat (limited to 'application')
-rwxr-xr-x | application/Utils.php | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/application/Utils.php b/application/Utils.php index cb03f11c..1422961d 100755 --- a/application/Utils.php +++ b/application/Utils.php | |||
@@ -140,11 +140,16 @@ function checkPHPVersion($minVersion, $curVersion) | |||
140 | 140 | ||
141 | /** | 141 | /** |
142 | * Validate session ID to prevent Full Path Disclosure. | 142 | * Validate session ID to prevent Full Path Disclosure. |
143 | * | ||
143 | * See #298. | 144 | * See #298. |
145 | * The session ID's format depends on the hash algorithm set in PHP settings | ||
144 | * | 146 | * |
145 | * @param string $sessionId Session ID | 147 | * @param string $sessionId Session ID |
146 | * | 148 | * |
147 | * @return true if valid, false otherwise. | 149 | * @return true if valid, false otherwise. |
150 | * | ||
151 | * @see http://php.net/manual/en/function.hash-algos.php | ||
152 | * @see http://php.net/manual/en/session.configuration.php | ||
148 | */ | 153 | */ |
149 | function is_session_id_valid($sessionId) | 154 | function is_session_id_valid($sessionId) |
150 | { | 155 | { |
@@ -156,7 +161,7 @@ function is_session_id_valid($sessionId) | |||
156 | return false; | 161 | return false; |
157 | } | 162 | } |
158 | 163 | ||
159 | if (!preg_match('/^[a-z0-9]{2,32}$/i', $sessionId)) { | 164 | if (!preg_match('/^[a-zA-Z0-9,-]{2,128}$/', $sessionId)) { |
160 | return false; | 165 | return false; |
161 | } | 166 | } |
162 | 167 | ||