Bug 816203

Summary: yppasswd doesn't handle crypt() returning NULL
Product: Red Hat Enterprise Linux 5 Reporter: Honza Horak <hhorak>
Component: yp-toolsAssignee: Honza Horak <hhorak>
Status: CLOSED WONTFIX QA Contact: qe-baseos-daemons
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 5.8CC: hhorak, pwouters, rvokal
Target Milestone: rcKeywords: Patch
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 814803 Environment:
Last Closed: 2013-03-13 17:55:29 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 814803    
Bug Blocks: 816201    
Attachments:
Description Flags
Patch which prints error and exists when crypt fails none

Description Honza Horak 2012-04-25 13:35:02 UTC
+++ This bug was initially created as a clone of Bug #814803 +++

Created attachment 579069 [details]
yp-tools spec file

yppasswd doesn't handle crypt() returning NULL, which is possible in fips mode and other corner conditions. It blindly tries to sntrcmp or strdup the return
values of crypt()

Attached is a patch and updated spec file for rawhide

--- Additional comment from pwouters on 2012-04-20 13:48:13 EDT ---

Created attachment 579072 [details]
patch hanlding crypt() returning NULL

As I do not have an existing YP/NIS setup, someone should really test this patch

--- Additional comment from hhorak on 2012-04-23 09:18:49 EDT ---

Thanks for reporting. I've pushed the patch to upstream, applied in Rawhide and will update in F17 soon.

Right now, I'm not going to apply the patch and update in F16 and F15 though, unless there is a real use case requiring this fix or some more significant fix.

--- Additional comment from updates on 2012-04-23 09:20:45 EDT ---

yp-tools-2.12-9.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/yp-tools-2.12-9.fc17

--- Additional comment from pwouters on 2012-04-23 22:12:48 EDT ---

no need for f16, f15. Though RHEL would be nice :)

--- Additional comment via e-mail from sgrubb on 2012-04-23 23:19:48 EDT ---

The Single Unix Spec documents crypt() as being able to return NULL under certain conditions that are not related to FIPS. So, all software needs to handle this possibility. But there have been some recent changes in glibc that make it more likely that you will hit this. Especially if the user can control the input. I'd update everywhere that you can get a QE slot. RHEL5 FIPS support is supposed to be good. But I don't know if the glibc developers also updated it in a way that makes this more likely now.

Comment 1 RHEL Program Management 2012-06-12 01:15:19 UTC
This request was evaluated by Red Hat Product Management for
inclusion in the current release of Red Hat Enterprise Linux.
Because the affected component is not scheduled to be updated in the
current release, Red Hat is unfortunately unable to address this
request at this time. Red Hat invites you to ask your support
representative to propose this request, if appropriate and relevant,
in the next release of Red Hat Enterprise Linux.

Comment 2 Honza Horak 2012-12-03 13:49:51 UTC
Created attachment 656639 [details]
Patch which prints error and exists when crypt fails

Comment 3 Honza Horak 2013-03-13 17:55:29 UTC
There is no chance to fix this in RHEL-5 any more, since RHEL 5.10 is going to include only serious fixes.