[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: locking utmp



On Tue, Mar 19, 2002 at 07:58:54PM +0100, Russell Coker wrote:
> On Tue, 19 Mar 2002 17:46, Steve Langasek wrote:
> > > If it keeps the read lock for an extended period of time and locks out
> > > other processes then it could allow a local DOS attack.
> >
> > AFAIK, read locks are not exclusive.

> But they block processes from writing.  If you could use that to stop other 
> people logging in...

Well, there is that..

> > > > If the question is really "why does it want a read lock at all?", I
> > > > don't think I have an answer for that one.

> > > Getting a read lock on the utmp file before reading it is reasonable. 
> > > Not sure why it needs to read it at all though.  Must be something in
> > > PAM.

> > Probably a 'session .* pam_unix.so' line in the PAM config for this
> > module.  Consensus among PAM developers is that utmp is the closest
> > possible definition for a 'unix session', so calling the session
> > management functions of the pam_unix functions writes to utmp.

> Session shouldn't even apply as the program in question only checks the 
> password.  Maybe the auth line for pam_unix.so is doing it.

Looking at the source to the Debian pam package, I seem to be 
misremembering; the only references to utmp in pam_unix are in a
PAM_getlogin() helper function that's called to log the logged-in 
username associated with failed authentication attempts.  I see that
pam_limits also looks in utmp to count the number of open sessions the 
user has.  

Steve Langasek
postmodern programmer



Reply to: