libsemanage-3.7-4
- direct_api: INTEGER_OVERFLOW read_len = read() Resolves: RHEL-35997
This commit is contained in:
parent
664455f077
commit
9f3d9a68d7
@ -0,0 +1,43 @@
|
|||||||
|
From 0140861b18272d2504ce743d60c181feb489a2af Mon Sep 17 00:00:00 2001
|
||||||
|
From: Vit Mojzis <vmojzis@redhat.com>
|
||||||
|
Date: Fri, 25 Oct 2024 20:32:07 +0200
|
||||||
|
Subject: [PATCH] libsemanage/direct_api: INTEGER_OVERFLOW read_len = read()
|
||||||
|
|
||||||
|
The following statement is always true if read_len is unsigned:
|
||||||
|
(read_len = read(fd, data_read + data_read_len, max_len - data_read_len)) > 0
|
||||||
|
|
||||||
|
Fixes:
|
||||||
|
Error: INTEGER_OVERFLOW (CWE-190): [#def19] [important]
|
||||||
|
libsemanage-3.7/src/direct_api.c:598:2: tainted_data_return: Called function "read(fd, data_read + data_read_len, max_len - data_read_len)", and a possible return value may be less than zero.
|
||||||
|
libsemanage-3.7/src/direct_api.c:598:2: cast_underflow: An assign of a possibly negative number to an unsigned type, which might trigger an underflow.
|
||||||
|
libsemanage-3.7/src/direct_api.c:599:3: overflow: The expression "data_read_len += read_len" is deemed underflowed because at least one of its arguments has underflowed.
|
||||||
|
libsemanage-3.7/src/direct_api.c:598:2: overflow: The expression "max_len - data_read_len" is deemed underflowed because at least one of its arguments has underflowed.
|
||||||
|
libsemanage-3.7/src/direct_api.c:598:2: overflow_sink: "max_len - data_read_len", which might have underflowed, is passed to "read(fd, data_read + data_read_len, max_len - data_read_len)". [Note: The source code implementation of the function has been overridden by a builtin model.]
|
||||||
|
\# 596| }
|
||||||
|
\# 597|
|
||||||
|
\# 598|-> while ((read_len = read(fd, data_read + data_read_len, max_len - data_read_len)) > 0) {
|
||||||
|
\# 599| data_read_len += read_len;
|
||||||
|
\# 600| if (data_read_len == max_len) {
|
||||||
|
|
||||||
|
Signed-off-by: Vit Mojzis <vmojzis@redhat.com>
|
||||||
|
Acked-by: James Carter <jwcart2@gmail.com>
|
||||||
|
---
|
||||||
|
libsemanage/src/direct_api.c | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/libsemanage/src/direct_api.c b/libsemanage/src/direct_api.c
|
||||||
|
index d740070d..7631c7bf 100644
|
||||||
|
--- a/libsemanage/src/direct_api.c
|
||||||
|
+++ b/libsemanage/src/direct_api.c
|
||||||
|
@@ -582,7 +582,7 @@ cleanup:
|
||||||
|
static int read_from_pipe_to_data(semanage_handle_t *sh, size_t initial_len, int fd, char **out_data_read, size_t *out_read_len)
|
||||||
|
{
|
||||||
|
size_t max_len = initial_len;
|
||||||
|
- size_t read_len = 0;
|
||||||
|
+ ssize_t read_len = 0;
|
||||||
|
size_t data_read_len = 0;
|
||||||
|
char *data_read = NULL;
|
||||||
|
|
||||||
|
--
|
||||||
|
2.47.0
|
||||||
|
|
12
changelog
12
changelog
@ -1,3 +1,15 @@
|
|||||||
|
* Tue Nov 12 2024 Vit Mojzis <vmojzis@redhat.com> - 3.7-4
|
||||||
|
- direct_api: INTEGER_OVERFLOW read_len = read() (RHEL-35997)
|
||||||
|
|
||||||
|
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 3.7-3
|
||||||
|
- Bump release for October 2024 mass rebuild (RHEL-64018)
|
||||||
|
|
||||||
|
* Thu Oct 17 2024 Petr Lautrbach <lautrbach@redhat.com> - 3.7-2.1
|
||||||
|
- fix swig bindings for 4.3.0
|
||||||
|
|
||||||
|
* Fri Aug 09 2024 Vit Mojzis <vmojzis@redhat.com> - 3.7-2
|
||||||
|
- Preserve file context and ownership in policy store (RHEL-50822)
|
||||||
|
|
||||||
* Thu Jun 27 2024 Petr Lautrbach <lautrbach@redhat.com> - 3.7-1
|
* Thu Jun 27 2024 Petr Lautrbach <lautrbach@redhat.com> - 3.7-1
|
||||||
- SELinux userspace 3.7 release
|
- SELinux userspace 3.7 release
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
Summary: SELinux binary policy manipulation library
|
Summary: SELinux binary policy manipulation library
|
||||||
Name: libsemanage
|
Name: libsemanage
|
||||||
Version: 3.7
|
Version: 3.7
|
||||||
Release: 3%{?dist}
|
Release: 4%{?dist}
|
||||||
License: LGPL-2.1-or-later
|
License: LGPL-2.1-or-later
|
||||||
Source0: https://github.com/SELinuxProject/selinux/releases/download/3.7/libsemanage-3.7.tar.gz
|
Source0: https://github.com/SELinuxProject/selinux/releases/download/3.7/libsemanage-3.7.tar.gz
|
||||||
Source1: https://github.com/SELinuxProject/selinux/releases/download/3.7/libsemanage-3.7.tar.gz.asc
|
Source1: https://github.com/SELinuxProject/selinux/releases/download/3.7/libsemanage-3.7.tar.gz.asc
|
||||||
@ -14,6 +14,7 @@ Source2: https://github.com/bachradsusi.gpg
|
|||||||
# Patch list start
|
# Patch list start
|
||||||
Patch0001: 0001-libsemanage-Preserve-file-context-and-ownership-in-p.patch
|
Patch0001: 0001-libsemanage-Preserve-file-context-and-ownership-in-p.patch
|
||||||
Patch0002: 0002-libsemanage-fix-swig-bindings-for-4.3.0.patch
|
Patch0002: 0002-libsemanage-fix-swig-bindings-for-4.3.0.patch
|
||||||
|
Patch0003: 0003-libsemanage-direct_api-INTEGER_OVERFLOW-read_len-rea.patch
|
||||||
# Patch list end
|
# Patch list end
|
||||||
URL: https://github.com/SELinuxProject/selinux/wiki
|
URL: https://github.com/SELinuxProject/selinux/wiki
|
||||||
Source3: semanage.conf
|
Source3: semanage.conf
|
||||||
@ -159,11 +160,5 @@ cp %{SOURCE3} ${RPM_BUILD_ROOT}%{_sysconfdir}/selinux/semanage.conf
|
|||||||
%{_libexecdir}/selinux/semanage_migrate_store
|
%{_libexecdir}/selinux/semanage_migrate_store
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 3.7-3
|
|
||||||
- Bump release for October 2024 mass rebuild:
|
|
||||||
Resolves: RHEL-64018
|
|
||||||
|
|
||||||
* Fri Aug 09 2024 Vit Mojzis <vmojzis@redhat.com> - 3.7-2
|
|
||||||
- Preserve file context and ownership in policy store (RHEL-50822)
|
|
||||||
|
|
||||||
%autochangelog
|
%autochangelog
|
||||||
|
Loading…
Reference in New Issue
Block a user