See What Your Attacker Sees with Scanning Tools
- Exercise 1: Scanning with Nmap
- Exercise 2: Scanning with SuperScan
- Exercise 3: Vulnerability Scanning with Nessus
- Exercise 4: Legion
- Exercise 5: hping2
Exercise 1: Scanning with Nmap
Description
It has been stressed over and over again that reconnaissance is key for an attacker to be successful. Professional attackers will take the time to learn as much about your environment as possible so that they can attack your weaknesses with as little resistance as possible. In order to slow the attacker down, it is crucial that you know what the attacker sees when he attacks.
To defend against attacks, you should examine your systems from the viewpoint of the attacker. Today, tools are available to not just the attackers, but to you. You can use the same tools to protect your systems that attackers use to break in to your systems. By utilizing the same tools as the attackers do, you can see what the attackers see, and then you can patch any vulnerabilities that might exist in your exterior defenses.
Nmap is a classic example of a reconnaissance tool. Reconnaissance tools are used to gather information about a site before actually launching an attack. If an attacker can gather enough information during reconnaissance, ultimate compromise of the network is trivial. Regardless of its development origins, Nmap is the most useful tool for network reconnaissance available to attackers and auditors alike.
Objective
The objective of this exercise is to introduce you to the features and role of Nmap in auditing systems. While the Windows NT ported version of Nmap has the same features as the Linux version and is covered in this exercise, given a choice between the two, the Linux version is the more stable and robust version.
Requirements
-
Hardware
-
Software
Intel-based system
Windows NT 4.0 SP (Service Pack) 4 or later, Windows 2000, or Windows 9x
Windows version of Nmapnt, available at http://www.eeye.com/html/Research/Tools/nmapNT.html
Linux version of Nmap, available at http://www.insecure.org/nmap/nmap_download.html
Challenge Procedure
The following are the steps you need to perform for this exercise:
-
Install Nmap and Nmapnt.
-
Perform a simple scan.
-
Perform a stealth scan.
-
Perform an OS identification.
-
Perform an OS identification and service selection.
Challenge Procedure Step-by-Step
The following are the detailed steps you need to complete to install Nmap:
-
First, you'll install NmapNT. Download NmapNT from http://www.eeye.com/html/Research/Tools/nmapNT.html. Unpack the NmapNT Zip file.
-
Next, install the winpcap drivers. Right-click your Network Neighborhood icon; then select My Network Places. Select Properties, and then choose your network adapter and either click Properties or select the Services tab. An alternative method is to click the Start menu, select Settings, Network and Dial-up Connections, and then select your network adapter. When it appears select Properties.
-
In the adapter's Properties screen, click Install.
-
In the Select Network Component Type screen, select Protocol and click Add.
-
In the Select Network Protocol screen, click the Have Disk button.
-
In the Install from Disk screen, click Browse and navigate to the DRIVERS directory where you installed NmapNT. The directory should be C:\Program Files\NmapNT\ DRIVERS. There should also be three subdirectories. Choose the one appropriate for your operating system.
-
In the Select Network Protocol screen, select Packet Capture Driver and click OK.
-
The Files Needed screen appears. Click OK.
-
Next, click OK and Close until you are returned to the desktop. Then, reboot your system.
-
Now, you'll install Nmap for Linux. Download the Nmap RPM (RedHat Program Manager) from http://www.insecure.org/nmap/nmap_download.html. Use the rpm command to install the nmap rpm file:
-
Now, perform a simple scan. Use 127.0.0.1 for the IP address for each of the following steps. Open a command prompt and enter the following command:
-
Next, check to see if the host is really down as opposed to blocking ping probes using the following command:
-
Next, you'll perform a stealth scan. Enter the following command:
-
Now, you'll perform an OS identification. Use the following command:
-
Next, in addition to OS identification, you will perform a service selection scan.
Figure 6.5 hello my name is inky
rpm -Uhi nmap-2.54-beta.i386.rpm
nmapnt 127.0.0.1
NOTE
The commands entered are identical for Nmap and NmapNT.
nmapnt P0 127.0.0.1
NOTE
The P0 (the 0is a zero) option tells Nmap to scan the IP address regardless of whether it allows Internet Control Message Protocol (ICMP) traffic to it.
nmapnt sS P0 p135 127.0.0.1
NOTE
The sS option performs a SYN scan instead of the default TCP connect scan.The p option specifies the ports to scan.
Challenge Question: What is the difference between a TCP-connect scan and a SYN scan?
nmapnt sT O 127.0.0.1
NOTE
The sT option is used for the TCP-connect scan. It is not required because it is considered the default type of scan.The O option attempts to perform OS fingerprinting by analyzing the predictability of the sequence numbers returned from the target device. This option can also add a considerable amount of time to the scan length. Note that it's not 100% accurate. Use it to get an idea of the number returned, but don't use it for accuracy.
Challenge Question: How accurate is the operating system estimate of the previous step?
Additional Reading
Fyodor. "The Art of Port Scanning," http://www.insecure.org/nmap/p51-11.txt.
Fyodor. "Remote OS Detection via TCP/IP Stack Fingerprinting," http://www.insecure.org/nmap/nmap-fingerprinting-article.txt.
Summary
Nmap is an extremely powerful tool that allows administrators, as well as attackers, to determine what services and ports are open on a particular device. It can be run in many different modes and used to gather various types of data. While running in default mode, most properly configured IDS systems will detect its presence. There are ways to configure Nmap, such as running the SYN scan, which has the capability of bypassing several of the IDS systems on the market.
Nmap scans of your network should be run frequently to verify that new services or ports have not been unknowingly added to your environment. Make sure that you are not just scanning a few ports and that you are scanning UDP as well as TCP. Many of today's trojans not only sit on high ports (ports greater than 1023), but they also try to hide themselves on UDP ports because many administrators disregard them.
This quote, taken from Info World magazine, summarizes it best:
"If your goal is to understand your network from a 40,000-foot view, then Windows port scanning tools will suffice. But if you're serious about your security and looking for the holes that crackers will find, then take the time to install a Linux box and use nmap."