Initial commit
This commit is contained in:
32
package/network/utils/curl/patches/401-CVE-2018-14618.patch
Normal file
32
package/network/utils/curl/patches/401-CVE-2018-14618.patch
Normal file
@@ -0,0 +1,32 @@
|
||||
From 57d299a499155d4b327e341c6024e293b0418243 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Stenberg <daniel@haxx.se>
|
||||
Date: Mon, 13 Aug 2018 10:35:52 +0200
|
||||
Subject: [PATCH] Curl_ntlm_core_mk_nt_hash: return error on too long password
|
||||
|
||||
... since it would cause an integer overflow if longer than (max size_t
|
||||
/ 2).
|
||||
|
||||
This is CVE-2018-14618
|
||||
|
||||
Bug: https://curl.haxx.se/docs/CVE-2018-14618.html
|
||||
Closes #2756
|
||||
Reported-by: Zhaoyang Wu
|
||||
---
|
||||
lib/curl_ntlm_core.c | 5 ++++-
|
||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
--- a/lib/curl_ntlm_core.c
|
||||
+++ b/lib/curl_ntlm_core.c
|
||||
@@ -557,8 +557,11 @@ CURLcode Curl_ntlm_core_mk_nt_hash(struc
|
||||
unsigned char *ntbuffer /* 21 bytes */)
|
||||
{
|
||||
size_t len = strlen(password);
|
||||
- unsigned char *pw = len ? malloc(len * 2) : strdup("");
|
||||
+ unsigned char *pw;
|
||||
CURLcode result;
|
||||
+ if(len > SIZE_T_MAX/2) /* avoid integer overflow */
|
||||
+ return CURLE_OUT_OF_MEMORY;
|
||||
+ pw = len ? malloc(len * 2) : strdup("");
|
||||
if(!pw)
|
||||
return CURLE_OUT_OF_MEMORY;
|
||||
|
||||
Reference in New Issue
Block a user