summaryrefslogtreecommitdiffstats
path: root/php-bug81719.patch
blob: f58c04198607fe766086a891f621ea687a6a1a74 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
From 5e1d9182748c5330c4bf2154da858206e76914b6 Mon Sep 17 00:00:00 2001
From: Stanislav Malyshev <smalyshev@gmail.com>
Date: Mon, 6 Jun 2022 00:56:51 -0600
Subject: [PATCH 2/3] Fix bug #81719: mysqlnd/pdo password buffer overflow

(cherry picked from commit 58006537fc5f133ae8549efe5118cde418b3ace9)
(cherry picked from commit 9433de72e291db518357fe55531cc15432d43ec4)
(cherry picked from commit 1560224d3a26574f0195af3853e4d7e050b0b06f)
---
 ext/mysqlnd/mysqlnd_wireprotocol.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/ext/mysqlnd/mysqlnd_wireprotocol.c b/ext/mysqlnd/mysqlnd_wireprotocol.c
index 1e38b76ff6..610abf99f5 100644
--- a/ext/mysqlnd/mysqlnd_wireprotocol.c
+++ b/ext/mysqlnd/mysqlnd_wireprotocol.c
@@ -792,7 +792,8 @@ php_mysqlnd_change_auth_response_write(void * _packet)
 	MYSQLND_VIO * vio = packet->header.vio;
 	MYSQLND_STATS * stats = packet->header.stats;
 	MYSQLND_CONNECTION_STATE * connection_state = packet->header.connection_state;
-	zend_uchar * buffer = pfc->cmd_buffer.length >= packet->auth_data_len? pfc->cmd_buffer.buffer : mnd_emalloc(packet->auth_data_len);
+	size_t total_packet_size = packet->auth_data_len + MYSQLND_HEADER_SIZE;
+	zend_uchar * const buffer = pfc->cmd_buffer.length >= total_packet_size? pfc->cmd_buffer.buffer : mnd_emalloc(total_packet_size);
 	zend_uchar * p = buffer + MYSQLND_HEADER_SIZE; /* start after the header */
 
 	DBG_ENTER("php_mysqlnd_change_auth_response_write");
-- 
2.35.3

From 151499ec0f70bf4f1bd65aebf037bd6273f0ef34 Mon Sep 17 00:00:00 2001
From: Remi Collet <remi@remirepo.net>
Date: Tue, 7 Jun 2022 09:57:15 +0200
Subject: [PATCH 3/3] NEWS

(cherry picked from commit f451082baf14ee9ea86cdd19870e906adb368f02)
(cherry picked from commit 87247fb08e905e629836350ac4e639edd1b40ed8)
---
 NEWS | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/NEWS b/NEWS
index e5c20296ed..6e6b4dbcd8 100644
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,16 @@
 PHP                                                                        NEWS
 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
 
+Backported from 7.4.30
+
+- mysqlnd:
+  . Fixed bug #81719: mysqlnd/pdo password buffer overflow.
+    (CVE-2022-31626) (c dot fol at ambionics dot io)
+
+- pgsql
+  . Fixed bug #81720: Uninitialized array in pg_query_params().
+    (CVE-2022-31625) (cmb)
+
 Backported from 7.3.33
 
 - XML:
-- 
2.35.3