One of the powerful features of Nessus is its ability to perform patch auditing for many different operating systems over many different protocols. Most Nessus users understand that Nessus supports UNIX audits with the Secure Shell protocol and that it can also log into Windows systems. This blog entry will discuss using Telnet as a method for Nessus to perform patch auditing.
Who is Still Using Telnet?
More organizations use Telnet than the average IT security professional realizes. There are a wide variety of international, licensing and compatibility issues that may have forced organizations to deploy Telnet.
If an organization has a requirement to audit all remote access to sensitive UNIX systems, it is sometimes more efficient to require Telnet usage and then replay each of the sessions with a tool like NetWitness. The alternative would be to run 'process accounting' on each of the remote UNIX systems which could be a performance or administration burden.
At Tenable, when the remote Telnet exploit against Solaris 10 and 11 was publicized earlier this year, we received a wide variety of calls from government, Internet providers and commercial business who not only had Telnet enabled, but wanted to make sure they could detect this vulnerability as well as exploits directed against the vulnerable systems. A general rule seemed that if an organization did have Telnet, they were not confident to be able to patch the vulnerabilities quickly.
Performing Nessus UNIX Patch Audits With Telnet
For Nessus 3 to perform a UNIX patch audit, you must configure a vulnerability scan with at least three parameters:
- Credentials which can enumerate patches. This is a username and password of the remote system.
- You must select a Nessus plugin family of patch audits you want performed.
- You must force the patch auditing to occur over Telnet.
Below is a screen shot of configuring the NessusClient 3.0 interface to perform a UNIX audit through Telnet. Results of a scan against a CentOS system over Telnet are also shown.
When selecting a username and password, keep in mind that if you harden a UNIX system, the 'root' user might not be allowed to log in over Telnet. If you use a non-root user account, a hardened system might not allow a non-administrator to be able to enumerate patches.
When selecting a Nessus plugin family, be sure to enable the set of patches for the operating system you are targeting. For example, if you are auditing Solaris, a default scan won't automatically enable the Solaris if you provide credentials. You can enable more operating systems than you need and Nessus will automatically use the patch audits just for the particular system being scanned.
And lastly, if the vulnerability policy does not specifically say to perform patch audits over Telnet, the scan will attempt to perform them over Secure Shell. The screen shot above shows a checkbox item to force the scan to occur over Telnet. Nessus also supports other clear text protocols such as rlogin. If your Nessus client does not present these scan options for your vulnerability policy, you may be connecting to an older Nessus 2 scanner or one not produced by Tenable.
Telnet Security Concerns
This blog is not an effort to encourage people to switch to Telnet. However, if Telnet is your only option, Nessus can still be used to perform patch audits of those systems. Having said that, there are three really good security concerns you should be aware of when using Telnet:
- The username and password are in the clear and can be easily sniffed.
- The session itself is vulnerable to hijacking where a 3rd party can make it seem like you typed something you didn't.
- The contents of the session are viewable to anyone else with access to the network.
If your organization has good physical control over the network such that there are no compromised systems or potentially hostile networks carrying your traffic, these concerns can be mitigated. Being able to prove this assumption though is rather difficult.
For More Information
We've published several blog articles about performing patch auditing with Nessus and these are listed below: