[EXT] Using One TIme Passwords with FreeRadius

Brian Julin BJulin at clarku.edu
Thu Apr 29 16:25:03 CEST 2021

radius.pkoch at dfgh.net <radius.pkoch at dfgh.net> Wrote:
> If a one time password turned out to be correct, it will
> be reused by the supplicant many times.

...this is why MFA is generally not used as a WiFi authentication method.

There is a vendor-specific solution to this with Aruba WiFi... they have a specially
hacked up WPA-Personal mode called MPSK where each device has it's own secret
rather than a shared network-wide secret.  How long that password is good for
is controlled by the device's network registration, which is done by MAC address
and is tunable.  There's a self-service registration server and it has flexible enough
AAA tie-ins that you can integrate MFA to logging into that server... so users that
haven't done this get dumped where they can only get to that server.

It's still WPA-PSK which has no DH exchange so an active attacker could potentially
compromise a secret.. they'd only get a device-specific secret but MAC addresses
can be spoofed.  So it's not perfect.  Note that EAP-PEAP-MSCHAPv2 on many types
of devices is also subject to active attack because the certificate is not pinned so the
device will accept any valid certificate...  unless you properly set it up to (and on Android
you cannot restrict your CA.)  Properly securing it involves going deep into configuration

And yes, the MPSK solution also falls to crap with MAC randomization, so you
have to get the user to turn that off or set it to per-network.  Which may be easier
than getting them to configure an EAP method, but still has them going into their
settings rather than just typing in a password.  (A humorous aside,  just after adding
MAC randomization some Android installs broke inner-tunnel-IDs so you cannot
anonymize federated authentications anymore... way to go "privacy protection"!)

Hopefully implementing WPA3-SAE will force vendors to fix this whole situation, but
they'll probably just find a brand new way to screw things up.

As Alan noted, network layer security is only one layer of a properly secured network.
It's basically just there to keep out the rabble so real security threats are not drowned
out in your log files.  It really isn't the place for MFA, and you aren't really doing MFA
if your "one time" passwords are just cached for X hours.  Use MFA to control access
to self-service registration servers and call it a day.

More information about the Freeradius-Users mailing list