Bug 1488982 - GSSAPIStrictAcceptorCheck default change with 7.4
Summary: GSSAPIStrictAcceptorCheck default change with 7.4
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: openssh
Version: 7.5
Hardware: Unspecified
OS: Unspecified
urgent
urgent
Target Milestone: rc
: ---
Assignee: Jakub Jelen
QA Contact: Stefan Dordevic
URL:
Whiteboard:
Depends On:
Blocks: 1420851 1491179
TreeView+ depends on / blocked
 
Reported: 2017-09-06 14:36 UTC by Kyle Walker
Modified: 2018-04-10 18:20 UTC (History)
7 users (show)

Fixed In Version: openssh-7.4p1-13.el7
Doc Type: Bug Fix
Doc Text:
With the Red Hat Enterprise Linux 7.4 release of the openssh package, the default value of the GSSAPIStrictAcceptorCheck configuration option in the OpenSSH server was changed to "No". Consequently, unexpected failure states occured in incomplete Kerberos-configured environments. With this update, the GSSAPIStrictAcceptorCheck default value has been changed back to "Yes", and the failures no longer occur in the described scenario.
Clone Of:
: 1491179 (view as bug list)
Environment:
Last Closed: 2018-04-10 18:19:11 UTC


Attachments (Terms of Use)
Patch to revert back to the previous default state (1001 bytes, patch)
2017-09-06 15:27 UTC, Kyle Walker
no flags Details | Diff


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2018:0980 None None None 2018-04-10 18:20:29 UTC
Red Hat Knowledge Base (Solution) 3174651 None None None 2017-09-06 15:49:48 UTC

Description Kyle Walker 2017-09-06 14:36:37 UTC
Description of problem:
 With the 7.4 release of openssh, the "GSSAPIStrictAcceptorCheck" configuration option default state changed.

     # rpm -q openssh && sshd -T | grep -i GSSAPIStrictAcceptorCheck
     openssh-6.6.1p1-35.el7_3.x86_64
     gssapistrictacceptorcheck yes

Versus:

    # rpm -q openssh && sshd -T | grep -i GSSAPIStrictAcceptorCheck
    openssh-7.4p1-12.el7_4.x86_64
    gssapistrictacceptorcheck no


This causes incomplete Kerberos configured environments to exhibit unexpected failure states. Such as the following where the server side is not properly configured for the Kerberos domain:

    # ssh -v host.example.com
    <snip>
    debug1: Enabling compatibility mode for protocol 2.0^M
    debug1: Local version string SSH-2.0-OpenSSH_7.4^M
    debug1: Remote protocol version 2.0, remote software version OpenSSH_7.4^M
    debug1: match: OpenSSH_7.4 pat OpenSSH* compat 0x04000000^M
    debug1: Authenticating to host.example.com:22 as 'root'^M
    debug1: Offering GSSAPI proposal: gss-gex-sha1-toWM5Slw5Ew8Mqkay+al2g==,gss-group1-sha1-toWM5Slw5Ew8Mqkay+al2g==,gss-group14-sha1-toWM5Slw5Ew8Mqkay+al2g==,gss-gex-sha1-eipGX3TCiQSrx573bT1o1Q==,gss-group1-sha1-eipGX3TCiQSrx573bT1o1Q==,gss-group14-sha1-eipGX3TCiQSrx573bT1o1Q==^M
    debug1: SSH2_MSG_KEXINIT sent^M
    debug1: SSH2_MSG_KEXINIT received^M
    debug1: kex: algorithm: gss-gex-sha1-toWM5Slw5Ew8Mqkay+al2g==^M
    debug1: kex: host key algorithm: ecdsa-sha2-nistp256^M
    debug1: kex: server->client cipher: chacha20-poly1305@openssh.com MAC: <implicit> compression: none^M
    debug1: kex: client->server cipher: chacha20-poly1305@openssh.com MAC: <implicit> compression: none^M
    debug1: kex: gss-gex-sha1-toWM5Slw5Ew8Mqkay+al2g== need=64 dh_need=64^M
    debug1: kex: gss-gex-sha1-toWM5Slw5Ew8Mqkay+al2g== need=64 dh_need=64^M
    debug1: Doing group exchange
    ^M
    debug1: Calling gss_init_sec_context^M
    debug1: Delegating credentials^M
    ssh_packet_read: Connection closed^M


Version-Release number of selected component (if applicable):
  openssh-7.4p1-11.el7 and above

How reproducible:
  Simple

Steps to Reproduce:
1. Deploy openssh-server from 7.3 such as openssh-6.6.1p1-35.el7_3.x86_64
2. sshd -T | grep gssapistrictacceptorcheck
3. Update to openssh-server from 7.4 such as openssh-7.4p1-11.el7 or above

Actual results:
    gssapistrictacceptorcheck no


Expected results:
    gssapistrictacceptorcheck yes

Additional info:

Comment 5 Kyle Walker 2017-09-06 15:27:41 UTC
Created attachment 1322712 [details]
Patch to revert back to the previous default state

Comment 9 Jakub Jelen 2017-09-11 15:53:58 UTC
sigh ... there was a bug in upstream that the documentation was saying default is "yes", though it was not in the code. It is fixed in master and even in openssh-7.5, but not in 7.4, which we picked up (and missed).

    https://github.com/openssh/openssh-portable/commit/13bd2e2

So your patch is something that will actually appear in 7.5 for sure and in Z-stream if we will get it approved. Thanks for the investigation, ideas and testing.

Comment 16 errata-xmlrpc 2018-04-10 18:19:11 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2018:0980


Note You need to log in before you can comment on or make changes to this bug.