Expert Technology and Information Security Consultants

Blog

NAC, RADIUS Message Authenticator and XenServer VIF Checksums

Posted by: Nolan Garrett on 2/9/2012

During a Network Access Control (NAC) implementation project we identified a strange issue with the RADIUS Message Authenticator attribute.  In our scenario, we had a Windows 2008 DC with the Network Policy Server (NPS) role installed. This server was virtualized on Citrix XenServer. In a previous configuration WPA2-Enterprise authentication had already been configured for secure wireless use, leading us to believe that the RADIUS configuration itself was solid.

What we kept finding was that wired clients would report "Authentication Failed" even though all settings appeared to be functional. In NPS we had configured the switch to not require the Message Authenticator attribute, even though the switch was sending this information (this was not configurable). NPS was reporting the following in the System event log on the NPS server:

An Access-Request message was received from RADIUS client XXX.XXX.XXX.XXX with a message authenticator attribute that is not valid.

Firing up Wireshark, it seemed as though everything was working fine, except for one thing - Wireshark was reporting the packet checksums as incorrect. After a few minutes of research, we found that standard behavior of RADIUS clients is to reject authentication requests if the Message Authenticator attribute doesn't check out - even if you haven't required this data to be sent.

There are a few known issues with the XenServer virtual interfaces. We found the solution to this problem was to modify the XenServer VIF configuration and set "Correct TCP/UDP Checksum Value" to True. After doing this (and restarting NPS), we were able to successfully authenticate without errors.

Create a trackback from your own site.

0 Comments

Leave A Comment



CAPTCHA image
Please enter the CAPTCHA phrase above.



Recent Comments

"Good stuff mr. Brayman. Worked like a charm! You should maybe mention that the port should be 443 - or is this perhaps a default when adding a _tcp SRV record? Can be added via dnscmd.exe like so: dnscmd . /recordadd zonename.local _autodiscover._tcp SRV 0 0 443 excfqdn.zonename.local. -Jonas" Read more
by Jonas Mellquist on Microsoft Lync Visual Voicemail

"...now have a salt. *crickets chirping*" Read more
by You have battery on The Future of the Battery

"Stephen, I'm glad you posted this. I saw your response to a classmate, and I enjoyed seeing your thoughts. This exact mentality is just what I expressed to a class of freshman/sophomores about my love of security. " Read more
by Jordan T on Getting started at Penetration Testing

Follow Us

  

Share This Page

Request Information