Open marksteward opened 8 years ago
Yes, I'm painfully aware of this :cry: but the alternative is to allow plain text passwords over spacenet and then do PAP auth, and since not everyone will verify the certificate from our radius server it would be easy for someone to set up a fake spacenet ssid and just grab passwords...
(of course with cloudcrack 'grab passwords' and 'grab ms-chapv2 exchanges' are pretty much the same thing :disappointed: ).
In an ideal world there would be an EAP-*-SASL mechanisim and then we could use SCRAM-SHA1-PLUS, which has channel verification and so kills to birds with one stone. But unfortunatly vendor's C and M continue to squabble so we don't :/ :disappointed:
The other option is to use client side certs...
P.S. the hash's stored in ldap for the main auth is SSHA, there is a way to use the hash's used by the OS's crypt() function (The $X$wibble stuff), which could get us bcrypt, but we'd need to check that it works with all our apps.
In anycase I'll be playing with ldap stuff soonish to get it all in ansible (and move the ldap server to adminstuff or somewhere), so i'll have a look at that then.
What would happen if we set sambaNTPassword to !
, like we do sambaLMPassword?
Then ms-chap-v2 auth would fail on spacenet cos freeradius won't have either a plain text password or an NTLMv2 hash to compare against.
Hmm, looks like windows won't support PAP?
https://spacefed.net/wiki/index.php/Howto/Spacenet/Client_Windows_7
I think I've misunderstood something here. Are you saying we should force people to provide an NTLMv2 password because they should be using spacenet? Or that a radius server somewhere will crash because a user without an NTLMv2 password exists?
People don't have to use spacenet if they don't want to.
The radius server won't crash, it just won't be able to authenticate the user.
If you want to add code that a blank ntlmv2 password ends up in LDAP as '!' that would be fine, but it would need a warning on the LDAP page that then they won't be able to use spacenet.
Also if you want to add a check on the ldap page (in the javascript) that ssha_password != ntlmv2 password and refuse to add the passwords if not that would be good too.
This hash is likely to be of the same password as the bcrypted one, and so reduces the security of it. See also #105.