Backslash in password failing with NT-Password hashes

Dave Duchscher daved at nostrum.com
Mon Oct 27 14:27:25 CET 2014


On Oct 21, 2014, at 8:22 AM, Dave Duchscher <daved at nostrum.com> wrote:

> We had a strange case where a users was unable to authenticate with our VPN server but could on wireless.  I think I have tracked down the problem and am hoping I can get help with a fix.
> 
> My test environment is a stock freeradius 2.2.5 server with default configuration files. The only change was to manually add the NT-Password to check to the authorize section.
> 
> update control {
>   NT-Password := 'CD09F6070B94F498FC9D6668800E6854';
> }
> 
> That is the NT hash for the password 'pass\word'.  Test client is radtest on the same system.
> 
> radtest -d /usr/local/etc/raddb -t pap -x username pass\\word localhost 100 testing123
> 
> Testing this with the NT hash for the password 'password' works.  When I test with password 'pass\word', I see the wrong NT hash being generated so authentication fails.
> 
> Tue Oct 21 08:03:54 2014 : Info: [pap] login attempt with password "pass\word"
> Tue Oct 21 08:03:54 2014 : Info: [pap] Using NT encryption.
> Tue Oct 21 08:03:54 2014 : Info: [pap] 	expand: %{User-Password} -> pass\\word
> Tue Oct 21 08:03:54 2014 : Info: [pap] NT-Hash of pass\\word = 5a022f09a08097a8f2ca5d16ef3df23e
> Tue Oct 21 08:03:54 2014 : Info: [pap] 	expand: %{mschap:NT-Hash %{User-Password}} -> 5a022f09a08097a8f2ca5d16ef3df23e
> Tue Oct 21 08:03:54 2014 : Info: [pap] Passwords don't match
> 
> From what I am seeing it look like the password is sent across correctly but then the backslash is escaped and that escaped result is hashed which gets us to the wrong hash.
> 
> Any ideas?

I fixed my problem by modifying rlm_pap to create the NT-Hash directly instead of using radius_xlat to send the request to the rlm_mschap module.  This avoids all the escaping and expansion issues of radius_xlat with passwords that have characters like backslash, dollar sign, and curly braces.

--
Dave



More information about the Freeradius-Users mailing list