mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-08-08 08:30:47 -09:00
package/raptor: add patches for CVE-2024-57822, CVE-2024-57823
This fixes the following vulnerabilities:
- CVE-2024-57822:
In Raptor RDF Syntax Library through 2.0.16, there is a heap-based
buffer over-read when parsing triples with the nquads parser in
raptor_ntriples_parse_term_internal().
https://www.cve.org/CVERecord?id=CVE-2024-57822
- CVE-2024-57823:
In Raptor RDF Syntax Library through 2.0.16, there is an integer
underflow when normalizing a URI with the turtle parser in
raptor_uri_normalize_path().
https://www.cve.org/CVERecord?id=CVE-2024-57823
Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
Signed-off-by: Julien Olivain <ju.o@free.fr>
(cherry picked from commit e94cd21e7b)
Signed-off-by: Thomas Perale <thomas.perale@mind.be>
This commit is contained in:
committed by
Thomas Perale
parent
1e6729bfbc
commit
f43b433360
@@ -0,0 +1,30 @@
|
||||
From ece2c79df43091686a538b8231cf387d84bfa60e Mon Sep 17 00:00:00 2001
|
||||
From: Dave Beckett <dave@dajobe.org>
|
||||
Date: Fri, 7 Feb 2025 11:38:34 -0800
|
||||
Subject: [PATCH] Fix Github issue 70 B) Heap read buffer overflow in ntriples
|
||||
bnode
|
||||
|
||||
(raptor_ntriples_parse_term_internal): Only allow looking at the last
|
||||
character of a bnode ID only if bnode length >0
|
||||
|
||||
CVE: CVE-2024-57822
|
||||
Upstream: https://github.com/dajobe/raptor/commit/ece2c79df43091686a538b8231cf387d84bfa60e
|
||||
|
||||
Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
|
||||
---
|
||||
src/raptor_ntriples.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/raptor_ntriples.c b/src/raptor_ntriples.c
|
||||
index 3276e790..ecc4247c 100644
|
||||
--- a/src/raptor_ntriples.c
|
||||
+++ b/src/raptor_ntriples.c
|
||||
@@ -212,7 +212,7 @@ raptor_ntriples_parse_term_internal(raptor_world* world,
|
||||
locator->column--;
|
||||
locator->byte--;
|
||||
}
|
||||
- if(term_class == RAPTOR_TERM_CLASS_BNODEID && dest[-1] == '.') {
|
||||
+ if(term_class == RAPTOR_TERM_CLASS_BNODEID && position > 0 && dest[-1] == '.') {
|
||||
/* If bnode id ended on '.' move back one */
|
||||
dest--;
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
From da7a79976bd0314c23cce55d22495e7d29301c44 Mon Sep 17 00:00:00 2001
|
||||
From: Dave Beckett <dave@dajobe.org>
|
||||
Date: Thu, 6 Feb 2025 21:12:37 -0800
|
||||
Subject: [PATCH] Fix Github issue 70 A) Integer Underflow in
|
||||
raptor_uri_normalize_path()
|
||||
|
||||
(raptor_uri_normalize_path): Return empty buffer if path gets to 0
|
||||
length
|
||||
|
||||
CVE: CVE-2024-57823
|
||||
Upstream: https://github.com/dajobe/raptor/commit/da7a79976bd0314c23cce55d22495e7d29301c44
|
||||
|
||||
Signed-off-by: Titouan Christophe <titouan.christophe@mind.be>
|
||||
---
|
||||
src/raptor_rfc2396.c | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/src/raptor_rfc2396.c b/src/raptor_rfc2396.c
|
||||
index 8cc364f4..f8ec5798 100644
|
||||
--- a/src/raptor_rfc2396.c
|
||||
+++ b/src/raptor_rfc2396.c
|
||||
@@ -351,6 +351,10 @@ raptor_uri_normalize_path(unsigned char* path_buffer, size_t path_len)
|
||||
*dest++ = *s++;
|
||||
*dest = '\0';
|
||||
path_len -= len;
|
||||
+ if(path_len <= 0) {
|
||||
+ *path_buffer = '\0';
|
||||
+ return 0;
|
||||
+ }
|
||||
|
||||
if(p && p < prev) {
|
||||
/* We know the previous prev path component and we didn't do
|
||||
@@ -390,6 +394,10 @@ raptor_uri_normalize_path(unsigned char* path_buffer, size_t path_len)
|
||||
/* Remove <component>/.. at the end of the path */
|
||||
*prev = '\0';
|
||||
path_len -= (s-prev);
|
||||
+ if(path_len <= 0) {
|
||||
+ *path_buffer = '\0';
|
||||
+ return 0;
|
||||
+ }
|
||||
}
|
||||
|
||||
|
||||
@@ -14,6 +14,11 @@ RAPTOR_CPE_ID_VENDOR = librdf
|
||||
RAPTOR_CPE_ID_PRODUCT = raptor_rdf_syntax_library
|
||||
RAPTOR_INSTALL_STAGING = YES
|
||||
|
||||
# 0003-Fix-Heap-read-buffer-overflow-in-ntriples-bnode.patch
|
||||
RAPTOR_IGNORE_CVES += CVE-2024-57822
|
||||
# 0004-Fix-integer-underflow-in-raptor_uri_normalize_path.patch
|
||||
RAPTOR_IGNORE_CVES += CVE-2024-57823
|
||||
|
||||
# Flag is added to make sure the patch is applied for the configure.ac of raptor.
|
||||
RAPTOR_AUTORECONF = YES
|
||||
|
||||
|
||||
Reference in New Issue
Block a user