Sam Hartman <hartm...@debian.org> writes:
>>>>>> "Josh" == Josh Triplett <j...@joshtriplett.org> writes:

>     Josh> Over the years, I've seen a few proposals floated to consider
>     Josh> dropping /etc/shells; this would just require dropping
>     Josh> pam_shells.so from /etc/pam.d/chsh. That would also have the
>     Josh> side effect of solving this problem, and making one less thing
>     Josh> requiring maintainer scripts.

> I think that would be a really bad idea.
> The issue is not on the chsh side, but more that membership in
> /etc/shells is a really good (but not perfect) indicator about whether
> this is an account that supports normal logins.

I agree with Sam on this: I would not couple discussion of dropping this
mechanism with usrmerge, and I would be very cautious here.

There are a lot of facilities in Debian that are mostly internal plumbing
and that only a few administrators are likely to fiddle with (and those
often being sophisticated users who follow Debian closely).  This is not
one of them.  /etc/shells is a very old UNIX security mechanism, and while
I would not design it today the way that it was designed, and it has a lot
of caveats and weird edge cases, it is a security mechanism that predates
the existence of Linux and that was (and probably, to a lesser extent, is)
used in a wide variety of older environments and configurations.

This is the sort of operating system facility that may be a load-bearing
security control for systems where everyone has forgotten that it is
security-critical.  It is possible, even likely, that there exist
production Debian systems in the wild where the /etc/shells mechanism is
the primary control standing in the way of an obvious privilege escalation
vulnerability.  To be clear, that's not a great situation for those
systems to be in, since this mechanism is a bit fragile and probably not
as strong as one would like!  But nonetheless we should be very careful
about taking any action that might break its historical properties.

-- 
Russ Allbery (r...@debian.org)              <https://www.eyrie.org/~eagle/>

Reply via email to