Nessus - The Swiss Army Knife of Vulnerability Scanning
Nessus has provided organizations with a wide variety of techniques for identifying vulnerabilities in your IT infrastructure. The foundation has long been proven, as Nessus will accurately identify vulnerabilities across the network, using credentials to gather patch level and other information, and assist with system hardening by performing compliance checks.
However, in recent years there have been significant improvements made to both the Nessus scanning engine and its feature set. Of course, over time Nessus has been able to consistently shave the time it takes to remotely scan systems and networks. In addition, Nessus has added support for threading and 64-bit platforms, and improved memory management. Alongside the continuous stream of performance improvements, we've introduced many new tools for the end user.
Here are the top 5 major new tools, in no particular order, that are now included with Nessus and SecurityCenter:
- Patch Management Server Integration - This represents the next generation of vulnerability scanning, and specifically those vulnerabilities presented by software flaws and missing patches. Nessus can login to your patch management server and find patch information about your targets. This information is then represented in the Nessus scan results, providing valuable data about which patches are not installed on the target and helping to eliminate confusion when security teams work with IT systems administrators.
- Botnet Hosts Identification - Nessus implements multiple plugins which aid in the detection of hosts participating in a botnet. Each target IP address is correlated against a list of known botnet hosts. If credentials are provided, the current incoming and outgoing connections and DNS servers being used are cross-referenced against the same list. Pages on website targets are checked for malicious content, indicating that your web server has likely been compromised.
- Exploit Database Correlation - For each vulnerability identified by Nessus, an attempt is made to correlate it to an exploit. Currently, Nessus will use private and public exploit databases, including Exploit DB, Core IMPACT, Metasploit, ImmunitySec's CANVAS, and ExploitHub. If a vulnerability is exploitable, but doesn’t require an exploit, Nessus will flag this condition (e.g., default passwords or authentication bypass vulnerabilities). Exploit correlation provides users with valuable data for risk analysis, patching priority, and penetration testing.
- Malicious Process Detection - Using credentials, Nessus will calculate a hash of each running process and cross-reference it against a large database of known malware. This technique has worked well in many organizations to catch malware that anti-virus software has missed, or on systems where anti-virus software may have been disabled or mis-configured.
- Mobile Device Management (MDM) Integration - When provided with credentials to either ActiveDirectory or Apple Profile Manager, Nessus will parse the information and identify mobile devices and their associated vulnerabilities. The most amazing part of this feature is the ActiveDirectory integration, as it uses information stored by ActiveSync to find vulnerabilities in any mobile device connecting to your Exchange server. So, even if you don't have a "fancy" MDM solution, you can still collect vulnerability data and enumerate the mobile devices accessing your infrastructure.
Example patch management integration reporting results. (Click for a larger image)
Exploitable vulnerabilities from the same scan results correlated to three different exploit frameworks. (Click for larger image)
Nessus Keeps Your Network in Check
Having performed vulnerability assessments for many years, in several different roles, I have come to better appreciate the flexibility Nessus provides. I’ve been in the position where I didn’t have credentials for end-user systems, so making use of an existing patch management system would provide an elegant solution. I lost track of how many times an administrator told me they’ll only give the highest priority to vulnerabilities for which there is an exploit. I've also seen too many systems become part of a botnet or contract malware because the administrator and/or end user believed anti-virus software to be up-to-date and configured properly. I've spoken to several researchers working on proving the exploitability of mobile device vulnerabilities, and I believe the threat is real. This underscores the importance of being able to identify devices accessing your network resources, and pointing out vulnerabilities on each of them.
I encourage Nessus users, whether you’ve been using Nessus for a long time or just started, to think differently about how you perform vulnerability assessments and take some time to include these new features in your processes. You’ll be pleasantly surprised at the results.