Toshaan Bharvani
2 years ago
commit
1f92acc0bc
4 changed files with 363 additions and 0 deletions
@ -0,0 +1,38 @@
@@ -0,0 +1,38 @@
|
||||
From 2f1740eab432abc8e85172531d97eba33342474c Mon Sep 17 00:00:00 2001 |
||||
From: Bruno Meneguele <bmeneg@redhat.com> |
||||
Date: Mon, 16 Aug 2021 12:11:15 -0300 |
||||
Subject: [PATCH] evmctl: fix memory leak in get_password |
||||
|
||||
The variable "password" is not freed nor returned in case get_password() |
||||
succeeds. Return it instead of the intermediary variable "pwd". Issue found |
||||
by Coverity scan tool. |
||||
|
||||
src/evmctl.c:2565: leaked_storage: Variable "password" going out of scope |
||||
leaks the storage it points to. |
||||
|
||||
Signed-off-by: Bruno Meneguele <bmeneg@redhat.com> |
||||
--- |
||||
src/evmctl.c | 7 ++++++- |
||||
1 file changed, 6 insertions(+), 1 deletion(-) |
||||
|
||||
diff --git a/src/evmctl.c b/src/evmctl.c |
||||
index a8065bbe124a..ab7173723095 100644 |
||||
--- a/src/evmctl.c |
||||
+++ b/src/evmctl.c |
||||
@@ -2625,7 +2625,12 @@ static char *get_password(void) |
||||
return NULL; |
||||
} |
||||
|
||||
- return pwd; |
||||
+ if (pwd == NULL) { |
||||
+ free(password); |
||||
+ return NULL; |
||||
+ } |
||||
+ |
||||
+ return password; |
||||
} |
||||
|
||||
int main(int argc, char *argv[]) |
||||
-- |
||||
2.31.1 |
||||
|
@ -0,0 +1,61 @@
@@ -0,0 +1,61 @@
|
||||
From 916a0f97fd244a48fde429a63ddc04ed1ed94f8b Mon Sep 17 00:00:00 2001 |
||||
From: Bruno Meneguele <bmeneg@redhat.com> |
||||
Date: Mon, 16 Aug 2021 17:58:35 -0300 |
||||
Subject: [PATCH] libimaevm: make SHA-256 the default hash algorithm |
||||
|
||||
The SHA-1 algorithm is considered a weak hash algorithm and there has been |
||||
some movement within certain distros to drop its support completely or at |
||||
least drop it from the default behavior. ima-evm-utils uses it as the |
||||
default algorithm in case the user doesn't explicitly ask for another |
||||
through the --hashalgo/-a option. With that, make SHA-256 the default hash |
||||
algorithm instead. |
||||
|
||||
Signed-off-by: Bruno Meneguele <bmeneg@redhat.com> |
||||
--- |
||||
README | 2 +- |
||||
src/evmctl.c | 2 +- |
||||
src/libimaevm.c | 2 +- |
||||
3 files changed, 3 insertions(+), 3 deletions(-) |
||||
|
||||
diff --git a/README b/README |
||||
index 87cd3b5cd7da..0dc02f551673 100644 |
||||
--- a/README |
||||
+++ b/README |
||||
@@ -41,7 +41,7 @@ COMMANDS |
||||
OPTIONS |
||||
------- |
||||
|
||||
- -a, --hashalgo sha1 (default), sha224, sha256, sha384, sha512 |
||||
+ -a, --hashalgo sha1, sha224, sha256 (default), sha384, sha512 |
||||
-s, --imasig make IMA signature |
||||
-d, --imahash make IMA hash |
||||
-f, --sigfile store IMA signature in .sig file instead of xattr |
||||
diff --git a/src/evmctl.c b/src/evmctl.c |
||||
index a8065bbe124a..e0e55bc0b122 100644 |
||||
--- a/src/evmctl.c |
||||
+++ b/src/evmctl.c |
||||
@@ -2496,7 +2496,7 @@ static void usage(void) |
||||
|
||||
printf( |
||||
"\n" |
||||
- " -a, --hashalgo sha1 (default), sha224, sha256, sha384, sha512, streebog256, streebog512\n" |
||||
+ " -a, --hashalgo sha1, sha224, sha256 (default), sha384, sha512, streebog256, streebog512\n" |
||||
" -s, --imasig make IMA signature\n" |
||||
" -d, --imahash make IMA hash\n" |
||||
" -f, --sigfile store IMA signature in .sig file instead of xattr\n" |
||||
diff --git a/src/libimaevm.c b/src/libimaevm.c |
||||
index 8e9615796153..f6c72b878d88 100644 |
||||
--- a/src/libimaevm.c |
||||
+++ b/src/libimaevm.c |
||||
@@ -88,7 +88,7 @@ static const char *const pkey_hash_algo_kern[PKEY_HASH__LAST] = { |
||||
struct libimaevm_params imaevm_params = { |
||||
.verbose = LOG_INFO, |
||||
.x509 = 1, |
||||
- .hash_algo = "sha1", |
||||
+ .hash_algo = "sha256", |
||||
}; |
||||
|
||||
static void __attribute__ ((constructor)) libinit(void); |
||||
-- |
||||
2.31.1 |
||||
|
Binary file not shown.
@ -0,0 +1,264 @@
@@ -0,0 +1,264 @@
|
||||
%bcond_with compat |
||||
|
||||
# For cases where the soname requires a bump we need to define with_compat, |
||||
# update the package into the side-tag, update RPM (rpm-sign) into side-tag, |
||||
# _then_ undefine with_compat and rebuild the package into the side-tag. This |
||||
# is required to workaround the chiken-egg situation with the rpm-sign update. |
||||
# The compat pkg must not make the compose, it's only a buildrequirement for |
||||
# rpm-sign in a soname bump. |
||||
%if ! %{with compat} |
||||
%undefine with_compat |
||||
%endif |
||||
|
||||
%if %{with compat} |
||||
%global compat_soversion 2 |
||||
%endif |
||||
|
||||
Name: ima-evm-utils |
||||
Version: 1.4 |
||||
Release: 4%{?dist} |
||||
Summary: IMA/EVM support utilities |
||||
License: GPLv2 |
||||
Url: http://linux-ima.sourceforge.net/ |
||||
Source: http://sourceforge.net/projects/linux-ima/files/ima-evm-utils/%{name}-%{version}.tar.gz |
||||
|
||||
# compat source and patches |
||||
Source10: ima-evm-utils-1.3.2.tar.gz |
||||
Patch10: 0001-evmctl-fix-memory-leak-in-get_password.patch |
||||
Patch11: 0001-libimaevm-make-SHA-256-the-default-hash-algorithm.patch |
||||
|
||||
BuildRequires: asciidoc |
||||
BuildRequires: autoconf |
||||
BuildRequires: automake |
||||
BuildRequires: gcc |
||||
BuildRequires: keyutils-libs-devel |
||||
BuildRequires: libtool |
||||
BuildRequires: libxslt |
||||
BuildRequires: make |
||||
BuildRequires: openssl-devel |
||||
BuildRequires: tpm2-tss-devel |
||||
|
||||
%description |
||||
The Trusted Computing Group(TCG) run-time Integrity Measurement Architecture |
||||
(IMA) maintains a list of hash values of executables and other sensitive |
||||
system files, as they are read or executed. These are stored in the file |
||||
systems extended attributes. The Extended Verification Module (EVM) prevents |
||||
unauthorized changes to these extended attributes on the file system. |
||||
ima-evm-utils is used to prepare the file system for these extended attributes. |
||||
|
||||
%package devel |
||||
Summary: Development files for %{name} |
||||
Requires: %{name} = %{version}-%{release} |
||||
|
||||
%description devel |
||||
This package provides the header files for %{name} |
||||
|
||||
%if %{with compat} |
||||
%package -n %{name}%{compat_soversion} |
||||
Summary: Compatibility package of %{name} |
||||
|
||||
%description -n %{name}%{compat_soversion} |
||||
This package provides the libimaevm.so.%{compat_soversion} relative to %{name}-1.3 |
||||
%endif |
||||
|
||||
%prep |
||||
%setup -q |
||||
|
||||
%if %{with compat} |
||||
mkdir compat/ |
||||
tar -zxf %{SOURCE10} --strip-components=1 -C compat/ |
||||
cd compat/ |
||||
%patch10 -p1 |
||||
%patch11 -p1 |
||||
%endif |
||||
|
||||
%build |
||||
autoreconf -vif |
||||
%configure --disable-static |
||||
%make_build |
||||
|
||||
%if %{with compat} |
||||
pushd compat/ |
||||
autoreconf -vif |
||||
%configure --disable-static |
||||
%make_build |
||||
popd |
||||
%endif |
||||
|
||||
%install |
||||
%make_install |
||||
find %{buildroot} -type f -name "*.la" -print -delete |
||||
|
||||
%if %{with compat} |
||||
pushd compat/src/.libs/ |
||||
install -p libimaevm.so.%{compat_soversion}.0.0 %{buildroot}%{_libdir}/libimaevm.so.%{compat_soversion}.0.0 |
||||
ln -s -f %{buildroot}%{_libdir}/libimaevm.so.%{compat_soversion}.0.0 %{buildroot}%{_libdir}/libimaevm.so.%{compat_soversion} |
||||
popd |
||||
%endif |
||||
|
||||
%ldconfig_scriptlets |
||||
|
||||
%files |
||||
%license COPYING |
||||
%doc NEWS README AUTHORS |
||||
%{_bindir}/evmctl |
||||
# if you need to bump the soname version, coordinate with dependent packages |
||||
%{_libdir}/libimaevm.so.3* |
||||
%{_mandir}/man1/evmctl* |
||||
|
||||
%files devel |
||||
%{_pkgdocdir}/*.sh |
||||
%{_includedir}/imaevm.h |
||||
%{_libdir}/libimaevm.so |
||||
|
||||
%if %{with compat} |
||||
%files -n %{name}%{compat_soversion} |
||||
%{_libdir}/libimaevm.so.%{compat_soversion} |
||||
%{_libdir}/libimaevm.so.%{compat_soversion}.0.0 |
||||
%endif |
||||
|
||||
%changelog |
||||
* Mon Dec 13 2021 Bruno Meneguele <bmeneg@redhat.com> - 1.4-4 |
||||
- Fix compat bcond_with value check. |
||||
|
||||
* Fri Dec 10 2021 Bruno Meneguele <bmeneg@redhat.com> - 1.4-3 |
||||
- Remove compat subpkg from compose (rhbz#2026028) |
||||
|
||||
* Tue Dec 07 2021 Bruno Meneguele <bmeneg@redhat.com> - 1.4-2 |
||||
- Add compat subpkg for helping building dependencies (rhbz#2026028) |
||||
|
||||
* Thu Dec 02 2021 Bruno Meneguele <bmeneg@redhat.com> - 1.4-1 |
||||
- Modify some pieces to get closer to Fedora's specfile |
||||
- Remove patch handling memory leak: solved in the rebase |
||||
- Remove patch handling SHA-256 default hash: solved in the rebase |
||||
- Rebase to upstream release v1.4 (rhbz#2026028) |
||||
|
||||
* Fri Aug 20 2021 Bruno Meneguele <bmeneg@redhat.com> - 1.3.2-9 |
||||
- Use upstream accepted patch for the memory leak |
||||
- Make SHA-256 the default hash algorithm (rhbz#1934949) |
||||
|
||||
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 1.3.2-6 |
||||
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags |
||||
Related: rhbz#1991688 |
||||
|
||||
* Thu Jul 08 2021 Bruno Meneguele <bmeneg@redhat.com> - 1.3.2-5 |
||||
- Add patch fixing memory leak (rhbz#1938742) |
||||
|
||||
* Wed Jun 16 2021 Mohan Boddu <mboddu@redhat.com> - 1.3.2-4 |
||||
- Rebuilt for RHEL 9 BETA for openssl 3.0 |
||||
Related: rhbz#1971065 |
||||
|
||||
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 1.3.2-3 |
||||
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 |
||||
|
||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.2-2 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild |
||||
|
||||
* Wed Oct 28 2020 Bruno Meneguele <bmeneg@redhat.com> - 1.3.2-1 |
||||
- Rebase to new upstream v1.3.2 minor release |
||||
|
||||
* Tue Aug 11 2020 Bruno Meneguele <bmeneg@redhat.com> - 1.3.1-1 |
||||
- Rebase to new upstream v1.3.1 minor release |
||||
|
||||
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.3-3 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild |
||||
|
||||
* Sun Jul 26 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 1.3-2 |
||||
- Fix devel deps |
||||
|
||||
* Sun Jul 26 2020 Peter Robinson <pbrobinson@fedoraproject.org> - 1.3-1 |
||||
- Update to 1.3 |
||||
- Use tpm2-tss instead of tss2 |
||||
- Minor spec cleanups |
||||
|
||||
* Mon Jul 13 2020 Tom Stellard <tstellar@redhat.com> - 1.2.1-4 |
||||
- Use make macros |
||||
- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro |
||||
|
||||
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.1-3 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild |
||||
|
||||
* Wed Jul 31 2019 Bruno E. O. Meneguele <bmeneg@redhat.com> - 1.2.1-2 |
||||
- Add pull request to correct lib soname version, wich was bumped to 1.0.0 |
||||
|
||||
* Wed Jul 31 2019 Bruno E. O. Meneguele <bmeneg@redhat.com> - 1.2.1-1 |
||||
- Rebase to upstream v1.2.1 |
||||
- Remove both patches that were already solved in upstream version |
||||
- Add runtime dependency of tss2 to retrieve PCR bank data from TPM2.0 |
||||
|
||||
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-6 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild |
||||
|
||||
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-5 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild |
||||
|
||||
* Fri Jul 20 2018 Bruno E. O. Meneguele <brdeoliv@redhat.com> - 1.1-4 |
||||
- Add patch to remove dependency from libattr-devel package |
||||
|
||||
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-3 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild |
||||
|
||||
* Fri Mar 02 2018 Bruno E. O. Meneguele <brdeoliv@redhat.com> - 1.1-2 |
||||
- Remove libtool files |
||||
- Run ldconfig scriptlets after un/installing |
||||
- Add -devel subpackage to handle include files and examples |
||||
- Disable any static file in the package |
||||
|
||||
* Fri Feb 16 2018 Bruno E. O. Meneguele <brdeoliv@redhat.com> - 1.1-1 |
||||
- New upstream release |
||||
- Support for OpenSSL 1.1 was added directly to the source code in upstream, |
||||
thus removing specific patch for it |
||||
- Docbook xsl stylesheet updated to a local path |
||||
|
||||
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.0-5 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild |
||||
|
||||
* Fri Feb 02 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.0-4 |
||||
- Switch to %%ldconfig_scriptlets |
||||
|
||||
* Fri Dec 01 2017 Bruno E. O. Meneguele <brdeoliv@redhat.com> - 1.0-3 |
||||
- Add OpenSSL 1.1 API support for the package, avoiding the need of |
||||
compat-openssl10-devel package |
||||
|
||||
* Mon Nov 20 2017 Bruno E. O. Meneguele <brdeoliv@redhat.com> - 1.0-2 |
||||
- Adjusted docbook xsl path to match the correct stylesheet |
||||
- Remove only *.la files, considering there aren't any *.a files |
||||
|
||||
* Tue Sep 05 2017 Bruno E. O. Meneguele <brdeoliv@redhat.com> - 1.0-1 |
||||
- New upstream release |
||||
- Add OpenSSL 1.0 compatibility package, due to issues with OpenSSL 1.1 |
||||
- Remove libtool files |
||||
- Run ldconfig after un/installation to update *.so files |
||||
- Add -devel subpackage to handle include files and examples |
||||
|
||||
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.9-7 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild |
||||
|
||||
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.9-6 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild |
||||
|
||||
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.9-5 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild |
||||
|
||||
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.9-4 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild |
||||
|
||||
* Tue Jan 26 2016 Lubomir Rintel <lkundrak@v3.sk> - 0.9-3 |
||||
- Fix FTBFS |
||||
|
||||
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9-2 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild |
||||
|
||||
* Fri Oct 31 2014 Avesh Agarwal <avagarwa@redhat.com> - 0.9-1 |
||||
- New upstream release |
||||
- Applied a patch to fix man page issues. |
||||
- Updated spec file |
||||
|
||||
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6-3 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild |
||||
|
||||
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6-2 |
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild |
||||
|
||||
* Tue Aug 27 2013 Vivek Goyal <vgoyal@redhat.com> - 0.6-1 |
||||
- Initial package |
Loading…
Reference in new issue