Security DevCenter
oreilly.comSafari Books Online.Conferences.


Installing and Configuring Nessus

by Nitesh Dhanjani

Unless you've been living under a rock for the past few years, it is quite evident that software vulnerabilities are being found and announced quicker than ever before. Every time a security advisory goes public, organizations that use the affected software must rush to install vendor-issued patches before their networks are compromised. The ease of finding exploits on the Internet today has enabled a casual user with little skills to launch attacks and compromise the networks of major corporations. It is therefore vital for anyone who has any hosts connected to the Internet to perform routine audits to detect unpatched remote vulnerabilities.

Network security assessment tools such as Nessus can perform automated detection of vulnerabilities. A vulnerability detection assessment usually involves three distinct phases.


In this phase, the software probes a range of addresses on a network to determine which hosts are alive. One type of probing sends ICMP echo requests to find active hosts, but does not discount hosts that do not respond -- they might be behind a firewall. Port-scanning can determine which hosts are alive and what ports they have open. This creates a target set of hosts for use in the next step.


O'Reilly Open Source Convention -- July 26-30, 2004 Portland, OR.

Nitesh Dhanjani will present Using and Extending Open Source Attack & Penetration Tools. It is vital to perform routine Attack & Penetration audits against your network posture to recognize and remediate vulnerabilities. In order to protect yourself from malicious attackers, you must first begin to think like them, and therefore audit your network before they do it for you. This talk will discuss the common Attack & Penetration methodology.
Register now and save!

In this phase, the software probes network services on each host to obtain banners that contain software and OS version information. Depending on what is being enumerated, username and password brute-forcing can also take place here.

Vulnerability Detection

The software probes remote services according a list of known vulnerabilities such as input validation, buffer-overflows, improper configuration, and so on.

Why Nessus?

You just can't beat free. There are commercial vulnerability scanners available and they may be useful in their own right, but consider that Nessus is comparable to some commercial scanners that can cost hundreds of thousands of dollars. In addition Nessus is open source, and its source is published under the GPL. As we will see in Part 2 of this article, you can write custom plugins for Nessus with NASL or C.

Nessus uses a client-server architecture. The Nessus server, nessusd, listens for incoming connections from the clients that can configure the server to launch specific attacks. In addition, nessusd authenticates the clients, allowing for each user to have individual access to specific functionality. Also, the communication between the client and the server is encrypted.

Therefore, the Nessus architecture and its free and open source nature are good reasons to award it high points. If you haven't already, give Nessus a try. Here's now to install it.

Installing Nessus

Brave users may attempt the following method that performs an automated installation:

[notroot]$ lynx -source | sh

The rest of us need to download the latest version of Nessus. First, install nessus-libraries:

[notroot]$ tar zxvf nessus-libraries-x.y.z.tar.gz
[notroot]$ cd nessus-libraries
[notroot]$ ./configure
[notroot] make
[root]# make install

Next, install libnasl:

[notroot]$ tar zxvf libnasl-x.y.z.tar.gz
[notroot]$ cd libnasl
[notroot]$ ./configure
[notroot]$ make
[root]# make install
[root]# ldconfig

Then, install nessus-core:

[notroot]$ tar zxvf nessus-core.x.y.z.tar.gz 
[notroot]$ cd nessus-core [notroot]$ ./configure
[notroot]$ make 
[root]# make install

If you are installing nessus-core on a server that does not have the GTK libraries and you don't need the Nessus GUI client, run ./configure with the --disable-gtk option.

If all went well, you are all set with the installation!

Note: if you want to update your Nessus installation with the latest plugins, run nessus-update-plugins as root.

Pages: 1, 2

Next Pagearrow

Sponsored by: