From ba67b297d1e2baa281eed2cc7bf1fb16742cde87 Mon Sep 17 00:00:00 2001 From: Andrey Andreev Date: Fri, 2 Aug 2019 15:53:03 +0300 Subject: [ci skip] Fix a CSRF-related bug --- system/core/Security.php | 1 + 1 file changed, 1 insertion(+) (limited to 'system/core/Security.php') diff --git a/system/core/Security.php b/system/core/Security.php index 883968e26..6a81faff1 100644 --- a/system/core/Security.php +++ b/system/core/Security.php @@ -228,6 +228,7 @@ class CI_Security { // Check CSRF token validity, but don't error on mismatch just yet - we'll want to regenerate $valid = isset($_POST[$this->_csrf_token_name], $_COOKIE[$this->_csrf_cookie_name]) + && is_string($_POST[$this->_csrf_token_name]) && is_string($_COOKIE[$this->_csrf_cookie_name]) && hash_equals($_POST[$this->_csrf_token_name], $_COOKIE[$this->_csrf_cookie_name]); // We kill this since we're done and we don't want to pollute the _POST array -- cgit v1.2.3-24-g4f1b