Package: libpam-modules
Version: 0.79-3.1
Severity: normal

I've just found a programming bug in 'passwd' which seems to be
associated with a bug in pam_unix.so

This is how it appears (user input in brackets)

$ passwd
Changing password for jfs
(current) UNIX password: [enter your proper password]
Enter new UNIX password: [press Ctrl+D]
Retype new UNIX password: [press Ctrl+D]
Segmentation fault
^^^^^^^^^^^^^^^^^^^

Looks like a null pointer dereference. If I attach (as root) gdb
to the passwd process just after it asks for the password this is what I
get:

# gdb /usr/bin/passwd PROC_PID
(....)
0xa7e8f25e in read () from /lib/tls/libc.so.6
(gdb) cont
Continuing.

Program received signal SIGSEGV, Segmentation fault.
0xa7f595eb in pam_sm_chauthtok () from /lib/security/pam_unix.so
(gdb) bt
#0  0xa7f595eb in pam_sm_chauthtok () from /lib/security/pam_unix.so
#1  0xa7f1fa9a in _pam_dispatch () from /lib/libpam.so.0
#2  0xa7f21fa3 in pam_chauthtok () from /lib/libpam.so.0
#3  0x0804b1df in ?? ()
#4  0x08051f58 in ?? ()
#5  0x00000000 in ?? ()
(gdb) cont


So it seems that /lib/security/pam_unix.so is the culprit here as it
is not capable to handle NULL strings for some reason.

Regards

Javier

Attachment: signature.asc
Description: Digital signature

Reply via email to