230 likes | 358 Views
Intrusion Detection System Marc Nemati April 19, 2011. Software Architecture. Intrusion Detection. Port Scan Detection Many attacks begin with locating an open port to launch the attack (Port Scan) Many algorithms and methods to determine if a port is open. Project Overview.
E N D
Intrusion Detection System Marc Nemati April 19, 2011 Software Architecture
Intrusion Detection • Port Scan Detection • Many attacks begin with locating an open port to launch the attack (Port Scan) • Many algorithms and methods to determine if a port is open
Project Overview • Check at any given time, if any system on a network is being port scanned • Once a port scan is detected, return the following crucial information to the network admin • IP address • MAC address • Ports Scanned • Duration of Scan
Functionality • Display the Source MAC and IP addresses • Check the type of transport protocol used by looking at the protocol field of the IP packet. • If it a TCP or UDP packet extract and display the source and destination port numbers. • Specifically recognize all of the following attacks; • TCP SYN scan • UDP port scan • IP protocol scan • TCP Maimon scan • TCP FIN, and Null scan • When a scan is detected, display the number of ports scanned, originating IP address, destination IP, and list all the destination port addresses.
Design 1 – Level 2 Main isTCP_SYN_attack() getDeviceList() PortScanDetector isTCP_FIN_attack() PacketHandler isTCP_Maimon_attack() run() isIPproto_attack() detect() receivePacket() isUDP_attack() Packet_list
Design 2 – Level 2 Main Network isTCP_SYN_attack() getDeviceList() PortScanDetector isTCP_FIN_attack() PacketHandler isTCP_Maimon_attack() run() isIPproto_attack() receivePacket() detect() isUDP_attack() sendPacket() Packet_list
Pros and Cons Object - Oriented Client/Server
Rational For Implementation • Object Oriented • Java • Cross Platform (Windows/Linux) • Threading • Used due to Large number of packets on the network • Efficiency • Memory Management • Reduces Network Overhead