Bug 1374041 - sudo/pam Kerberos authentication fails with large password files [NEEDINFO]
Summary: sudo/pam Kerberos authentication fails with large password files
Keywords:
Status: CLOSED DUPLICATE of bug 1263745
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: krb5
Version: 7.2
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: ---
Assignee: Robbie Harwood
QA Contact: BaseOS QE Security Team
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-09-07 19:06 UTC by Adriele
Modified: 2019-12-16 06:40 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-10-06 14:08:23 UTC
Target Upstream Version:
rharwood: needinfo? (aandre)


Attachments (Terms of Use)
strace fail output (1.49 MB, text/plain)
2016-09-07 19:06 UTC, Adriele
no flags Details
strace success output (1.49 MB, text/plain)
2016-09-07 19:07 UTC, Adriele
no flags Details

Description Adriele 2016-09-07 19:06:45 UTC
Created attachment 1198823 [details]
strace fail output

Description of problem:

We received an email from a customer with the following: 

Host is configured to authenticate using AD via pam_krb5.
Some users were able to authenticate to sudo, others were not.
If a user's entry in /etc/passwd is beyond the 4K byte point, attempts to authenticate into sudo fail after 3 prompts for password. The following entry is
generated in /etc/var/log/secure:

sudo: pam_krb5[61945]: account checks fail for 'uname.EDU<uname.edu>': user disallowed by .k5login file for 'username'

Note: there is no .k5login file in the user account

strace'ing the command determined that when the authentication failed, initially 2 reads were made to the passwd file. The first was 4096 bytes, the second was the remainder of the file. On subsequent reads of passwd, did not read beyond the 4k byte mark. Every user that failed was beyond the the 4k byte point.

Moving the user's passwd entry above the 4k point in the passwd file allows the user to authenticate normally.

Version-Release number of selected component (if applicable):

pam_krb5-2.4.8-4.el7

How reproducible:

Every time

Steps to Reproduce:

1. Create passwd file with enough users to make the file larger than 4K bytes. 
2. Give a user at the bottom of the file permissions in /etc/sudoers
3. Execute `sudo -l` 
4. After 3 attempts, the command will fail with "bad password" and log message above.

Actual results:

users can't authenticate as sudo

Expected results:

user will authenticate successfully.

Additional info:

Adding "debug" flag to directives in /etc/pam.d/sudo results in a hang of the command.
See attached strace output for successful and unsuccessful execution.

Comment 1 Adriele 2016-09-07 19:07:56 UTC
Created attachment 1198824 [details]
strace success output

Comment 5 Robbie Harwood 2016-10-06 14:08:23 UTC

*** This bug has been marked as a duplicate of bug 1263745 ***


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