Grex Agorage Conference

Item 4: Proposal: Eliminate grex's custom password hash.

Entered by cross on Thu Sep 14 01:30:46 2006:

41 new of 81 responses total.


#41 of 81 by mdw on Tue Sep 26 03:22:34 2006:

Nothing.  The source is BSD licensed, and at least in the
opinion of the author, is a mathematical algorithm that embodies
no novel, unique, or unbvious principles.


#42 of 81 by janc on Tue Sep 26 16:09:30 2006:

I think it makes as good as no difference which password hash we are
running.  I'm astonished that anyone would feel strongly enough about it
to want to change it or even discuss it very much.

I'm OK with changing it.  I'm OK with leaving it alone.

We do clearly need to work on decision processes though.

My comments on the root grant appear in the coop conference.


#43 of 81 by tod on Tue Sep 26 17:38:20 2006:

re #42
 I'm astonished that anyone would feel strongly enough about it
 to want to change it or even discuss it very much.
I'm kinda the opposite.  I'm surprised people are upset that it was suggested
and brought up as a possible "update" when the argument in favor was fairly
concise and makes sense.  Standards are not evil.  If someone has the time
to standardize bits of the system and nobody gets injured or denied system
access then what is the harm?  I'd rather see the staff foster a relationship
of interest and improvement rather than one that harbors distrust while
embracing a stagnant mindset.


#44 of 81 by cross on Tue Sep 26 17:59:06 2006:

Regarding #42; That's why I think it should be changed: it makes little
difference security wise, yet we have to maintain it.  If we moved to the
standard, we'd be just as secure, and not have to maintain custom changes to
the system.  And I think Todd's comments in #43 stand well.


#45 of 81 by tod on Tue Sep 26 18:18:23 2006:

Eventually, there could be a compromise somewhere that allows for system
improvements to be formal.  Ideally, these improvements would be the kind that
are not denied unless proof of obvious DoS or degradation occurs as a result.
Will that happen on Grex? I seriously doubt it.


#46 of 81 by cross on Tue Sep 26 19:27:47 2006:

Then you end up with arguments over what an "improvement" is.  Marcus clearly
sees his algorithm as an improvement over anything that comes with the
operating system (whether for technical reasons or not).  I see going standard
as an improvement over what we've got now.  Who wins?


#47 of 81 by tod on Tue Sep 26 23:44:37 2006:

Patch management is one of those things where if it isn't obvious whether
you're updates are improvements then you should do a risk assessment.  I'd
venture to guess that staying on older or non-standard modules would be a
higher risk.


#48 of 81 by cross on Wed Sep 27 00:33:11 2006:

I agree.  I think that's a good way to look at it.


#49 of 81 by janc on Wed Sep 27 14:23:24 2006:

At the board meeting last night Marcus suggested that the sensible time
to start a transition to a standard password algorithm would be in the
course of the next upgrade to a new version of OpenBSD.  (He was not
exactly advocating such a change, but he wasn't opposing it either, just
suggesting the best way to do it.)

I think that makes sense.  You really want to have the system off-line
while you do this, so you can confirm that new and old passwords are
working right before letting users loose on them.  During the system
upgrade is a period when we will be working on the password system
anyway.  The change is absolutely non-urgent, so I don't see much reason
to do it before then.  Why impose extra down time over this?

So I guess that's what I'm advocating at this point.  During the next OS
version upgrade, we install the patches to enable authenticating with
Marcus's passwords, but have new passwords be created with a standard
hash.  By the time of the upgrade after that, we should be able to drop
the Marcus stuff entirely and use a stock authentication system.

When is the next OS upgrade due anyway?  We are on 3.8 now.  Looks like
4.0 is about to be released.  But it doesn't look to me like 4.0 is a
major step.  It looks more like 4.0 was the next number after 3.9.  I
don't know.  Looks like we are getting into the time range where an OS
upgrade would be reasonable to do, but not yet critical.


#50 of 81 by tod on Wed Sep 27 16:57:48 2006:

 The change is absolutely non-urgent, so I don't see much reason
 to do it before then.
How about: "Why not?"
If there are staff folks willing to perform upgrades or implement standards
then why stop them? 
If a major upgrade or emergency is the prerequisite for module improvements
then lets simply state it so nobody gets too invested in the garage conference
in discussions under false pretenses.


#51 of 81 by cross on Wed Sep 27 19:35:50 2006:

Regarding #49; I think that's sensible, though another couple of points I'd
throw out are that (a) this doesn't necessarily involve any downtime, and (b)
there's nothing that says you can't put the pieces in slowly.  For instance,
the current login code handles both OpenBSD's native password format and
grex's.  We could modify (potentially) plop in the new version of newuser at
any time with no effect on existing users at all.  Similarly, the passwd
command could be put in at any time.  The changes to wnu were just to the
Makefile (to get it to link against some the stuff I added to newuser to
support the OpenBSD hash format).  That could be done at any time.  A
potential plan could be to pick the least frequently used of these commands,
put it in, watch for trouble for a few weeks, move in the next
least-frequently used command, watch for trouble, etc.  The slight advantage
over doing it all during an upgrade is that *if* there's a problem and the
changes need to be backed out (and it's not discovered during the upgrade
itself) you aren't stuck backing everything out at the same time.

I also agree with Todd that it's not *so* risky as to be undoable before the
next upgrade.

I'd champion the middle ground, piecemeal approach, so that it could be backed
out at the first sign of trouble.


#52 of 81 by tod on Wed Sep 27 19:37:41 2006:

re #51
 I'd champion the middle ground, piecemeal approach, so that it could be
 backed out at the first sign of trouble.
I'm betting anything you suggest "fixing" will get the kebosh if it has any
vested ego behind it.


#53 of 81 by cross on Wed Sep 27 22:10:19 2006:

It's up to them to prove you wrong.


#54 of 81 by tod on Wed Sep 27 22:33:04 2006:

re #53
Yes, I'm baiting.  Thanks for waving your arms and jumping on the pier.


#55 of 81 by cross on Wed Sep 27 22:40:57 2006:

You lost me, coach.


#56 of 81 by gull on Mon Oct 2 23:02:39 2006:

My feeling is that altering the login routine to change hashes is an 
unnecessary complication.  If you just set passwd up to use the 
standard hash, normal password expiration will eventually get us 
switched over.  (Assuming passwords still expire...come to think of it, 
mine hasn't in a while.)


#57 of 81 by cross on Mon Oct 2 23:08:09 2006:

They don't; I think password expiration got turned off with the move to
OpenBSD on the i386.


#58 of 81 by cross on Sat Oct 7 05:44:54 2006:

So, Steve said we won't do this without discussion.  Marcus posted some
comments but hasn't responded to the latest round of responses.  Where do
people sit with this?


#59 of 81 by gull on Sat Oct 7 20:26:47 2006:

It goes into the Grex Process, where people talk it to death until
everyone loses interest, and eventually it's let slide unless some kind
of disaster happens.  This is very similar to the Seattle Process, which
is how transportation issues are managed here in the Pacific Northwest.


#60 of 81 by cross on Sat Oct 7 20:56:24 2006:

How true.


#61 of 81 by tod on Sat Oct 7 21:04:12 2006:

re #59
The light rail is on track but I know what you mean if you're referring to
the viaduct.


#62 of 81 by spooked on Sat Oct 7 22:24:27 2006:

I was about to laugh...  but, then I realised this is really quite sad 
cause it could not be more true.



#63 of 81 by gull on Sun Oct 8 07:25:59 2006:

Re resp:61: The viaduct, the 520 bridge, the monorail...take your pick.


#64 of 81 by tod on Sun Oct 8 16:29:32 2006:

Too true
Now if only the Army Corps of Engineers would step up to replace the Viaduct
since they originally made it and if Nicholls and the Seattle circus would
keep their noses out of roadway decisions then...
Monorail should be strictly a mayor's call, imo


#65 of 81 by cross on Fri Oct 20 01:21:09 2006:

An interesting discussion with Solar Designer, the author of the ``John the
Ripper'' software cracker.  He discusses password security and the OpenBSD
bcrypt algorithm.

http://www.securityfocus.com/columnists/388/2


#66 of 81 by cross on Fri Oct 20 13:36:26 2006:

As I read over my responses, I'm amazed by the number of typos I make.


#67 of 81 by cross on Fri Oct 20 13:39:12 2006:

Btw- as an experiment, I grafted support for grexhash into John the Ripper.
It was pretty easy; it took about an hour.

Also, regarding OpenBSD upgrades: OpenBSD only supports upgrades between
consecutive releases; grex is running OpenBSD 3.8 now.  To do a supported
upgrade, it would have to upgrade to OpenBSD 3.9 and then to 4.0.

I don't think skipping releases is a particularly good idea.


#68 of 81 by cross on Mon Oct 23 03:30:47 2006:

So this was proposed over a month ago, and serious discussion stopped about
that long ago.  What's the deal?


#69 of 81 by naftee on Tue Oct 24 02:07:06 2006:

that's GreX for you :(


#70 of 81 by cross on Tue Oct 24 02:34:06 2006:

Yeah, it is.  Sad.


#71 of 81 by null on Sun Mar 11 09:08:29 2007:

*sings* Time keeps on slippin... into the future....


#72 of 81 by cross on Sun May 13 03:04:52 2007:

I implemented this about a month ago.  We now have the majority of grex users
using bcrypt'ed passwords.


#73 of 81 by cross on Sun Jul 1 04:28:13 2007:

As of right now, all but 15 or so users are using bcrypt'ed passwords.  Had
we plugged this in back in September, it would be down to three or four.


#74 of 81 by jared on Sun Jul 1 15:41:55 2007:

yup, made me login :-P


#75 of 81 by cross on Sun Jul 1 17:25:44 2007:

Welcome back!  :-)


#76 of 81 by cross on Tue Jul 3 02:33:47 2007:

We're down to exactly one user using the grexhash system.  If we can
get that user to login, we can safely eliminate the custom hashing code
in the coming upgrade.


#77 of 81 by gull on Wed Aug 22 17:08:54 2007:

That might be me. I just tried to change mine, but it won't let me. I get
'passwd: Permission denied.'


#78 of 81 by cross on Wed Aug 22 18:11:13 2007:

No, it's not you, but the problem with changing your password is almost
certainly that you have a custom PATH that doesn't include /suid/bin before
/usr/bin.


#79 of 81 by gull on Wed Aug 22 19:04:16 2007:

Looks like the problem is my path includes /usr/local/bin before /suid/bin. I'm
not sure how that's happening. I don't set PATH in my .profile.


#80 of 81 by cross on Wed Aug 22 20:58:36 2007:

Hmm; that's actually right.


#81 of 81 by cross on Wed Aug 22 21:00:53 2007:

Okay, there's a wrapper script in /usr/local/bin that had the path to the real
password changing utility incorrect.  I have corrected it.


There are no more items selected.

You have several choices: