From b4b5d64a46e75049be3a69c95c85a78a758863ec Mon Sep 17 00:00:00 2001 From: Robert Teschmacher Date: Tue, 21 Nov 2023 15:47:08 +0000 Subject: [PATCH 1/3] Prevent passing null to base64_decode in Encrypter --- src/Illuminate/Encryption/Encrypter.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/Illuminate/Encryption/Encrypter.php b/src/Illuminate/Encryption/Encrypter.php index 5a8d82ec9ec6..b6355e7f28fa 100755 --- a/src/Illuminate/Encryption/Encrypter.php +++ b/src/Illuminate/Encryption/Encrypter.php @@ -205,6 +205,12 @@ protected function hash($iv, $value) */ protected function getJsonPayload($payload) { + // If the payload is not a string we can bail out early + // to avoid triggering deprecation warnings. + if(!is_string($payload)) { + throw new DecryptException('The payload is invalid.'); + } + $payload = json_decode(base64_decode($payload), true); // If the payload is not valid JSON or does not have the proper keys set we will From 904bf5e335959afc9025931f33487711a6d70b30 Mon Sep 17 00:00:00 2001 From: Robert Teschmacher Date: Tue, 21 Nov 2023 15:55:44 +0000 Subject: [PATCH 2/3] Implement styleCI recommended changes --- src/Illuminate/Encryption/Encrypter.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Illuminate/Encryption/Encrypter.php b/src/Illuminate/Encryption/Encrypter.php index b6355e7f28fa..e835cdc9db9a 100755 --- a/src/Illuminate/Encryption/Encrypter.php +++ b/src/Illuminate/Encryption/Encrypter.php @@ -207,7 +207,7 @@ protected function getJsonPayload($payload) { // If the payload is not a string we can bail out early // to avoid triggering deprecation warnings. - if(!is_string($payload)) { + if (! is_string($payload)) { throw new DecryptException('The payload is invalid.'); } From c914ab4f9d58c662169ba52210a222ce79c098dd Mon Sep 17 00:00:00 2001 From: Taylor Otwell Date: Tue, 21 Nov 2023 10:21:16 -0600 Subject: [PATCH 3/3] Update Encrypter.php --- src/Illuminate/Encryption/Encrypter.php | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/Illuminate/Encryption/Encrypter.php b/src/Illuminate/Encryption/Encrypter.php index e835cdc9db9a..8a8c6d85b0fc 100755 --- a/src/Illuminate/Encryption/Encrypter.php +++ b/src/Illuminate/Encryption/Encrypter.php @@ -205,8 +205,6 @@ protected function hash($iv, $value) */ protected function getJsonPayload($payload) { - // If the payload is not a string we can bail out early - // to avoid triggering deprecation warnings. if (! is_string($payload)) { throw new DecryptException('The payload is invalid.'); }