Your message dated Tue, 30 Sep 2014 15:44:11 +0200
with message-id <20140930134411.ga11...@fatal.se>
and subject line Re: Bug#728312: libpam-gnome-keyring: does not properly kill 
gnome-keyring-daemon before exit, race condition causes pam umount fail
has caused the Debian Bug report #728312,
regarding libpam-gnome-keyring: does not properly kill gnome-keyring-daemon 
before exit, race condition causes pam umount fail
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
728312: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=728312
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: libpam-gnome-keyring
Version: 3.4.1-5
Severity: critical
Tags: upstream security
Justification: root security hole

Dear Maintainer,

The problem: at logout using pam-mount to umount an encrypted disk fails on
Debian Wheezy because gnome-keyring-daemon has an open socket at in ~/.cache
/keyring-xxxxxx/control and hasn't been killed properly. This is a security
issue because the encrypted disk does not get unmounted but the user will not
be aware of this.

The problem is that in pam/gkr-pam-module.c stop_daemon() sends SIGTERM to the
gnome-keyring-daemon process instead of SIGKILL ie. just requesting shutdown
and ensuring the process is really dead. This means that when
pam_gnome_keyring.so returns from pam_close_session() the daemon is sometimes
still running (race condition). Since the daemon has an open socket in the
users home directory, pam_mount's umount call will fail.

This was observed under lightdm and XFCE, but should also affect other systems
that use pam-gnome-keyring and pam-mount together.

Fix: replacing SIGTERM with SIGKILL in the source fixes the issue. You may want
to use SIGTERM/sleep/if(alive) SIGKILL to give the daemon a chance to exit
properly.

Relevant discussion thread: http://sourceforge.net/p/pam-
mount/mailman/message/31580148/



-- System Information:
Debian Release: 7.2
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: i386 (i686)

Kernel: Linux 3.2.0-4-486
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages libpam-gnome-keyring depends on:
ii  libc6           2.13-38
ii  libpam-runtime  1.1.3-7.1
ii  libpam0g        1.1.3-7.1
ii  libselinux1     2.1.9-5

Versions of packages libpam-gnome-keyring recommends:
ii  gnome-keyring  3.4.1-5

libpam-gnome-keyring suggests no packages.

-- no debconf information

--- End Message ---
--- Begin Message ---
Version: 3.12.0-1

On Tue, Sep 30, 2014 at 02:00:49PM +0100, Chris Bainbridge wrote:
> On 30 September 2014 12:48, Andreas Henriksson <andr...@fatal.se> wrote:
> > Hello Chris Bainbridge!
> >
> > Can you please confirm that the issue you reported at [1] has been
> > resolved (as suggested by the upstream bug report)?
> >
> > [1]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=728312
> >
> > Regards,
> > Andreas Henriksson
> 
> Yes, it seems the issue can be fixed by upgrading gnome-keyring to
> version 3.12.x; I have not tested it, but the code replacing kill(..
> SIGTERM) should work.
> 
> As noted by https://bugzilla.gnome.org/show_bug.cgi?id=725801
> upgrading to 3.12.x will break some other code (python-keyring is
> mentioned).

--- End Message ---

Reply via email to