Bug 738693 - user is not prompted to enter current password when changing to a new password
Summary: user is not prompted to enter current password when changing to a new password
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: ipa
Version: 6.1
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: ---
Assignee: Rob Crittenden
QA Contact: Chandrasekar Kannan
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-09-15 14:43 UTC by Namita Soman
Modified: 2015-01-04 23:51 UTC (History)
6 users (show)

Fixed In Version: ipa-2.1.2-1.el6
Doc Type: Bug Fix
Doc Text:
Cause: When a user has a valid Kerberos ticket, he can change an IPA password with "ipa passwd" command. Unfortunately, the command does not require entering a previous password Consequence: Anyone with access to user's shell with a valid Kerberos ticket can change his IPA password without knowing a previous password Fix: Always require entering a valid old password when changing an own IPA password. The only exception is changing another user's password (allowed for admin user only by default). Only the new password is required in this case obviously. Result: Malicious user who gets access to somebody else's shell with a valid Kerberos ticket cannot change an IPA password without knowing the old password. This is a more secure behavior.
Clone Of:
Environment:
Last Closed: 2011-12-06 18:31:34 UTC


Attachments (Terms of Use)


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2011:1533 normal SHIPPED_LIVE Moderate: ipa security and bug fix update 2011-12-06 01:23:31 UTC

Description Namita Soman 2011-09-15 14:43:15 UTC
Description of problem:
When changing one's own password, the user should first be prompted to enter his/her current password. 
This will protect the user from having anybody else change it for him/her.

Version-Release number of selected component (if applicable):
ipa-server-2.0.0-23.el6_1.2.x86_64
ipa-client-2.0.0-23.el6_1.2.x86_64

How reproducible:
always

Steps to Reproduce:
1.Login to ipa client machine, as say user1, whose password is say, password1
2.To change password, user1 now runs the command:
ipa passwd

Actual results:
This prompts user1 to enter new password.

Expected results:
Before prompting for new password, it should have prompted user1 to enter current password.
This will ensure that user1 is indeed the person changing his/her own password, and not somebody else.

Additional info:
output from server's /var/log/httpd/error.log:
[Thu Sep 15 10:27:37 2011] [error] ipa: INFO: one@TESTRELM: passwd(u'one', u'********'): DatabaseError
[Thu Sep 15 10:27:45 2011] [error] ipa: INFO: one@TESTRELM: ping(): SUCCESS
[Thu Sep 15 10:27:55 2011] [error] ipa: INFO: one@TESTRELM: passwd(u'one', u'********'): DatabaseError

Comment 2 Rob Crittenden 2011-09-16 15:09:13 UTC
Upstream ticket:
https://fedorahosted.org/freeipa/ticket/1808

Comment 3 Rob Crittenden 2011-09-22 15:21:59 UTC
The ticket was split to include changes in the 389-ds password plugin to enforce the old password as well, ticket https://fedorahosted.org/freeipa/ticket/1814

This was committed upstream as:
master: c981627016e0d3c0002214c1d2cc0812a480339a
ipa-2-1: a7b6a6e49857a4115170fdea41fe2e1f0300f66c

Comment 7 Martin Kosek 2011-11-01 10:16:27 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
Cause: When a user has a valid Kerberos ticket, he can change an IPA password with "ipa passwd" command. Unfortunately, the command does not require entering a previous password
Consequence: Anyone with access to user's shell with a valid Kerberos ticket can change his IPA password without knowing a previous password
Fix: Always require entering a valid old password when changing an own IPA password. The only exception is changing  another user's password (allowed for admin user only by default). Only the new password is required in this case obviously.
Result: Malicious user who gets access to somebody else's shell with a valid Kerberos ticket cannot change an IPA password without knowing the old password. This is a more secure behavior.

Comment 8 Namita Soman 2011-11-03 18:27:19 UTC
Verified using ipa-client-2.1.3-8.el6.x86_64

# ipa passwd
Current Password: 
New Password: 
Enter New Password again to verify: 
-----------------------------------
Changed password for "two@TESTRELM"
-----------------------------------

Comment 9 errata-xmlrpc 2011-12-06 18:31:34 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.

http://rhn.redhat.com/errata/RHSA-2011-1533.html


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