Bro: An Open Source Network Intrusion Detection System
|
|
|
- Edward Rich
- 10 years ago
- Views:
Transcription
1 Bro: An Open Source Network Intrusion Detection System Robin Sommer Computer Science Department TU München, Germany Abstract: Bro is a powerful, but largely unknown open source network intrusion detection system. Based on a sound design, Bro achieves its main goals separating policy from mechanisms, efficient operation in high-volume networks, and withstanding attacks against itself by using an event-driven approach. Bro contains several analyzers (e.g. protocol decoders for a variety of network protocols and a signature matching engine), which are by themselves policy-neutral but raise events as an abstraction of the underlying network activity. Based on scripts written in Bro s own powerful scripting language, the user defines event handlers to specify his environment-specific policy. We give an overview about the design and implementation of Bro, describe our experiences with deploying it in a large-scale research environment, and present some of our extensions. 1 Introduction Due to the enormous increase in the number of attacks seen on the Internet, network intrusion detection systems (NIDSs) are an important part of many security policies. In contrast to a host-based intrusion detection system, a NIDS usually taps the network at some central point, monitoring all traffic to detect malicious activity. Traditionally, two approaches to network intrusion detection are differentiated: a system using anomaly-detection relies on a definition of normal network activity and alerts if traffic deviates from this profile. Deviation is typically measured using statistics. On the other hand, misuse-detection systems use a library of specific attack characteristics and generate an alert whenever they locate one of them in the monitored traffic. The draw-back of misuse-detection is the difficulty of recognizing previously unknown attacks. While anomaly-based NIDSs have the potential for this, they often suffer from a high number of false-alarms. The most common form of misuse detection is signature matching: the NIDS identifies an attack by recognizing a specific byte sequence within the network packets. Most commercial systems follow this approach [Jac99] as does the well-known open source software Snort [Roe99]. Taking a closer look at open source NIDSs, we notice that Snort is the only one widely deployed in real networks. It appears that most people are not aware of alternatives. This is interesting for three reasons. First, in other areas of security there usually is a variety of open source software available. Second, Snort shows some technical limitations that indicate that it is not always an optimal solution. Finally, there is at least one other very powerful open source system that is largely unknown: Bro [Pax99, Bro]. In this work, we present an overview of Bro. After discussing its main design goals, we describe Bro s general architecture. We show several examples of the various ways
2 274 Robin Sommer Bro performs its analysis, and discuss some of our own experiences during deploying and actively extending Bro, including some of the problems we encountered. Finally, we present some future work. Bro originated as a research system. It is designed and developed by Vern Paxson of ICSI s Center for Internet Research (ICIR), Berkeley. He started the project in 1995 at Lawrence Berkeley National Laboratory (LBL), and Bro is under active development since then. It was first published in Major extentions of Bro are contributed by people at the University of California, Berkeley and Princeton University, New Jersey. Among other locations, Bro is operationally deployed at the University of California, Berkeley and at LBL. Our group at TU Munich, Germany (formerly at Saarland University, Germany) has used and extended Bro since Deploying it in a large-scale research environment at a 622 MBit/s Internet uplink of the Leibniz Rechenzentrum, Munich, we are faced with problems which are often underestimated when using NIDSs in smaller networks. Bro s fundamental design goal is to separate mechanism and policy. While Bro implements very sophisticated state management and protocol analysis, it is by itself policyneutral. The network activity is abstracted into events which are passed from Bro s core to an upper layer, the policy layer. On this policy layer, the administrator defines environment specific constraints by writing custom scripts in a powerful scripting language. As a consequence of this design, Bro is neither fundamentally anomaly-based nor misuse-based. Instead it supports both approaches and, in fact, the default policy scripts shipped with Bro implement examples of anomaly- as well as misuse-detection. Its integrated signature matcher provides a superset of Snort s capabilites and may even use Snort s signatures by means of a converter (see 3.5). Like most NIDS, Bro is based on a packet monitor that listens to network traffic at some central point of the network. By closely following the communication between every two connection endpoints, Bro can reconstruct the semantics of the connections. For each of them, Bro keeps comprehensive state information. For example, on the transport layer, Bro reconstructs TCP sessions, which includes reassembling the data stream and handling of retransmissions. On the application layer, it implements a variety of protocol-specific analyzers, e.g. for HTTP, SMTP, DNS and many others. The per-connection state is fully accessible by the policy layer, so policy scripts can base decisions on the semantics and the context of a connection rather than having to inspect individual packets. Of course, while being very powerful, Bro also has limitations. It needs more time to understand and deploy than a system like Snort. Currently, the latest stable version is quite old while the development version is cutting-edge, but not very well tested yet in operational use. Perhaps most importantly, due to its origins as a research system some parts are quite unpolished. While there is a mailing list for coordinating development efforts, Bro needs more contributors to make it a general production-level system. Furthermore, more feedback is needed about the problems that arise in networks of different scales. 2 Design and implementation of Bro Bro consists of three major parts : (i) the packet capture, (ii) the policy-neutral event engine which contains various low-level components like protocol analyzers, and (iii) the
3 Bro: An Open Source Network Intrusion Detection System 275 policy layer which defines the environment-specific constraints based on scripts supplied by the user. Starting from Bro s design goals, we will discuss each part in turn. 2.1 Design Goals Bro s design has been guided by a set of goals [Pax99]. The most important ones are: Separation of mechanism and policy: A network security policy depends heavily on the specific environment. For example, while a public research institute can often provide full Internet access to all internal systems, a corporate network may have to impose severe restrictions. By clearly separating the mechanisms needed to monitor (and potentially to enforce) a particular policy from its specification, we gain both simplicity and flexibility. Efficient operation suitable for high-speed, large-volume monitoring: With network bandwidths routinely reaching one Gbit/s these days, any NIDS has to be highly efficient to cope with these amounts of data in real-time. Every dropped packet may potentially lead to a missed attack. Withstanding attacks: While it is usually not the main goal of an attacker to compromise the NIDS itself, it is an obvious first step of an attack to disable the NIDS before targeting the real victim. Hence, a NIDS which can be easily turned off is not of much use at all. 2.2 Architecture The design goals presented above have lead to the layered architecture shown in Figure 1. The task of the lowest layer, the packet capture, is to get the packets off the wire. It feeds them into the core of Bro, the event engine, which performs low-level processing like state management and protocol analysis. The engine generates a stream of events which are passed on to the policy layer. The policy layer evaluates the events according to user-supplied scripts. Events are central to Bro s approach to network intrusion detection. An event is generated for relevant network activitiy, and represents an abstraction of the network packets into higher-level context information. For example, a typical event is connection_established. Each time Bro s core encounters a successful threeway-tcp-handshake between two hosts, it sends a connection_established event to the policy layer. An event is augmented by additional context, in this case by the involved IP addresses and service ports. On the policy layer, the user can define a corresponding event handler which specifies actions to be performed whenever a connection is established. For its operation, the handler does not have to inspect the involved packets itself, but works on the high-level context information. Bro defines events for most relevant network activity on different levels of abstraction; each event is accompanied by a set of context information. For example, the http_request event is raised for each HTTP request performed by a client and passes the requested URI to the event handler. The event handler may then, for instance, inspect the URI for unauthorized accesses. On the other hand, net_weird is raised for IP-level
4 276 Robin Sommer Policy script Real time notification Policy Layer Event control Event stream Event Engine Packet filter Filtered packet stream Packet Capture Network Packet stream Figure 1: Design of Bro (adopted from [Pax99]) obscurities such as corrupted checksums. Its context consists of a descriptive string. There are events for both normal and abnormal network activity: login_success signals a successful TELNET login while login_failure is raised on failed attempts. It is up to the policy layer to define what is acceptable. Raising an event by itself does not imply any judgement. The use of events is Bro s main method of coping with a large amount of network traffic in real time. While the work within the event engine has to be performed for every packet, actions on the policy layer are done only per event. Hence, while Bro s core has to be highly efficient in decoding the network packets, event handlers may perform more costly operations. Additionally, they can save state information between multiple invocations. For example, a port scan analyzer may count for each source how many connection_attempt events have been seen. In addition, while the event engine is coded in C++ for efficiency, the policy layer interprets scripts during run-time. Although interpreting is expensive in general, this is feasible due to the low volume of the event stream. This provides us with all advantages of a flexible high-level scripting language Packet Capture The lowest layer of Bro is the packet capture which passes the actual network packets to the event engine. For this task, Bro uses the library libpcap [Pca] which provides a platform-independent interface to different network link technologies. libpcap implements small but powerful filter expressions which can be used to reduce the amount of analyzed packets. For instance, if we do not want to analyze traffic on FTP data channels, we may simply ignore all packets on TCP port 20. Implementing this idea, Bro
5 Bro: An Open Source Network Intrusion Detection System 277 builds a filter expression dynamically during run-time. The filter selects only those for further analysis packets which are indeed needed by the current policy. As libpcap interfaces directly to kernel-level packet filters on many operating systems (like FreeBSD and Linux), it provides efficient access to the needed subset of network packets Event Engine The core of Bro is its event engine. This layer performs all low-level work of analyzing network packets. The event engine gets raw IP packets from the packet capture, sorts them by connection, reassembles TCP data streams, and decodes application layer protocols. Whenever it encounters something potentially relevant to the policy layer, it generates an event. Needing to cope with large amounts of traffic, the event engine has to be highly efficient. Simultaniously, to withstand attacks against Bro itself, it has to be as robust as possible. Hence, it may not make any assumptions about the validity of network packets. The event engine consists of several analyzers. Each of them is responsible for a welldefined task, for example decoding a specific protocol, performing signature-matching, or identifying backdoors. Each may raise a set of analyzer-specific events. Usually, an analyzer is accompanied by a default script which implements some general policy adjustable to the local environment. The event engine can be divided into four major parts: State Management: Bro s main data type is a connection. Each packet belongs to exactly one connection. For a connection-oriented protocol like TCP, the definition of a connection is obvious. For UDP and ICMP, Bro uses a flow-like abstraction (see [Pax02] for more details). The most prevalent problem in any connection-based analysis is the difficulty to decide when a connection ends, so that associated state can be released. Protocol analysis is useful in the sense of providing us with good hints: if both endpoints of a TCP connection send a FIN packet, it is reasonable to assume that the connection has indeed been shut-down. But it is not sufficient: experience shows that on large networks there are tons of crud [Pax99], i.e. network packets which do not conform to any standard. While it is often hard to reason where it originates, it is important to note that most of the time it is not part of an attack. Common explanations are link-level errors and buggy protocol implementations. As usual in networking, the rule be strict in what you send, liberal in what you accept applies. Thus, Bro implements a sophisticated state expiration mechanism using various user-definable timeouts. Transport Layer Analyzers: On the transport layer, Bro analyzes TCP, UDP and ICMP packets. The most interesting is the first one: TCP is a complex protocol involving state machines on both endpoints which determine the current state of the connection. Since the application layer analyzers (see Section 3) need the actual payload streams as sent by the two endpoints, Bro s TCP analyzer closely follows the various state changes, keeps track of acknowledgments, handles retransmissions and much more. The result is a real byte stream of payload data. This is in contrast to Snort s analysis of TCP: Snort does not reconstruct a full byte stream but uses various heuristics to
6 278 Robin Sommer combine several network packets into larger virtual packets which are then passed on to the rest of the system. This still leads to discretization problems. We note that in certain situations reconstructing TCP payload is impossible without using further knowledge of the environment [PN98]. See Section [SP03a] for a discussion of how Bro may tackle some of these problems. Application Layer Analyzers: The analysis of the application layer data of a connection depends on the particular service. There are analyzers for a wide variety of different protocols, e.g. HTTP, SMTP or DNS. See Section 3 for a more detailed description of some of them. Most of these analyzers do a fairly detailed analysis of the data stream. The SMTP decoder, for example, is able to decode MIME messages and may pass them on to the policy layer. Infrastructure: The general infrastructure includes components like event and timer management, the script interpreter, and data structures Policy Layer While the event engine itself is policy-neutral, the top layer of Bro defines the environment-specific network security policy. By writing handlers for events that may be raised by the event engine, the user can precisely define the particular constraints in his network. If a security breach is detected, the policy layer generates an alert. The event handlers are written in Bro s own scripting language (see Figure 2 for a typical implementation of a handler). While providing all expected convenience of a powerful scripting language (like hash tables, dynamic memory management, dynamic typing and regular expressions), it has been designed with network intrusion detection in mind. There are specific data types for IP addresses, port numbers and time intervals. Bro s strings may contain null bytes (in contrast to C strings), and host names are implicitly resolved by DNS. One important goal of the language is to support the user in avoiding simple errors [Pax99]. Consequently, the language uses strong typing and lacks any support for unbounded loops 1. One or more handlers can be associated with an event. These handlers are called successivly if the event is raised. This allows modularizing policy scripts. Each script only defines the handlers it needs. During startup, Bro loads all scripts enabled by the user. If a script needs a particular analyzer, the analyzer is automatically enabled in Bro s event engine. This ensures that only those components of Bro are activated and hence consume resources that are indeed used. While it is expected that policy scripts are written by the user, there are nevertheless quite a few of them shipped with Bro. These default scripts already perform a wide range of analyses and are easily customizable. 1 Event handlers have to finish as quickly as possible, so it is not feasible to use loops that may execute an arbitrary number of times.
7 Bro: An Open Source Network Intrusion Detection System 279 const sensitive_uris = /etc.*\/.*(passwd shadow netconfig)/ /\/cgi-bin\/(phf php\.cgi test-cgi)/; const sensitive_post_uris = /wwwroot/ &redef; event http_request(c: connection, method: string, URI: string, version: string) { if ((sensitive_uris in URI (method == "POST" && sensitive_post_uris in URI)) { ALERT([$alert=HTTP_SensitiveURI, $conn=c, $msg=fmt("%s %s: %s %s", id_string(c$id), c$addl, method, URI)]); } } # Sample output # # HTTP_SensitiveURI /1078 > /http %1: GET /etc/passwd Figure 2: Sample event handler in Bro s scripting language (adapted from Bro s default policy script http-request) 2.3 Robustness One of Bro s design goals is to withstand attacks against the NIDS itself. For this, Bro makes two basic assumptions: Bro s source code is known to the attacker but the policy scripts are not. For each connection at most one of its endpoints is compromised. The first assumption is similiar in spirit to Kerckhoff s principle: the mechanism is public but its parametrization is secret. Hence, the attacker may know what kind of low-level processing the NIDS is performing, but he cannot predict how the system will actually react to a particular input. This considerably complicates attacks which, for example, try to overload the system by exhausting its resources. The second assumption implies that the attacker can only modify the packets on one side of a bi-directional connection. In particular, this allows the reliable reconstruction of TCP streams as it helps to limit the amount of buffered data without risking a misinterpretation of the stream. This assumption is reasonable since as soon as an attacker controls both endpoints we are lost anyway: By using any valid connection between the two systems, he can set up a covert channel, without virtually any chance of being detected. Even if these two assumptions hold, attacks against the system may still be successful. However, this is not a problem that is specific to Bro but applies to all NIDSs. First, as long as a NIDS stores state about network traffic, it may be possible to overload it by carefully crafting traffic. Second, there are evasion methods which cannot be solved in general (see [PN98]). Consequently, although Bro cannot resist all attacks, it tries hard to at least notice them. Network packets are untrusted, they are carefully examined, and all pecularities are reported. Similarly, no assumption about the validity of the data is made during the application-layer protocol analysis. If processing of a single packet consumes too much cpu time, Bro s watchdog raises an alert, assuming that the delay is caused by exhausted resources or a coding error.
8 280 Robin Sommer 3 Analyzers Bro s most important components are the analyzers. Among others, there are analyzers for application-layer decoding, anomaly-detection, signature matching and connection analysis. We will briefly describe several of them in this section. New analyzers are easy to add. The term analyzer is only loosely defined and refers to part of Bro that performs some specific task. Most ananalyzers consist of a low-level part located inside Bro s event engine, and an accompanying default policy script. The latter can be customized by the user. Sometimes, however, the analyzer is just a policy script implementing some event handlers. For example, the scan detector is realized only on the script layer, relying on the general connection setup and tear-down events. 3.1 Application-layer Analyzers HTTP One of the most powerful analyzers is the HTTP decoder. It decodes both sides of a HTTP connection: the client side as well as the server side. For the former, the event engine generates an event for every request, supplying information about the connection, the URI, the HTTP method and the version. Additionally, a separate event is raised for every HTTP header line. On the server s side, the reply is parsed and dissected into its parts: header lines and MIME encoded components. The analyzer is capable to parse HTTP 1.0 and 1.1 messages with persistent connections and pipelining. The default policy scripts log each request and the corresponding reply (Figure 3 shows a sample of its output). In addition, they may alert on accesses to a customizable list of hot URIs. 15:18:10 %1 start > :18:10 %2 start > :18:10 %3 start > :18:10 %2 GET /ca/show_ads.js (200 "OK" [" 2294", 2294]) 15:18:10 %1 GET / (200 "OK" [" 10401", 10401]) 15:18:11 %3 GET /Slashdot/pc.gif?index, (200 "OK" [" 42", 42]) 15:18:11 %4 start > :18:11 %2 GET /search?[...]q=http%3a//slashdot.org/ (200 "OK" ["", 1417]) 15:18:11 %4 GET /banner/goog5025en.gif? (200 "OK" [" 42", 42]) 15:18:11 %4 GET /title.gif (200 "OK" [" 3473", 3473]) 15:18:11 %4 GET /topics/topicmatrix.gif (200 "OK" [" 1564", 1564]) 15:18:11 %4 GET /topics/topicslashback.gif (200 "OK" [" 2141", 2141]) 15:18:11 %4 GET /topics/topicmovies.gif (200 "OK" [" 1476", 1476]) 15:18:12 %4 GET /topics/topicwireless.gif (200 "OK" [" 1045", 1045]) 15:18:12 %4 GET /topics/topichardware.gif (200 "OK" [" 1185", 1185]) 15:18:12 %4 GET /slc.gif (200 "OK" [" 122", 122]) [...] Figure 3: Output of HTTP analyzer when accessing
9 Bro: An Open Source Network Intrusion Detection System FTP The FTP analyzer parses the control channel of FTP sessions and provides access to authorization information, commands, parameters and server replies. As it parses the negotiation of data channels, the default policy script notices if privileged ports are used or if a data channel is opened by a source which has not negotiated it. File accesses are logged, and accesses to a list of sensitive files are reported SMTP SMTP sessions are fully parsed, too. The analyzer follows the protocol commands and checks for various inconsistencies. For transfered messages, it extracts the envelope information as well as the RFC822 mail itself. The latter may be decoded into all of its MIME parts. The analyzer even detects relays by correlating mails using MD5 hashes DNS The DNS analyzer is one of the few analyzers decoding UDP data. A DNS lookup usually consists of a at least one reply and one response. The analyzer correlates requests with replies, providing both questions and answers to event handlers. The default script handles all types of DNS messages, logs various pieces of information (see Figure 4), and checks for inconsistencies such as PTR scans. Mon May 19 16:00: # /34252 > /dns start # ?A = \ <TTL = > # = <TTL = > # <auth NS> = dns1.net.informatik.tu-muenchen.de <TTL = > # <auth NS> = tuminfo1.informatik.tu-muenchen.de <TTL = > # <addl A> = <TTL = > # <addl A> = <TTL = > #1 finish Figure 4: Output of DNS analyzer when looking up Scan Detection Prior to an actual attack, attackers often scan potential victims to identify the services they are running. Using Bro s connection-tracking, it is trivial to identify scans: For vertical scans, we simply count the number of (successful or unsuccessful) connection attempts to different ports on each host, and for horizontal scans, we count the number of connection attempts to each port within a set of hosts. One of Bro s default policy script implements this approach. Figure 5 shows an example.
10 282 Robin Sommer 14:27:42 PortScan has scanned 1000 ports of :32:06 AddressScan has scanned 100 hosts (http) 14:33:13 AddressScan has scanned 100 hosts (http) 14:34:21 AddressScan has scanned 100 hosts (http) 14:37:06 AddressScan has scanned 100 hosts (http) 14:37:28 AddressScan has scanned 100 hosts (netbios-ssn) 14:37:56 AddressScan has scanned 100 hosts (http) 14:38:16 AddressScan has scanned 500 hosts (netbios-ssn) 14:43:37 AddressScan has scanned 100 hosts (1214/tcp) Figure 5: Output of scan analyzer 3.3 Stepping Stones A stepping stone is an intermediary host that someone uses to access a system: instead of connecting from host A to B directly, he may connect to C first, and then from C to B. In general, using a stepping stone is not illegitimate; sometimes it is even neccessary. But often stepping stones are used by attackers to hide their origin. Therefore, it is valuable to identify them. Bro contains an analyzer that correlates the timing of packets on incoming connections with those on outgoing connections to identify stepping stones (see [ZP00] for a full description of the algorithm). 3.4 SYN-Floods One of the most common denial-of-service attacks is flooding a victim with bogus connection requests by sending millions of SYN packets. While some operating systems already defend themselves against resource exhaustion (for example by using SYN cookies [Ber96]), such an attack has the potential to eventually fill up the network link. For a connection-tracking NIDS, another problem arises: storing state for each of the connection attempts would fill up the system s memory quite quickly. But, considering a single SYN at a time, it is hard to decide whether a connection request is bogus or not. There exists an experimental SYN-flood analyzer for Bro to cope with this situation. While by default Bro creates state for each SYN packet, the analyzer counts the number of connection attempts to each host. If a count reaches a certain threshold, Bro starts to sample the packets to this destination aggressively, ignoring most of them. If the flood ends, sampling is turned off again. 3.5 Signatures Most NIDSs match a large set of signatures against the network traffic. Here, a signature is basically a pattern of bytes that the NIDS tries to locate in the payload of network packets. As soon as a match is found, the system generates an alert. To limit the scope of a signature, it can usually be restricted to a subset of packets by defining conditions the packet header has to fulfill (for example aiming at a certain port or a destination). One of the most prominent of such systems is Snort which ships with a default set of roughly 1300 signatures; Figure 6 (a) shows one of them.
11 Bro: An Open Source Network Intrusion Detection System 283 Bro s general approach to intrusion detection has a much broader scope than traditional signature-matching. Nevertheless, it still contains a signature engine providing a functionality that is similiar to that known from other systems. While Bro implements its own flexible signature language, there exists a converter which directly translates Snort s signatures into Bro s syntax. Figure 6 (b) shows the translation of a signature. alert tcp any any -> [a.b.0.0/16,c.d.e.0/24] 80 ( msg:"web-attacks conf/httpd.conf attempt"; nocase; sid:1373; flow:to_server,established; content:"conf/httpd.conf"; [...] ) (a) Snort signature sid-1373 { ip-proto == tcp dst-ip == a.b.0.0/16,c.d.e.0/24 dst-port == 80 # The payload below is actually generated in a # case-insensitive format, which we omit here # for clarity. payload /.*conf\/httpd\.conf/ tcp-state established,originator event "WEB-ATTACKS conf/httpd.conf attempt" } (b) Bro Figure 6: Converting a Snort signature into Bro s language ([SP03b]) But Bro s signatures go well beyond the capabilities of other NIDSs. The most prevalent problem in signature-based intrusion detection are false positives. For some attacks (like buffer overflow exploits using a well-known sequence of machine code), defining bytelevel signatures is straight-forward. But most attacks are not easily identifiable by just looking at byte sequences (see for example the one described in [Cve]). Often, this leads to very broad signatures, raising a high number of false alarms. To enhance the quality of signature alerts, Bro makes use of context. There are two kinds of context which help to reduce the number of false positives: first, still on the byte-level, Bro provides full regular expressions instead of fixed patterns. Second, on a higher level, a byte-level match is augmented by semantic context made available by the protocol analysis and the scripting language. Instead of immediately generating an alert, a match just raises an event. By making use of Bro s state information inside an event handler, it is possible to eliminate irrelevant matches. For instance, Bro has the ability to identify the software used by an HTTP server. If we are only interested in potentially successful attacks, we can simply ignore all signature matches for IIS exploits if the attacked server is running an Apache Web server. Other uses of context include request/reply signatures (we only report an alert if signature A matches on the client side and signature B matches on the server side of the same connection), and the identification of exploit scans (similar to port scans, we count how many matches a certain source triggers inside our network).
12 284 Robin Sommer 3.6 Connection Summaries One of Bro s most useful analyzers is the connection analyzer. It is a bit unusual in that it by itself does not generate any alerts. Rather, for each connection, the analyzer reports a one-line summary (see Figure 7) containing a time-stamp, duration, service, transfered bytes (in terms of application-level throughput), source and destination IP, and a summary of the termination status. The latter indicates, for example, if the connection has been properly initiated and shut-down, or whether one side canceled the connection by sending a RESET packet. Internally, these summaries are generated by a full TCP state machine closely following the state transitions for each endpoint. 13:33: http SF L 13:33: http RSTO L 13:33:52? other-4662?? S0 L 13:33:52? pop-3?? S0 X 13:33: http?? REJ X 13:33: http SF L 13:33: http SF L 13:33: http SF L 13:33: http SF L 13:33:52? other-2500?? S0 L 13:33: http?? REJ L 13:33: http SF L 13:33:52? http?? S0 L 13:33:52? other-4662?? S0 L 13:33:52? other-4662?? S0 L 13:33:52? other-4662?? S0 L Figure 7: Connection Summaries Having connection summaries, we can retrospectively analyze the network traffic in great detail without having to store packet traces. Due to the data volume, storing traces is often infeasible even for medium-scale links. Therefore, even if the NIDS does not report any malicious activity, we may nevertheless manually post-process the connection summaries once new information about an attack is available. In the past, this has proved to be very useful (see Section 4). 4 Experiences in a High-Volume Environment We have been using Bro in large-scale network environments for roughly two years now. First, we installed it at the 122 Mbit/s Internet uplink of the Saarland University, Germany. In September 2002, we installed Bro at the Leibniz-Rechenzentrum (LRZ), Munich. The LRZ provides Internet access to most non-commercial research facilities in the area of Munich, among them Technical University (TU), Ludwig-Maximilian-University (LMU) and several Max-Planck- and Fraunhofer-Institutes. The LRZ is connected to the Internet by a 622 Mbit/s link to the DFN (Deutsches Forschungsnetz), the German research network. This link transfers 1-2 TB of data each day on average. A large fraction of the volume is due to the domain *.leo.org, which is located at the TU and provides services like FTP-, IRC- and Webservers to people around the world (ftp.leo.org transfers TB a day; dict.leo.org, an English-German dictionary, serves million HTTP
13 Bro: An Open Source Network Intrusion Detection System 285 requests per day). At both locations, we are running Bro on FreeBSD systems with two AMD CPUs and one/two GB of memory respectively. As a research group, our main objective is to gain experience with network intrusion detection in high-volume environments and to improve the current state-of-the-art technology. Due to its flexibility, Bro turned out to be an ideal NIDS for research purposes. Often, to test a new idea is suffices to write a new policy script. If this insufficient, we can easily extend Bro s open-source core. We are closely collaborating with Bro s main developer, and a significant part of our work has already been incorporated into the distribution. Note that we are not running Bro operationally in 24/7 production mode. We are concentrating on research, improving the system rather than actually chasing attackers. Considering the enormous amount of data at our points of operation, Bro works remarkably well. On the 622 Mbit/s link of the LRZ, even a simple packet sniffer just writing all packets to disk is usually not able keep up with the volume. While Bro does not analyze every packet (but just the ones needed as specified in its configuration), it performs a significant amount of work (like fully decoding HTTP sessions). This confirms that decreasing the high-volume packet stream to a low-volume event stream is indeed feasible. Nevertheless, depending on the time of day and what analyzers are activated, Bro may not be able to keep up with the traffic without dropping packets. For example, enabling server-side HTTP decoding at noon for all subnets served by the LRZ turns out to be infeasible. Yet, analyzing only the client-side works fine of most the time (in particular this means that Bro can extract requested URIs). We are currently experimenting with load-level mechanisms, which selectively disable certain analyzers based on the current network load. Similarily, we can reduce the load by temporarily ignoring certain subnets. For example, at the LRZ we can exclude *.leo.org. One of our most prevalent problems is the large amount of memory Bro needs. Keeping per-connection state is naturally expensive if you regularly encounter 300k-600k connections per hour. Thus, one emphasis is to improve the state-management by expiring old state more aggressively, possibly without opening doors for attackers. This is particular important during peak loads. While most network technology can be designed for the average case, a NIDS has to work reliably even in the worst case - which can be intentionally provoked by an attacker. An extreme example are denial-of-service attacks. irc.leo.org is a regular victim of SYN-Floods. During a typical attack, we see 2-3 million SYN packets per minute. Bro would normally create state for each SYN, which would exhaust the available memory in a couple of minutes. Therefore, we implemented the SYN-Flood analyzer (see Section 3.4). After noticing the flood, it starts to sample the packets to the victim. Comparing to Snort, we see that Bro takes a completely different approach to network intrusion detection. Nevertheless, we implemented a signature analyzer (see Section 3.5), which provides functionality similar to Snort. It even leverages Snort s comprehensive signature library. While evaluating Bro s signatures, we encountered several limitations of Snort. For instance, its protocol decoders are very limited: the TCP stream reassemblation is incomplete, and the HTTP decoder only considers requests at the start of a packet. The latter is not sufficient for pipelined connections as used in HTTP 1.1. Bro s protocol
14 286 Robin Sommer decoding is far more sophisticated. Another problem of Snort is its signature library: while it is very comprehensive, the quality of many of the signatures is quite low. This leads to many false alarms. For some attacks, there are several signatures which differ in their quality. For some signatures, their meta-information is wrong. Of course, if we just convert Snort s signatures into Bro s language, we have to live with some of the limitations. Therefore, in the future we hope to build a set of high-quality signatures which take advantage of Bro s features. But while we may be able to jump start this, we will need the help of the community to achieve a comprehensive signature archive. One aspect of using Bro is that it needs to be taylored to the local environment. While systems like Snort basically just need to know the local IP addresses and perhaps which part of the signature library we want to use, we have to tell Bro more about our network to use it effectively. Most of the default policy scripts need to be adjusted, and we have to write own scripts which define our specific security policy. While ability adds flexibility, it requires time. The more we tell Bro about our network the better it can identify malicious activity. This raises the question if a location like the uplink of the LRZ is indeed a good place to deploy Bro. On the internal side of the router, there are many subnets of varying size, all administrated independently with different security policies (if any at all). As a consequence, it is impossible to tell Bro exactly what is indeed accepted activity. On the other hand, there are attacks which are easiest to recognize at this level; consider attacks which are not aimed at a particular host but scan a large range of the IP space for potential victims ( script kiddies and worms come to mind). So, the answer probably lies in between: to get the best of both the worlds, we would like to install Bro at several points located on different levels of the network: from a local subnet of workstations to the backbone. An interesting question is how to coordinate and correlate different instances of a NIDS. This is part of our ongoing research. Bro s connection summaries (see Section 3.6) proved highly valuable in March 2003 at Saarland University. Attackers compromised several machines on the campus by exploiting a bug contained in certain SSH server versions [Ssh]. A few days later, the compromised systems started to participate in distributed denial-of-service attacks. While the network administrators were able to identify some of the hosts by observing enormous amounts of transfered data, it was hard to tell if there were more of them, just waiting to be activated. Knowing some of the victims, we used Bro s connection summaries to identify the SSH sessions which carried the initial exploits. We then checked for connections to other internal hosts showing similar characteristics. In fact, we found several more of them and all proved to be compromised. Finally, used Bro in areas of research other than network security, too. Its powerful protocol decoding can be effectivly used for a large range of traffic analysis tasks. For example, to identify certain characteristics of Web sessions, we instrumented Bro to log the relevant parts of the HTTP communication by simply writing a policy script. Similarly, connection summaries are an invaluable source for traffic statistics. Of late, Bro even contains a framework for anonymizing packet traces. Such traces may eventually be collected in an archive of openly-available real-world traces.
15 5 Future Work Bro: An Open Source Network Intrusion Detection System 287 The protocol analyzers are Bro s heart, and we are in the process of implementing some more of them. Currently, we are working on a SSL/TLS analyzer which will provide access to the certificates exchanged by the parties. Other candidates are POP, IMAP, IRC, NETBIOS/SMB (some work has already been done on this), SNMP, and the various peer-to-peer protocols. Making Bro more robust during floods and flash-crowds is rather important in high-volume environments. Possible approaches are further optimization of the state-management, and a more systematic integration of packet sampling. To avoid opening doors to attackers, this needs to be done on a sound theoretical base. Bro already contains preliminary support for vulnerability profiles which is the set of software a particular host is running. If Bro knows the profile of a host either by manual configuration or, more interestingly, by deducing it from the traffic it can use this profile to estimate the severity of an attack. Currently, Bro is able to identify HTTP and SSH software, but we will further extend this to include more protocols. We plan to design an unified framework on the script level, and to integrate passive OS fingerprinting techniques. Most ambitiously, we would like to see several Bro systems running at different locations of the network to cooperate. To achieve this, Bro needs a communication interface and new techniques for globally correlating local events. Additionally, Bro could include more data sources in its analysis. For example, while we may not have access to the packets of a network, we may be able to get NetFlow [Cis] records from a router. Theoretically, it should be possible to extend some of Bro s parts to work on flow information. Independent of all these enhancements, Bro needs some work to make it a production-level system effectively deployable by people who are not familiar with its internals. Reading Bro s mailing list, there are some issues unfamiliar users regularly stumble across. Among them are a lack of introductory documentation 2, portability problems, and configuration difficulties. These problems are mainly due to the limited amount of resources available for a research system. To promote, maintain, and extend Bro, any help from the community is greatly appreciated. Similarily, any feedback about deploying Bro is welcome. 6 Conclusion We present Bro, a powerful but still largely unknown open source network intrusion detection system. It is designed with three main goals in mind: efficiency, robustness, and separation of policy from mechanisms. To achieve these, a wide variety of protocol-specific analyzers decode network packets. They raise events for relevant activity which are processed by user-supplied handlers. Thus, Bro abstracts from a high-volume traffic stream to a low-volume stream of events suitable for more cpu-intensive processing. We are successfully deploying Bro in a large-scale network environment. Closely collaborating with Bro s main developer, several of our extensions have already been incorporated 2 Bro is accompanied by a rather extensive reference manual, although some parts of it are a bit outdated.
16 288 Robin Sommer into the distribution. Nevertheless, Bro is still a research system. Contributors are needed to make it an production-ready system. 7 Acknowledgments We would like to thank the Leibniz-Rechenzentrum, Munich, Germany, and the Rechnerbetriebsgruppe of the Saarland University, Saarbrücken, Germany, for enabling our experiments with Bro and their help in understanding the network environments. We are in debt to Vern Paxson for his continuous support of our work with Bro. Finally, we thank Vinay Aggarwal, Holger Dreger and Anja Feldmann for their valuable suggestions on how to improve this presentation. References [Ber96] Daniel J. Bernstein. SYN cookies [Bro] Bro. [Cis] Cisco Systems Inc. NetFlow Services and Applications - White paper. com/warp/public/cc/pd/iosw/ioft/neflct/tech/napps_wp.h%tm. [Cve] CVE [Jac99] Kathleen Jackson. Intrusion Detection System Product Survey. Technical Report LA-UR , Los Alamos National Laboratory, June [Pax99] Vern Paxson. Bro: A System for Detecting Network Intruders in Real-Time. Computer Networks, 31(23 24): , [Pax02] Vern Paxson. The Bro 0.8 User Manual, [Pca] libpcap. [PN98] Thomas H. Ptacek and Timothy N. Newsham. Insertion, Evasion, and Denial of Service: Eluding Network Intrusion Detection. Technical report, Secure Networks, Inc., January [Roe99] Martin Roesch. Snort: Lightweight Intrusion Detection for Networks. In Proceedings of the 13th Conference on Systems Administration (LISA-99), pages USENIX Association, November [SP03a] Umesh Shankar and Vern Paxson. Active Mapping: Resisting NIDS Evasion Without Altering Traffic. In Proc. IEEE Symposium on Security and Privacy (to appear), [SP03b] Robin Sommer and Vern Paxson. Enhancing Byte-Level Network Intrusion Detection Signatures with Context. In submission, [Ssh] Vulnerability Note VU# [ZP00] Yin Zhang and Vern Paxson. Detecting Stepping Stones. In Proceedings of the 9th USENIX Security Symposium (SECURITY-00), pages The USENIX Association, August 2000.
The Bro Network Intrusion Detection System
The Bro Network Intrusion Detection System Robin Sommer International Computer Science Institute, & Lawrence Berkeley National Laboratory [email protected] http://www.icir.org System Philosophy Bro
Bro at 10 Gps: Current Testing and Plans
U.S. Department of Energy Bro at 10 Gps: Current Testing and Plans Office of Science Brian L. Tierney Lawrence Berkeley National Laboratory Bro s Use at LBL Operational 24 7 since 1996 Monitors traffic
A Bro Walk-Through. Robin Sommer International Computer Science Institute & Lawrence Berkeley National Laboratory
A Bro Walk-Through Robin Sommer International Computer Science Institute & Lawrence Berkeley National Laboratory [email protected] http://www.icir.org Doing the Walk-Through... Going from simple
An Overview of the Bro Intrusion Detection System
An Overview of the Bro Intrusion Detection System Brian L. Tierney, Vern Paxson, James Rothfuss Lawrence Berkeley National Laboratory Typical Approach: Firewall with default deny policy A blocking router
The Open Source Bro IDS Overview and Recent Developments
The Open Source Bro IDS Overview and Recent Developments Robin Sommer International Computer Science Institute, & Lawrence Berkeley National Laboratory [email protected] http://www.icir.org/robin
How to (passively) understand the application layer? Packet Monitoring
How to (passively) understand the application layer? Packet Monitoring 1 What to expect? Overview / What is packet monitoring? How to acquire the data Handling performance bottlenecks Analyzing the transport
USING LOCAL NETWORK AUDIT SENSORS AS DATA SOURCES FOR INTRUSION DETECTION. Integrated Information Systems Group, Ruhr University Bochum, Germany
USING LOCAL NETWORK AUDIT SENSORS AS DATA SOURCES FOR INTRUSION DETECTION Daniel Hamburg,1 York Tüchelmann Integrated Information Systems Group, Ruhr University Bochum, Germany Abstract: The increase of
Flow-level analysis: wireshark and Bro. Prof. Anja Feldmann, Ph.D. Dr. Nikolaos Chatzis
Flow-level analysis: wireshark and Bro Prof. Anja Feldmann, Ph.D. Dr. Nikolaos Chatzis 1 wireshark tshark Network packet analyzer for Unix/Windows Displays detailed packet stats GUI (wireshark) or command-line
Intrusion Detection in AlienVault
Complete. Simple. Affordable Copyright 2014 AlienVault. All rights reserved. AlienVault, AlienVault Unified Security Management, AlienVault USM, AlienVault Open Threat Exchange, AlienVault OTX, Open Threat
PROFESSIONAL SECURITY SYSTEMS
PROFESSIONAL SECURITY SYSTEMS Security policy, active protection against network attacks and management of IDP Introduction Intrusion Detection and Prevention (IDP ) is a new generation of network security
Detecting Attacks. Signature-based Intrusion Detection. Signature-based Detection. Signature-based Detection. Problems
Detecting Attacks Signature-based Intrusion Detection Boriana Ditcheva and Lisa Fowler University of North Carolina at Chapel Hill February 16 & 22, 2005 Anomaly-based Detection Signature-based (Misuse)
Fuzzy Network Profiling for Intrusion Detection
Fuzzy Network Profiling for Intrusion Detection John E. Dickerson ([email protected]) and Julie A. Dickerson ([email protected]) Electrical and Computer Engineering Department Iowa State University
What is a Firewall? A choke point of control and monitoring Interconnects networks with differing trust Imposes restrictions on network services
Firewalls What is a Firewall? A choke point of control and monitoring Interconnects networks with differing trust Imposes restrictions on network services only authorized traffic is allowed Auditing and
IDS / IPS. James E. Thiel S.W.A.T.
IDS / IPS An introduction to intrusion detection and intrusion prevention systems James E. Thiel January 14, 2005 S.W.A.T. Drexel University Overview Intrusion Detection Purpose Types Detection Methods
Intrusion Detection System
Intrusion Detection System Time Machine Dynamic Application Detection 1 NIDS: two generic problems Attack identified But what happened in the past??? Application identification Only by port number! Yet
The Bro Network Security Monitor. Broverview
The Bro Network Security Monitor Broverview Outline 2 Outline Philosophy and Architecture A framework for network traffic analysis. 2 Outline Philosophy and Architecture A framework for network traffic
IntruPro TM IPS. Inline Intrusion Prevention. White Paper
IntruPro TM IPS Inline Intrusion Prevention White Paper White Paper Inline Intrusion Prevention Introduction Enterprises are increasingly looking at tools that detect network security breaches and alert
CHAPETR 3. DISTRIBUTED DEPLOYMENT OF DDoS DEFENSE SYSTEM
59 CHAPETR 3 DISTRIBUTED DEPLOYMENT OF DDoS DEFENSE SYSTEM 3.1. INTRODUCTION The last decade has seen many prominent DDoS attack on high profile webservers. In order to provide an effective defense against
Final exam review, Fall 2005 FSU (CIS-5357) Network Security
Final exam review, Fall 2005 FSU (CIS-5357) Network Security Instructor: Breno de Medeiros 1. What is an insertion attack against a NIDS? Answer: An insertion attack against a network intrusion detection
CSCE 465 Computer & Network Security
CSCE 465 Computer & Network Security Instructor: Dr. Guofei Gu http://courses.cse.tamu.edu/guofei/csce465/ Intrusion Detection System 1 Intrusion Definitions A set of actions aimed to compromise the security
FIREWALLS. Firewall: isolates organization s internal net from larger Internet, allowing some packets to pass, blocking others
FIREWALLS FIREWALLS Firewall: isolates organization s internal net from larger Internet, allowing some packets to pass, blocking others FIREWALLS: WHY Prevent denial of service attacks: SYN flooding: attacker
CSCI 4250/6250 Fall 2015 Computer and Networks Security
CSCI 4250/6250 Fall 2015 Computer and Networks Security Network Security Goodrich, Chapter 5-6 Tunnels } The contents of TCP packets are not normally encrypted, so if someone is eavesdropping on a TCP
Intrusion Detection Systems
Intrusion Detection Systems Assessment of the operation and usefulness of informatics tools for the detection of on-going computer attacks André Matos Luís Machado Work Topics 1. Definition 2. Characteristics
Network Forensics: Log Analysis
Network Forensics: Analysis Richard Baskerville Agenda P Terms & -based Tracing P Application Layer Analysis P Lower Layer Analysis Georgia State University 1 2 Two Important Terms PPromiscuous Mode
Introduction of Intrusion Detection Systems
Introduction of Intrusion Detection Systems Why IDS? Inspects all inbound and outbound network activity and identifies a network or system attack from someone attempting to compromise a system. Detection:
How To Monitor A Network On A Network With Bro (Networking) On A Pc Or Mac Or Ipad (Netware) On Your Computer Or Ipa (Network) On An Ipa Or Ipac (Netrope) On
Michel Laterman We have a monitor set up that receives a mirror from the edge routers Monitor uses an ENDACE DAG 8.1SX card (10Gbps) & Bro to record connection level info about network usage Can t simply
Deployment of Snort IDS in SIP based VoIP environments
Deployment of Snort IDS in SIP based VoIP environments Jiří Markl, Jaroslav Dočkal [email protected] K-209 Univerzita obrany Kounicova 65, 612 00 Brno Czech Republic Abstract This paper describes
P Principles of Network Forensics P Terms & Log-based Tracing P Application Layer Log Analysis P Lower Layer Log Analysis
Agenda Richard Baskerville P Principles of P Terms & -based Tracing P Application Layer Analysis P Lower Layer Analysis Georgia State University 1 2 Principles Kim, et al (2004) A fuzzy expert system for
A host-based firewall can be used in addition to a network-based firewall to provide multiple layers of protection.
A firewall is a software- or hardware-based network security system that allows or denies network traffic according to a set of rules. Firewalls can be categorized by their location on the network: A network-based
Chapter 15. Firewalls, IDS and IPS
Chapter 15 Firewalls, IDS and IPS Basic Firewall Operation The firewall is a border firewall. It sits at the boundary between the corporate site and the external Internet. A firewall examines each packet
Fuzzy Network Profiling for Intrusion Detection
Fuzzy Network Profiling for Intrusion Detection John E. Dickerson ([email protected]) and Julie A. Dickerson ([email protected]) Electrical and Computer Engineering Department Iowa State University
Intrusion Detection System Based Network Using SNORT Signatures And WINPCAP
Intrusion Detection System Based Network Using SNORT Signatures And WINPCAP Aakanksha Vijay M.tech, Department of Computer Science Suresh Gyan Vihar University Jaipur, India Mrs Savita Shiwani Head Of
Virtual private network. Network security protocols VPN VPN. Instead of a dedicated data link Packets securely sent over a shared network Internet VPN
Virtual private network Network security protocols COMP347 2006 Len Hamey Instead of a dedicated data link Packets securely sent over a shared network Internet VPN Public internet Security protocol encrypts
Improving the Database Logging Performance of the Snort Network Intrusion Detection Sensor
-0- Improving the Database Logging Performance of the Snort Network Intrusion Detection Sensor Lambert Schaelicke, Matthew R. Geiger, Curt J. Freeland Department of Computer Science and Engineering University
Security Event Management. February 7, 2007 (Revision 5)
Security Event Management February 7, 2007 (Revision 5) Table of Contents TABLE OF CONTENTS... 2 INTRODUCTION... 3 CRITICAL EVENT DETECTION... 3 LOG ANALYSIS, REPORTING AND STORAGE... 7 LOWER TOTAL COST
Firewalls and Intrusion Detection
Firewalls and Intrusion Detection What is a Firewall? A computer system between the internal network and the rest of the Internet A single computer or a set of computers that cooperate to perform the firewall
Firewalls, IDS and IPS
Session 9 Firewalls, IDS and IPS Prepared By: Dr. Mohamed Abd-Eldayem Ref.: Corporate Computer and Network Security By: Raymond Panko Basic Firewall Operation 2. Internet Border Firewall 1. Internet (Not
Chapter 9 Firewalls and Intrusion Prevention Systems
Chapter 9 Firewalls and Intrusion Prevention Systems connectivity is essential However it creates a threat Effective means of protecting LANs Inserted between the premises network and the to establish
Network Security. Chapter 9. Attack prevention, detection and response. Attack Prevention. Part I: Attack Prevention
Chair for Network Architectures and Services Department of Informatics TU München Prof. Carle Part I: Attack Prevention Network Security Chapter 9 Attack prevention, detection and response Part Part I:
Intrusion Detections Systems
Intrusion Detections Systems 2009-03-04 Secure Computer Systems Poia Samoudi Asli Davor Sutic Contents Intrusion Detections Systems... 1 Contents... 2 Abstract... 2 Introduction... 3 IDS importance...
CS5008: Internet Computing
CS5008: Internet Computing Lecture 22: Internet Security A. O Riordan, 2009, latest revision 2015 Internet Security When a computer connects to the Internet and begins communicating with others, it is
Firewalls, Tunnels, and Network Intrusion Detection
Firewalls, Tunnels, and Network Intrusion Detection 1 Part 1: Firewall as a Technique to create a virtual security wall separating your organization from the wild west of the public internet 2 1 Firewalls
Network Defense Tools
Network Defense Tools Prepared by Vanjara Ravikant Thakkarbhai Engineering College, Godhra-Tuwa +91-94291-77234 www.cebirds.in, www.facebook.com/cebirds [email protected] What is Firewall? A firewall
Large-Scale TCP Packet Flow Analysis for Common Protocols Using Apache Hadoop
Large-Scale TCP Packet Flow Analysis for Common Protocols Using Apache Hadoop R. David Idol Department of Computer Science University of North Carolina at Chapel Hill [email protected] http://www.cs.unc.edu/~mxrider
cinderella: A Prototype For A Specification-Based NIDS
cinderella: A Prototype For A Specification-Based NIDS Andreas Krennmair [email protected] August 8, 2003 Abstract What is actually network intrusion detection? How does it work? What are the most common
Firewalls, Tunnels, and Network Intrusion Detection. Firewalls
Firewalls, Tunnels, and Network Intrusion Detection 1 Firewalls A firewall is an integrated collection of security measures designed to prevent unauthorized electronic access to a networked computer system.
Dynamic Application-Layer Protocol Analysis for Network Intrusion Detection
Dynamic Application-Layer Protocol Analysis for Network Intrusion Detection Holger Dreger TU München [email protected] Anja Feldmann TU München [email protected] Michael Mai TU München [email protected] Vern
Secure Software Programming and Vulnerability Analysis
Secure Software Programming and Vulnerability Analysis Christopher Kruegel [email protected] http://www.auto.tuwien.ac.at/~chris Operations and Denial of Service Secure Software Programming 2 Overview
co Characterizing and Tracing Packet Floods Using Cisco R
co Characterizing and Tracing Packet Floods Using Cisco R Table of Contents Characterizing and Tracing Packet Floods Using Cisco Routers...1 Introduction...1 Before You Begin...1 Conventions...1 Prerequisites...1
1 hours, 30 minutes, 38 seconds Heavy scan. All scanned network resources. Copyright 2001, FTP access obtained
home Network Vulnerabilities Detail Report Grouped by Vulnerability Report Generated by: Symantec NetRecon 3.5 Licensed to: X Serial Number: 0182037567 Machine Scanned from: ZEUS (192.168.1.100) Scan Date:
Firewalls. Firewalls. Idea: separate local network from the Internet 2/24/15. Intranet DMZ. Trusted hosts and networks. Firewall.
Firewalls 1 Firewalls Idea: separate local network from the Internet Trusted hosts and networks Firewall Intranet Router DMZ Demilitarized Zone: publicly accessible servers and networks 2 1 Castle and
Overview of Network Security The need for network security Desirable security properties Common vulnerabilities Security policy designs
Overview of Network Security The need for network security Desirable security properties Common vulnerabilities Security policy designs Why Network Security? Keep the bad guys out. (1) Closed networks
Abstract. Introduction. Section I. What is Denial of Service Attack?
Abstract In this report, I am describing the main types of DoS attacks and their effect on computer and network environment. This report will form the basis of my forthcoming report which will discuss
Network & Agent Based Intrusion Detection Systems
Network & Agent Based Intrusion Detection Systems Hakan Albag TU Munich, Dep. of Computer Science Exchange Student Istanbul Tech. Uni., Dep. Of Comp. Engineering Abstract. The following document is focused
Barracuda Intrusion Detection and Prevention System
Providing complete and comprehensive real-time network protection Today s networks are constantly under attack by an ever growing number of emerging exploits and attackers using advanced evasion techniques
Firewall Firewall August, 2003
Firewall August, 2003 1 Firewall and Access Control This product also serves as an Internet firewall, not only does it provide a natural firewall function (Network Address Translation, NAT), but it also
CS 356 Lecture 19 and 20 Firewalls and Intrusion Prevention. Spring 2013
CS 356 Lecture 19 and 20 Firewalls and Intrusion Prevention Spring 2013 Review Chapter 1: Basic Concepts and Terminology Chapter 2: Basic Cryptographic Tools Chapter 3 User Authentication Chapter 4 Access
How To Protect Your Network From Attack From Outside From Inside And Outside
IT 4823 Information Security Administration Firewalls and Intrusion Prevention October 7 Notice: This session is being recorded. Lecture slides prepared by Dr Lawrie Brown for Computer Security: Principles
Introduction to Network Discovery and Identity
The following topics provide an introduction to network discovery and identity policies and data: Host, Application, and User Detection, page 1 Uses for Host, Application, and User Discovery and Identity
Intrusion Detection System in Campus Network: SNORT the most powerful Open Source Network Security Tool
Intrusion Detection System in Campus Network: SNORT the most powerful Open Source Network Security Tool Mukta Garg Assistant Professor, Advanced Educational Institutions, Palwal Abstract Today s society
Analysis of Network Packets. C DAC Bangalore Electronics City
Analysis of Network Packets C DAC Bangalore Electronics City Agenda TCP/IP Protocol Security concerns related to Protocols Packet Analysis Signature based Analysis Anomaly based Analysis Traffic Analysis
Intrusion Detection Categories (note supplied by Steve Tonkovich of CAPTUS NETWORKS)
1 of 8 3/25/2005 9:45 AM Intrusion Detection Categories (note supplied by Steve Tonkovich of CAPTUS NETWORKS) Intrusion Detection systems fall into two broad categories and a single new one. All categories
Detecting UDP attacks using packet symmetry with only flow data
University of Twente Department of Electrical Engineering, Mathematics an Computer Science Chair for Design and Analysis of Communication Systems Detecting UDP attacks using packet symmetry with only flow
CYBER ATTACKS EXPLAINED: PACKET CRAFTING
CYBER ATTACKS EXPLAINED: PACKET CRAFTING Protect your FOSS-based IT infrastructure from packet crafting by learning more about it. In the previous articles in this series, we explored common infrastructure
Security+ Guide to Network Security Fundamentals, Fourth Edition. Chapter 6 Network Security
Security+ Guide to Network Security Fundamentals, Fourth Edition Chapter 6 Network Security Objectives List the different types of network security devices and explain how they can be used Define network
Evaluating Intrusion Detection Systems without Attacking your Friends: The 1998 DARPA Intrusion Detection Evaluation
Evaluating Intrusion Detection Systems without Attacking your Friends: The 1998 DARPA Intrusion Detection Evaluation R. K. Cunningham, R. P. Lippmann, D. J. Fried, S. L. Garfinkel, I. Graf, K. R. Kendall,
The Power of SNORT SNORT Update
The Power of SNORT SNORT Update Jean-Paul Kerouanton 11 th May 2010 2 Leveraging the Snort Brand The Power SNORT = The Power of Open Source The SNORT- Universe AMAZON - +100 items GOOGLE +3.700.000 hits
SY0-201. system so that an unauthorized individual can take over an authorized session, or to disrupt service to authorized users.
system so that an unauthorized individual can take over an authorized session, or to disrupt service to authorized users. From a high-level standpoint, attacks on computer systems and networks can be grouped
Second-generation (GenII) honeypots
Second-generation (GenII) honeypots Bojan Zdrnja CompSci 725, University of Auckland, Oct 2004. [email protected] Abstract Honeypots are security resources which trap malicious activities, so they
Solution of Exercise Sheet 5
Foundations of Cybersecurity (Winter 15/16) Prof. Dr. Michael Backes CISPA / Saarland University saarland university computer science Protocols = {????} Client Server IP Address =???? IP Address =????
A System for in-network Anomaly Detection
A System for in-network Anomaly Detection Thomas Gamer Institut für Telematik, Universität Karlsruhe (TH), Germany Abstract. Today, the Internet is used by companies frequently since it simplifies daily
How To Protect Your Network From Attack From A Hacker On A University Server
Network Security: A New Perspective NIKSUN Inc. Security: State of the Industry Case Study: Hacker University Questions Dave Supinski VP of Regional Sales [email protected] Cell Phone 215-292-4473 www.niksun.com
Security: Attack and Defense
Security: Attack and Defense Aaron Hertz Carnegie Mellon University Outline! Breaking into hosts! DOS Attacks! Firewalls and other tools 15-441 Computer Networks Spring 2003 Breaking Into Hosts! Guessing
Intrusion Detection Systems and Supporting Tools. Ian Welch NWEN 405 Week 12
Intrusion Detection Systems and Supporting Tools Ian Welch NWEN 405 Week 12 IDS CONCEPTS Firewalls. Intrusion detection systems. Anderson publishes paper outlining security problems 1972 DNS created 1984
Firewalls. Basic Firewall Concept. Why firewalls? Firewall goals. Two Separable Topics. Firewall Design & Architecture Issues
CS 155 May 20, 2004 Firewalls Basic Firewall Concept Separate local area net from internet Firewall John Mitchell Credit: some text, illustrations from Simon Cooper Router All packets between LAN and internet
IDS Categories. Sensor Types Host-based (HIDS) sensors collect data from hosts for
Intrusion Detection Intrusion Detection Security Intrusion: a security event, or a combination of multiple security events, that constitutes a security incident in which an intruder gains, or attempts
Intrusion Detection Systems
Intrusion Detection Systems Raj Jain Washington University in Saint Louis Saint Louis, MO 63130 [email protected] Audio/Video recordings of this lecture are available at: http://www.cse.wustl.edu/~jain/cse571-07/
Distributed Denial of Service Attack Tools
Distributed Denial of Service Attack Tools Introduction: Distributed Denial of Service Attack Tools Internet Security Systems (ISS) has identified a number of distributed denial of service tools readily
NSC 93-2213-E-110-045
NSC93-2213-E-110-045 2004 8 1 2005 731 94 830 Introduction 1 Nowadays the Internet has become an important part of people s daily life. People receive emails, surf the web sites, and chat with friends
CSE331: Introduction to Networks and Security. Lecture 17 Fall 2006
CSE331: Introduction to Networks and Security Lecture 17 Fall 2006 Announcements Project 2 is due next Weds. Homework 2 has been assigned: It's due on Monday, November 6th. CSE331 Fall 2004 2 Summary:
Research on Errors of Utilized Bandwidth Measured by NetFlow
Research on s of Utilized Bandwidth Measured by NetFlow Haiting Zhu 1, Xiaoguo Zhang 1,2, Wei Ding 1 1 School of Computer Science and Engineering, Southeast University, Nanjing 211189, China 2 Electronic
NAT TCP SIP ALG Support
The feature allows embedded messages of the Session Initiation Protocol (SIP) passing through a device that is configured with Network Address Translation (NAT) to be translated and encoded back to the
Network security Exercise 10 Network monitoring
Network security Exercise 10 Network monitoring Tobias Limmer Computer Networks and Communication Systems Dept. of Computer Sciences, University of Erlangen-Nuremberg, Germany 2. 6.02.2009 Tobias Limmer:
Network Security Management
Network Security Management TWNIC 2003 Objective Have an overview concept on network security management. Learn how to use NIDS and firewall technologies to secure our networks. 1 Outline Network Security
CS 356 Lecture 17 and 18 Intrusion Detection. Spring 2013
CS 356 Lecture 17 and 18 Intrusion Detection Spring 2013 Review Chapter 1: Basic Concepts and Terminology Chapter 2: Basic Cryptographic Tools Chapter 3 User Authentication Chapter 4 Access Control Lists
Port Scanning. Objectives. Introduction: Port Scanning. 1. Introduce the techniques of port scanning. 2. Use port scanning audit tools such as Nmap.
Port Scanning Objectives 1. Introduce the techniques of port scanning. 2. Use port scanning audit tools such as Nmap. Introduction: All machines connected to a LAN or connected to Internet via a modem
Firewalls. Test your Firewall knowledge. Test your Firewall knowledge (cont) (March 4, 2015)
s (March 4, 2015) Abdou Illia Spring 2015 Test your knowledge Which of the following is true about firewalls? a) A firewall is a hardware device b) A firewall is a software program c) s could be hardware
Advancement in Virtualization Based Intrusion Detection System in Cloud Environment
Advancement in Virtualization Based Intrusion Detection System in Cloud Environment Jaimin K. Khatri IT Systems and Network Security GTU PG School, Ahmedabad, Gujarat, India Mr. Girish Khilari Senior Consultant,
Intrusion Detection and Prevention System (IDPS) Technology- Network Behavior Analysis System (NBAS)
ISCA Journal of Engineering Sciences ISCA J. Engineering Sci. Intrusion Detection and Prevention System (IDPS) Technology- Network Behavior Analysis System (NBAS) Abstract Tiwari Nitin, Solanki Rajdeep
Comparison of Firewall, Intrusion Prevention and Antivirus Technologies
White Paper Comparison of Firewall, Intrusion Prevention and Antivirus Technologies How each protects the network Juan Pablo Pereira Technical Marketing Manager Juniper Networks, Inc. 1194 North Mathilda
Firewalls. Chapter 3
Firewalls Chapter 3 1 Border Firewall Passed Packet (Ingress) Passed Packet (Egress) Attack Packet Hardened Client PC Internet (Not Trusted) Hardened Server Dropped Packet (Ingress) Log File Internet Border
From Network Security To Content Filtering
Computer Fraud & Security, May 2007 page 1/10 From Network Security To Content Filtering Network security has evolved dramatically in the last few years not only for what concerns the tools at our disposals
Dynamic Rule Based Traffic Analysis in NIDS
International Journal of Information & Computation Technology. ISSN 0974-2239 Volume 4, Number 14 (2014), pp. 1429-1436 International Research Publications House http://www. irphouse.com Dynamic Rule Based
AlienVault. Unified Security Management (USM) 5.x Policy Management Fundamentals
AlienVault Unified Security Management (USM) 5.x Policy Management Fundamentals USM 5.x Policy Management Fundamentals Copyright 2015 AlienVault, Inc. All rights reserved. The AlienVault Logo, AlienVault,
