Cisco NAC Appliance
Cisco NAC Appliance, formerly Cisco Clean Access, was a network admission control system developed by Cisco Systems designed to produce a secure and clean computer network environment. Originally developed by Perfigo and marketed under the name of Perfigo SmartEnforcer, this network admission control device analyzes systems attempting to access the network and prevents vulnerable computers from joining the network. The system usually installs an application known as the Clean Access Agent on computers that will be connected to the network. This application, in conjunction with both a Clean Access server and a Clean Access Manager, has become common in many universities and corporate environments today. It is capable of managing wired or wireless networks in an in-band or out-of-band configuration mode, and Virtual Private networks in an in-band only configuration mode.
Cisco NAC Appliance is no longer in production and no longer sold as of the early 2010s. Mainstream support ending in 2015. Extended support ending in 2018.
Clean Access Agent
The Clean Access Agent resides on the client's machine, authenticates the user, and scans for the required patches and software. Currently the Clean Access Agent application is only available for some Windows and Mac OS X operating systems ; most network administrators allow clients with non-Windows operating systems to access the network without any security checks.Authentication
After successfully authenticating via a web interface, the Clean Access Server will direct new Windows based clients to download and install the Clean Access Agent application. Once installed, the Agent software will require the user to re-authenticate. Once re-authenticated, the Agent software will typically check the client computer for known vulnerabilities to the Windows operating system being used, as well as for updated anti-virus software and definitions. The checks are maintained as a series of "rules" on the Clean Access Manager side. The Clean Access Manager can be configured to check, install, or update anything on the user's system. Once the Agent application checks the system, the Agent will inform the user of the result – either with a success message, or a failed message. Failed messages inform the user of what category the system failed, and instruct the user on how to proceed.Any system failing the checks will be denied general access to the network and will probably be placed in a quarantined role. Quarantined systems are then typically given a 60-minute window where the user can try to resolve the reason for quarantine. In such a case, the user is only allowed connectivity to the Windows Update website and a number of antivirus providers, or the user may be redirected to a Guest Server for remediation. All other traffic is typically blocked. Once the 60-minute window expires, all network traffic is blocked. The user has the option of re-authenticating with Clean Access again, and continuing the process as needed.
Systems passing the checks are granted access to the network as defined by the assigned role on the Clean Access Manager. Clean Access configurations vary from site to site. The network services available will also vary based on Clean Access configuration and the assigned user role.
Systems usually need to re-authenticate a minimum of once per week, regardless of their status; however, this option can be changed by the network administrator. Also, if a system is disconnected from the network for a set amount of time, the user will have to re-authenticate when they reconnect to the network.
Windows Updates
Clean Access normally checks a Windows system for required updates by checking the system's registry. A corrupted registry may keep a user from being able to access the network.Security Issues and Concerns
User Agent Spoofing
The Clean Access Server determines the client's operating system by reading the browser's user agent string after authentication. If a Windows system is detected, then the server will ask the user to download the Clean Access Agent; on all other operating systems, login is complete. To combat attempts to spoof the OS in use on the client, newer versions of the Server and Agent also probe the host via TCP/IP stack fingerprinting and JavaScript to verify the machine's operating system:By default, the system uses the User-Agent string from the HTTP header to determine the client OS. Release 3.6.0 provides additional detection options to include using the platform information from JavaScript or OS fingerprinting from the TCP/IP handshake to determine the client OS. This feature is intended to prevent users from changing identification of their client operating systems through manipulating HTTP information. Note that this is a "passive" detection technique that only inspects the TCP handshake and is not impacted by the presence of a firewall.