Cisco AnyConnect Secure Mobility Solution review
By Joel Snyder | Network World US | Published: 15:06, 22 March 2011
Putting the pieces together
Cisco Secure Mobility Solution is not just a VPN toolkit. It's about enforcing enterprise security policy when staff members are both in and out of the office. That means you'll need to spend some time thinking about your security policy before you begin configuration.
One of the important things to remember about the AnyConnect client is that it is "always on," meaning that it enforces security policies based on the location of the user, even when there is no tunnel in place. The AnyConnect client periodically connects to the ASA even when the client is not running, you'll see these little 20 packet exchanges to the HTTPS port of the ASA as it verifies that the ASA is alive and well and doesn't have a new policy to hand out.
You can change the security policy on the fly, so you don't have to get it perfect before you start your deployment, but it's a good idea to know where you want to end up before you start. Because the configuration tools within ASDM are so complicated, the only way to avoid getting lost is to zero in on what you want to accomplish. Building policy is only easy to do if you know what you want to enforce.
Cisco could have done a much better job in ASDM of making things consistent and usable. In the VPN part of the GUI alone, there are dozens of options and a confusing and contradictory set of terms. This makes it easy to make mistakes, or build a less secure deployment because you didn't get everything done correctly.
For example, split tunnelling can be done with a much higher level of granularity than was available previously, a great security improvement. But digging out the different features and getting them properly configured involves multiple screens and "Advanced" tabs that have to be opened. The result is that it's easier to not use this new feature, and have a less secure deployment.
While much of the VPN feature set can be configured using the command line interface (CLI), making full use of the feature set requires you to use ASDM. The basic encryption and tunnelling tools are all CLI-based and CLI-debuggable, but some parts of the client-side policy configuration rely on hidden files on the internal flash that are best left to ASDM to keep straight.
We built a basic ASA firewall using the CLI, and then we stuck entirely with ASDM. Once we got all of the licensing pieces worked out, our final configuration with RADIUS authentication, endpoint security checking, and web-based downloading of the AnyConnect client from the ASA appliance only took about an hour.
But that configuration was done with the help of one of Cisco's trainers. The solution has a lot of moving parts, and without hands-on guidance, we could have spent days covering the same territory. If you can possibly afford the time, sit down and read through the documentation or take some training.
Happy end users
The good news is that while the Secure Mobility Solution can be complex for network managers, it's a fantastic experience for end users. Think of yourself as throwing yourself on your sword to help everyone who's actually going to use the remote access VPN. No matter what platform we tested, Mac, Windows, and iPhone were in our lab, getting the client installed and operational was simple. If end users liked the old Cisco VPN client, they'll love AnyConnect, which has a modern feel and brings benefits beyond just VPN tunnels.
For example, on the Windows platform, AnyConnect client includes Network Access Manager (NAM), which is a full-fledged 802.1X supplicant for wired and wireless networks. Since AnyConnect client is meant to be used both on the corporate network and while roaming, integration of 802.1X features lets a single client package handle endpoint security and connectivity.
AnyConnect is your network access control (NAC) client (with 802.1X and endpoint security checking, remediation and enforcement) when in the office, and your VPN client (with IPSec and SSL transports, as well as the same endpoint security features) when on the road. Even better, the AnyConnect client can figure out where you are by using a feature called Trusted Network Detection, which looks at domain names and DNS servers being handed out via DHCP. This can help automate the process of choosing whether to use 802.1X and NAC or bring up a VPN tunnel. In our testing using an Enterasys C2 Ethernet switch, Trusted Network Detection and the 802.1X supplicant both worked without any hitches.
It's hard to describe how complete the AnyConnect client experience is without turning this test into a laundry list of features. Cisco has done a good job of covering all the bases, supporting both strict and loose security policies, as well as multiple deployment options (such as pre-installing the client or letting end users download it from the ASA appliance using a web browser) and authentication settings (such as whether the VPN client launches before the user logs into Windows or after). We tried a good assortment of these features and found that in this area the AnyConnect client worked as advertised.
We had mixed success with endpoint security posture checking. Basic host scanning is included as part of the ASA AnyConnect Premium licence, while remediation features (such as forcing an anti-malware update or turning on a desktop firewall) require the Advanced Endpoint Assessment licence.
Part of the difficulty in endpoint security within the AnyConnect client is that the policy is spread across different parts of ASDM. For example, you look for the presence of a particular antivirus package in one part of ASDM, but you look to make sure you're not executing in a virtual machine in a completely different part of the policy.
The ASDM management tool lets you build a posture checking decision tree using traditional flow chart symbols, a technique that looks suspiciously like the one F5 pioneered in their SSL VPN product. In any case, this configuration approach to endpoint posture checking is approximately 10,000% more understandable and scalable than Cisco's old approach based on the ACS RADIUS/TACACS server.
The AnyConnect client's endpoint security approach represents Cisco's current thinking on how to do both NAC and VPN posture checking in the same client. Cisco is continuing to avoid the Trusted Computing Group's open standards for posture checking, and has forged ahead with a single vendor solution, incorporating its own Cisco Secure Desktop and OPSWAT's endpoint posture checking toolkit together into a single nicely merged solution. (The Oesis Framework, an OPSWAT product, is a software library incorporated in other security products that detects the presence and state of a wide variety of endpoint security products.)
Overall, network managers will have to balance the simplicity of Cisco's strategy, which requires only a single client and no particular cooperation from the endpoint security vendor, with a lock-in to what Cisco and OPSWAT are willing to support.
Our experience with OPSWAT, which has shown up in both our NAC and SSL VPN security tests for years, has generally been good, although we have had recurrent difficulties getting consistent results when testing against our lab's standard antivirus package, Sophos. This experience was echoed in this test, where different configurations of the same antivirus package gave different results in the AnyConnect client. Network managers using the AnyConnect client to do endpoint posture checking will want to experiment with their own configuration and endpoints to avoid false positive and negative results.
Web security goes to the cloud
Cisco's Secure Mobility Solution has three specific strategies for protecting end users from the vast wasteland of the Internet: endpoint security, cloud-based security and enterprise proxy protections.
On the endpoint, the AnyConnect client with its Cisco Secure Desktop feature set doesn't provide much protection itself (beyond a basic personal firewall), but can be used to detect the state of endpoint security and, with the purchase of an Advanced Endpoint Assessment licence, perform some limited controls.
The second strategy, cloud-based security is offered in conjunction with ScanSafe, a recent Cisco acquisition. Cisco has incorporated the ScanSafe client tool into the AnyConnect client and the ScanSafe policy management tool into ASDM, making the option of deploying cloud-based malware scanning and web filtering functionality fairly simple. ScanSafe licensing is completely separate from all other Secure Mobility licensing, and ScanSafe is only supported on Windows platforms.
While the integration makes it easy for an enterprise to select cloud-based scanning, we think that most enterprises will see cloud-based scanning vs enterprise proxy protections as an "either/or" choice. From a policy point of view, Cisco has put a very light touch on the whole ScanSafe interface.
For example, while the AnyConnect Client has a trusted network detection feature, ScanSafe also has a similar feature. Rather than combine the two, each runs independently, letting ScanSafe work in a non-AnyConnect environment. Similarly, all of the web-based security policies established on the IronPort S-Series web proxy are completely independent of the policies set up for ScanSafe. You can't reuse any of the components and you can't easily translate the policy from one to the other.
We chose to focus on the third type of web security: the web proxy. Cisco's approach to applying web-based security to VPN users requires a tight linkage between the ASA VPN concentrator and the S-series web proxy, in order to transfer authentication information to the web proxy. Making that linkage is very simple, you just put a common port number and shared secret into both devices, click the "test" button, and if everything is correct, you're done.
The ASA sends the username, but not any group membership information, over to the IronPort S-series, so we had to link to our Active Directory (NTLM or LDAP are supported) to get this information. Once that was settled, we were able to apply user- and group-based web security policies.
One of the most important parts of the integration between the AnyConnect client, the ASA appliance, and the IronPort S-Series is the automatic download of proxy information to AnyConnect clients. We tested this with Windows (Internet Explorer), Mac (Safari, Chrome and Firefox) and iPhone systems all running the AnyConnect client and had seamless experiences browsing through the VPN tunnel, passed to the IronPort S-Series proxy, and off to the Internet.
The IronPort S-series has a fairly standard set of protections, including URL filtering (for example, blocking gambling sites), malware scanning with two different engines (Webroot and McAfee in our test system), and web reputation checking, used to block access to known bad web pages or objects. The IronPort S-series also supports sanctioned man-in-the-middle, a way to "break in" to the SSL conversation by pretending to be the encrypted web server with a fake public key infrastructure certificate.
We briefly tested the malware scanning and URL filtering. As with all URL filtering products, we had a very high success rate, but were able to slip through a few URLs in violation of policy. A selection of 10 recent viruses transmitted into our test lab network were all caught by the malware scanner.
We 'like' the Facebook controls
A new feature in the IronPort S-Series is application visibility and control. This lets the network manager monitor and block various web-based applications directly, separately from the URL filtering part of the product. The version we tested is more of a proof-of-concept than a fully-baked application visibility tool, with only eight categories, including "Blogging," "Facebook," "IM," "LinkedIn," "Media," "P2P/File Sharing," "Conferencing" and "Social Networking."
These are a bit of a mish-mash of different applications, many of which could be caught by simple URL filtering. However, the idea behind application visibility appears to go beyond the simple block/allow/warn of URL filtering, and get more specific in the controls.
For example, Facebook is broken down into 15 subcategories, such as "Facebook Applications: Games" and "Facebook Applications: Education," which would allow you to differentiate different types of Facebook usage, blocking those you don't allow. In our testing, the S-Series was able to differentiate different types of Facebook usage and blocked access accordingly. In fact, Facebook is one of the most sophisticated sets of controls. For example, you can block all Facebook Events, or you could just block posting of events but allow "Like" of events. In LinkedIn's controls, you can block the employment section separately from the messaging section, or you can block job searches separately from job postings.
In our testing, the IronPort S-Series did exactly what it said it would, identify applications and apply application controls, including bandwidth limits, as a web proxy. However, it's clear that for this to work, you need a proper configuration.
For example, now that many Facebook users are selecting to encrypt their sessions, you must use the sanctioned man-in-the-middle to decrypt the SSL, or there's no possibility of applying fine-grained application controls. Similarly, if you want to control BitTorrent, you must force the traffic through the proxy by blocking VPN users who try and go around the proxy.