slackware-current/source/n/openssh/openssh.tcp_wrappers.diff
Patrick J Volkerding e2bd8d2383 Thu Apr 18 21:13:58 UTC 2019
ap/ksh93-20190416_7d7bba3e-x86_64-1.txz:  Upgraded.
ap/sysstat-12.1.4-x86_64-1.txz:  Upgraded.
l/gvfs-1.40.1-x86_64-2.txz:  Rebuilt.
  Recompiled against libcdio-2.1.0.
l/icu4c-64.2-x86_64-1.txz:  Upgraded.
l/libcddb-1.3.2-x86_64-6.txz:  Rebuilt.
  Recompiled against libcdio-2.1.0.
l/libcdio-2.1.0-x86_64-1.txz:  Upgraded.
  Shared library .so-version bump.
l/libcdio-paranoia-10.2+2.0.0-x86_64-2.txz:  Rebuilt.
  Recompiled against libcdio-2.1.0.
l/zstd-1.4.0-x86_64-1.txz:  Upgraded.
n/dhcpcd-7.2.0-x86_64-1.txz:  Upgraded.
n/dovecot-2.3.5.2-x86_64-1.txz:  Upgraded.
  This update fixes a security issue:
  Trying to login with 8bit username containing invalid UTF8 input causes
  auth process to crash if auth policy is enabled. This could be used rather
  easily to cause a DoS. Similar crash also happens during mail delivery
  when using invalid UTF8 in From or Subject header when OX push
  notification driver is used.
  For more information, see:
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-10691
  (* Security fix *)
n/nghttp2-1.38.0-x86_64-1.txz:  Upgraded.
n/openssh-8.0p1-x86_64-1.txz:  Upgraded.
  This release contains a mitigation for a weakness in the scp(1) tool
  and protocol (CVE-2019-6111): when copying files from a remote system
  to a local directory, scp(1) did not verify that the filenames that
  the server sent matched those requested by the client. This could
  allow a hostile server to create or clobber unexpected local files
  with attacker-controlled content.
  For more information, see:
    https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-6111
  (* Security fix *)
xap/MPlayer-20190418-x86_64-1.txz:  Upgraded.
  Compiled against libcdio-2.1.0.
xap/audacious-plugins-3.10.1-x86_64-2.txz:  Rebuilt.
  Recompiled against libcdio-2.1.0.
extra/pure-alsa-system/MPlayer-20190418-x86_64-1_alsa.txz:  Upgraded.
  Compiled against libcdio-2.1.0.
extra/pure-alsa-system/audacious-plugins-3.10.1-x86_64-2_alsa.txz:  Rebuilt.
  Recompiled against libcdio-2.1.0.
2019-04-19 08:59:44 +02:00

138 lines
3.9 KiB
Diff

--- ./configure.ac.orig 2019-04-17 17:52:57.000000000 -0500
+++ ./configure.ac 2019-04-18 15:13:25.404941727 -0500
@@ -1494,6 +1494,62 @@
AC_MSG_RESULT([no])
fi
+# Check whether user wants TCP wrappers support
+TCPW_MSG="no"
+AC_ARG_WITH([tcp-wrappers],
+ [ --with-tcp-wrappers[[=PATH]] Enable tcpwrappers support (optionally in PATH)],
+ [
+ if test "x$withval" != "xno" ; then
+ saved_LIBS="$LIBS"
+ saved_LDFLAGS="$LDFLAGS"
+ saved_CPPFLAGS="$CPPFLAGS"
+ if test -n "${withval}" && \
+ test "x${withval}" != "xyes"; then
+ if test -d "${withval}/lib"; then
+ if test -n "${need_dash_r}"; then
+ LDFLAGS="-L${withval}/lib -R${withval}/lib ${LDFLAGS}"
+ else
+ LDFLAGS="-L${withval}/lib ${LDFLAGS}"
+ fi
+ else
+ if test -n "${need_dash_r}"; then
+ LDFLAGS="-L${withval} -R${withval} ${LDFLAGS}"
+ else
+ LDFLAGS="-L${withval} ${LDFLAGS}"
+ fi
+ fi
+ if test -d "${withval}/include"; then
+ CPPFLAGS="-I${withval}/include ${CPPFLAGS}"
+ else
+ CPPFLAGS="-I${withval} ${CPPFLAGS}"
+ fi
+ fi
+ LIBS="-lwrap -lnsl $LIBS"
+ AC_MSG_CHECKING([for libwrap])
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <tcpd.h>
+int deny_severity = 0, allow_severity = 0;
+ ]], [[
+ hosts_access(0);
+ ]])], [
+ AC_MSG_RESULT([yes])
+ AC_DEFINE([LIBWRAP], [1],
+ [Define if you want
+ TCP Wrappers support])
+ SSHDLIBS="$SSHDLIBS -lwrap -lnsl"
+ TCPW_MSG="yes"
+ ], [
+ AC_MSG_ERROR([*** libwrap missing])
+
+ ])
+ LIBS="$saved_LIBS"
+ fi
+ ]
+)
+
# Check whether user wants to use ldns
LDNS_MSG="no"
AC_ARG_WITH(ldns,
@@ -5245,6 +5301,7 @@
echo " OSF SIA support: $SIA_MSG"
echo " KerberosV support: $KRB5_MSG"
echo " SELinux support: $SELINUX_MSG"
+echo " TCP Wrappers support: $TCPW_MSG"
echo " MD5 password support: $MD5_MSG"
echo " libedit support: $LIBEDIT_MSG"
echo " libldns support: $LDNS_MSG"
--- ./sshd.c.orig 2019-04-17 17:52:57.000000000 -0500
+++ ./sshd.c 2019-04-18 15:13:25.406941726 -0500
@@ -122,6 +122,12 @@
#include "auth-options.h"
#include "version.h"
#include "ssherr.h"
+#ifdef LIBWRAP
+#include <tcpd.h>
+#include <syslog.h>
+int allow_severity;
+int deny_severity;
+#endif /* LIBWRAP */
/* Re-exec fds */
#define REEXEC_DEVCRYPTO_RESERVED_FD (STDERR_FILENO + 1)
@@ -2022,6 +2028,26 @@
the_active_state = ssh;
ssh_packet_set_server(ssh);
+/* Moved LIBWRAP check here */
+#ifdef LIBWRAP
+ allow_severity = options.log_facility|LOG_INFO;
+ deny_severity = options.log_facility|LOG_WARNING;
+ /* Check whether logins are denied from this host. */
+ if (ssh_packet_connection_is_on_socket(ssh)) { /* This check must be after ssh_packet_set_connection() */
+ struct request_info req;
+
+ request_init(&req, RQ_DAEMON, __progname, RQ_FILE, sock_in, 0);
+ fromhost(&req);
+
+ if (!hosts_access(&req)) {
+ debug("Connection refused by tcp wrapper");
+ refuse(&req);
+ /* NOTREACHED */
+ fatal("libwrap refuse returns");
+ }
+ }
+#endif /* LIBWRAP */
+
check_ip_options(ssh);
/* Prepare the channels layer */
--- ./sshd.8.orig 2019-04-17 17:52:57.000000000 -0500
+++ ./sshd.8 2019-04-18 15:13:25.407941726 -0500
@@ -873,6 +873,12 @@
This file should be writable only by the user, and need not be
readable by anyone else.
.Pp
+.It Pa /etc/hosts.allow
+.It Pa /etc/hosts.deny
+Access controls that should be enforced by tcp-wrappers are defined here.
+Further details are described in
+.Xr hosts_access 5 .
+.Pp
.It Pa /etc/hosts.equiv
This file is for host-based authentication (see
.Xr ssh 1 ) .
@@ -975,6 +981,7 @@
.Xr ssh-keygen 1 ,
.Xr ssh-keyscan 1 ,
.Xr chroot 2 ,
+.Xr hosts_access 5 ,
.Xr login.conf 5 ,
.Xr moduli 5 ,
.Xr sshd_config 5 ,