Authors: Rafeeq Rehman
Pages: 275
Publisher: Prentice Hall PTR
ISBN13: 9780131407336
ecurity is a big issue for all networks in today’s enterprise environment. Hackers and intruders have made many successful attempts to bring down high-profile company networks and web services. Many methods have been developed to secure the network infrastructure and communication over the Internet, among them the use of firewalls,encryption, and virtual private networks. Intrusion detection is a relatively new addition to such techniques. Intrusion detection methods started
appearing in the last few years. Using intrusion detection methods, you can collect and use information from known types of attacks and find out if someone is trying to attack your network or particular hosts. The information collected this way can be used to harden your network security, as well as for legal purposes. Both commercial and open source products are now available for this purpose. Many vulnerability assessment tools are also available in the market that can be used to assess different types of security holes present in your network. A comprehensive security system consists of multiple tools, including:
• Firewalls that are used to block unwanted incoming as well as outgoing traffic of data. There is a range of firewall products available in the market both in Open Source and commercial products. Most popular commercial firewall products are from Checkpoint (http://www.checkpoint.com), Cisco (http://www.cisco.com) and Netscreen (http://www.netscreen.com). The most popular Open Source firewall
is the Netfilter/Iptables (http://www.netfilter.org)-based firewall.
• Intrusion detection systems (IDS) that are used to find out if someone has gotten into or is trying to get into your network. The most popular IDS is Snort, which is available at http://www.snort.org.
• Vulnerability assessment tools that are used to find and plug security holes present in your network. Information collected from vulnerability assessment tools is used to set rules on firewalls so that these security holes are safeguarded from malicious Internet users. There are many vulnerability assessment tools including Nmap (http://www.nmap.org) and Nessus (http://www.nessus.org).
These tools can work together and exchange information with each other. Some
products provide complete systems consisting of all of these products bundled together.
Snort is an open source Network Intrusion Detection System (NIDS) which is
available free of cost. NIDS is the type of Intrusion Detection System (IDS) that is used for scanning data flowing on the network. There are also host-based intrusion detection systems, which are installed on a particular host and detect attacks targeted to that host only. Although all intrusion detection methods are still new, Snort is ranked among the top quality systems available today.
The book starts with an introduction to intrusion detection and related terminology.You will learn installation and management of Snort as well as other products that work with Snort. These products include MySQL database (http://www.mysql.org) and Analysis Control for Intrusion Database (ACID) (http://www.cert.org/kb/acid). Snort has the capability to log data collected (such as alerts and other log messages) to a database.
MySQL is used as the database engine where all of this data is stored. Using Apache web server (http://www.apache.org) and ACID, you can analyze this data. A combination of Snort, Apache, MySQL, and ACID makes it possible to log the intrusion detection data into a database and then view and analyze it later, using a web interface.
This book is organized in such a way that the reader will be able to build a complete intrusion detection system by going through the following chapters in a step-by-step manner. All steps of installing and integrating different tools are explained in the book as outlined below.
Chapter 2 provides basic information about how to build and install Snort itself.Using the basic installation and default rules, you will be able to get a working IDS.You will be able to create log files that show intrusion activity.
Chapter 3 provides information about Snort rules, different parts of Snort rules
and how to write your own rules according to your environment and needs. This chapter is very important, as writing good rules is the key to building a detection system. The chapter also explains different rules that are part of Snort distribution.
Chapter 4 is about input and output plug-ins. Plug-ins are parts of the software
that are compiled with Snort and are used to modify input or output of the Snort detection engine. Input plug-ins prepare captured data packets before the actual detection process is applied on these packets. Output plug-ins format output to be used for a particular purpose. For example, an output plug-in can convert the detection data to a Simple Network Management Protocol (SNMP) trap. Another output plug-in is used to log Snort output data into databases. This chapter provides a comprehensive overview of how these plug-ins are configured and used.
Chapter 5 provides information about using MySQL database with Snort. MySQL
plug-in enables Snort to log data into the database to be used in the analysis later on. In this chapter you will find information about how to create a database in MySQL, configure a database plug-in, and log data to the database.
Chapter 6 describes ACID, how to use it to get data from the database you
configured in Chapter 5, and how to display it using Apache web server. ACID is a very important tool that provides rich data analysis capabilities. You can find frequency of attacks, classify different attacks, view the source of these attacks and so on. ACID uses PHP (Pretty Home Page) scripting language, graphic display library (GD library) and PHPLOT, which is a tool to draw graphs. A combination of all of these results in web pages that display, analyze and graph data stored in the MySQL database.
Chapter 7 is devoted to information about some other useful tools that can be used with Snort.The system that you will build after going through this book is displayed in Figure 1-1 with different components.As you can see, data is captured and analyzed by Snort. Snort then stores this data in the MySQL database using the database output plug-in. Apache web server takes help
from ACID, PHP, GD library and PHPLOT package to display this data in a browser
window when a user connects to Apache. A user can then make different types of queries on the forms displayed in the web pages to analyze, archive, graph and delete data.
In essence, you can build a single computer with Snort, MySQL database,
Apache, PHP, ACID, GD library and PHPLOT. A more realistic picture of the system
that you will be able to build after reading this book is shown in Figure 1-2.
In the enterprise, usually people have multiple Snort sensors behind every router or firewall. In that case you can use a single centralized database to collect data from all of the sensors. You can run Apache web server on this centralized database server as shown in Figure 1-3.