Resolves: CVE-2016-0787 - diffie_hellman_sha1: Convert bytes to bits
This commit is contained in:
parent
0587739ebe
commit
2d448ce083
|
@ -0,0 +1,30 @@
|
||||||
|
From 8a453a7b0f1e667b7369eb73b00843a8decdecc9 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Daniel Stenberg <daniel@haxx.se>
|
||||||
|
Date: Thu, 11 Feb 2016 13:52:20 +0100
|
||||||
|
Subject: [PATCH] diffie_hellman_sha1: convert bytes to bits
|
||||||
|
|
||||||
|
As otherwise we get far too small numbers.
|
||||||
|
|
||||||
|
CVE-2016-0787
|
||||||
|
|
||||||
|
Signed-off-by: Kamil Dudka <kdudka@redhat.com>
|
||||||
|
---
|
||||||
|
src/kex.c | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/kex.c b/src/kex.c
|
||||||
|
index 6349457..e89b36c 100644
|
||||||
|
--- a/src/kex.c
|
||||||
|
+++ b/src/kex.c
|
||||||
|
@@ -133,7 +133,7 @@ static int diffie_hellman_sha1(LIBSSH2_SESSION *session,
|
||||||
|
memset(&exchange_state->req_state, 0, sizeof(packet_require_state_t));
|
||||||
|
|
||||||
|
/* Generate x and e */
|
||||||
|
- _libssh2_bn_rand(exchange_state->x, group_order, 0, -1);
|
||||||
|
+ _libssh2_bn_rand(exchange_state->x, group_order * 8 - 1, 0, -1);
|
||||||
|
_libssh2_bn_mod_exp(exchange_state->e, g, exchange_state->x, p,
|
||||||
|
exchange_state->ctx);
|
||||||
|
|
||||||
|
--
|
||||||
|
2.7.0
|
||||||
|
|
|
@ -12,13 +12,14 @@
|
||||||
|
|
||||||
Name: libssh2
|
Name: libssh2
|
||||||
Version: 1.7.0
|
Version: 1.7.0
|
||||||
Release: 1%{?dist}
|
Release: 2%{?dist}
|
||||||
Summary: A library implementing the SSH2 protocol
|
Summary: A library implementing the SSH2 protocol
|
||||||
Group: System Environment/Libraries
|
Group: System Environment/Libraries
|
||||||
License: BSD
|
License: BSD
|
||||||
URL: http://www.libssh2.org/
|
URL: http://www.libssh2.org/
|
||||||
Source0: http://libssh2.org/download/libssh2-%{version}.tar.gz
|
Source0: http://libssh2.org/download/libssh2-%{version}.tar.gz
|
||||||
Patch0: libssh2-1.4.2-utf8.patch
|
Patch0: libssh2-1.4.2-utf8.patch
|
||||||
|
Patch2: CVE-2016-0787.patch
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(id -nu)
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(id -nu)
|
||||||
BuildRequires: coreutils
|
BuildRequires: coreutils
|
||||||
BuildRequires: findutils
|
BuildRequires: findutils
|
||||||
|
@ -77,6 +78,9 @@ sed -i s/4711/47%{?__isa_bits}/ tests/ssh2.{c,sh}
|
||||||
# Make sure things are UTF-8...
|
# Make sure things are UTF-8...
|
||||||
%patch0 -p1
|
%patch0 -p1
|
||||||
|
|
||||||
|
# diffie_hellman_sha1: Convert bytes to bits (additional fix for CVE-2016-0787)
|
||||||
|
%patch2 -p1
|
||||||
|
|
||||||
# Make sshd transition appropriately if building in an SELinux environment
|
# Make sshd transition appropriately if building in an SELinux environment
|
||||||
%if !(0%{?fedora} >= 17 || 0%{?rhel} >= 7)
|
%if !(0%{?fedora} >= 17 || 0%{?rhel} >= 7)
|
||||||
chcon $(/usr/sbin/matchpathcon -n /etc/rc.d/init.d/sshd) tests/ssh2.sh || :
|
chcon $(/usr/sbin/matchpathcon -n /etc/rc.d/init.d/sshd) tests/ssh2.sh || :
|
||||||
|
@ -154,6 +158,9 @@ rm -rf %{buildroot}
|
||||||
%{_libdir}/pkgconfig/libssh2.pc
|
%{_libdir}/pkgconfig/libssh2.pc
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Feb 24 2016 Kamil Dudka <kdudka@redhat.com> - 1.7.0-2
|
||||||
|
- diffie_hellman_sha1: Convert bytes to bits (additional fix for CVE-2016-0787)
|
||||||
|
|
||||||
* Tue Feb 23 2016 Paul Howarth <paul@city-fan.org> - 1.7.0-1
|
* Tue Feb 23 2016 Paul Howarth <paul@city-fan.org> - 1.7.0-1
|
||||||
- Update to 1.7.0
|
- Update to 1.7.0
|
||||||
- diffie_hellman_sha256: Convert bytes to bits (CVE-2016-0787); see
|
- diffie_hellman_sha256: Convert bytes to bits (CVE-2016-0787); see
|
||||||
|
|
Loading…
Reference in New Issue