<div dir="ltr"><div>It would be extremely difficult to compare IDS systems and here are a couple of reasons why.</div><div><br></div><div>What does it mean, to compare IDS systems? Would you compare the performance? Sure, this one can be measured, but it&#39;s so much ruleset dependent that it rarely makes sense.</div><div><br></div><div>Detection accuracy? All of them basically perform the same job - reassemble a number of packets in a stream, compare that stream against a huge dataset, flag matches. If one of those components does not work correctly, for example, IDS X can correctly reassemble TCP flows 99% of time, it is either a bug in the engine or there is something wrong with the capture, or there are performance problems.</div><div><br></div><div>Then it comes the comparison of &quot;how many alerts will IDS X generate vs IDS Y vs Z for the same input&quot;. You&#39;re not really comparing IDS-es again, but the set of rules. Some rules can be used by multiple engines, like the Emerging Threats has versions for both Snort and Suricata. Some don&#39;t - like the commercial Palo Alto Networks.</div><div><br></div><div>Finally, you have the &quot;neutral&quot; engines, like Zeek (or Suricata without any rules and with flow and protocol logging enabled in eve-json). They do not tell what is good and what is bad - because that&#39;s up to you. They merely tell you about a connection that happened in the past, was from A to B, N bytes and packets were sent and M bytes and packets were received, it took 5 minutes and it was SSL.</div><div>In case of Zeek or Suricata you can have protocol analysis done, so for our SSL connection, you will see the SNI, ciphersuites negotiated, X509 certificate details and so on.</div><div><br></div><div>At this point nothing is technically good or bad. Now, you as an analyst can feed Zeek with rules saying &quot;connections to or from IP A are always bad&quot; - and Zeek will let you know when those happen (or try to happen).<br></div><div><br></div><div>Or you can say &quot;all SSL connections with a certificate with a serial number 12345 are bad&quot; or flag a domain name in many places (not just the DNS traffic), calculate file hashes, analyze PE files, SMB and RPC sessions, etc.</div><div><br></div><div>NSM like Zeek is basically like a giant time machine + a matching engine + an engine that can do almost arbitrary operations on network flows. It&#39;s up to you to program it.</div><div><br></div><div>And that&#39;s why I think it cannot be compared with IDSes like Snort (purely rule based) or Suricata (a combination of a traditional IDS with NSM functionality).<br></div><div><br></div><div>Comparing Snort vs Suricata doesn&#39;t make sense either - because you would be comparing rulesets, not engines.</div><div><br></div><div><br></div><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Oct 21, 2019 at 4:24 PM Richard Bejtlich &lt;<a href="mailto:richard@corelight.com">richard@corelight.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div dir="auto">That’s generally what IDS users want to know — what activity is normal, suspicious, or malicious? </div></div><div dir="auto"><br></div><div dir="auto">Richard </div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Oct 21, 2019 at 7:04 PM Borivoje Pavlovic &lt;<a href="mailto:bpboci24@gmail.com" target="_blank">bpboci24@gmail.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto">Dear Richard, <div dir="auto"><br></div><div dir="auto">Thank you very much for your answer. I have one last question.<br></div><div dir="auto"><div dir="auto">What do you mean by deciding what was bad on network? <br></div><div dir="auto"><br></div><div dir="auto">Best regards</div></div></div><div dir="auto"><div dir="auto"><div dir="auto"><br></div><div dir="auto">Borivoje</div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, 22 Oct 2019, 00:18 Richard Bejtlich, &lt;<a href="mailto:richard@corelight.com" rel="noreferrer noreferrer" target="_blank">richard@corelight.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hi Borivoje and Zeek users,<div><br></div><div>Traditionally, analyst uses Zeek to transform their network traffic into compact logs that describe a variety of activities. Rather than recording full content in a .pcap if you&#39;re interested in a FTP session, for example, Zeek will create one or more logs describing the important elements of that FTP session. There&#39;s no concept of &quot;good&quot; or &quot;bad&quot; in that log, or in most logs.</div><div><br></div><div>So, the premise of comparing Zeek as an IDS with Snort or Suricata doesn&#39;t make much sense. You would be better off comparing Snort with Suricata, as they are both designed as intrusion detection systems, i.e., they render judgments based on the traffic they observe. Of course you need to provide rule sets, which contain the essence of &quot;badness&quot; as designed by the rule creators.</div><div><br></div><div>You could conceivably program Zeek to be an IDS if you decided what was bad on your network and told Zeek to write a notice when it sees that activity. Running default Zeek against a data set from the Internet is not going to yield the results your professor is seeking.</div><div><br></div><div>Sincerely,</div><div><br></div><div>Richard</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Oct 21, 2019 at 6:05 PM Borivoje Pavlovic &lt;<a href="mailto:bpboci24@gmail.com" rel="noreferrer noreferrer noreferrer" target="_blank">bpboci24@gmail.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Hi Richard,</div><div><br></div><div>Thank you for promt response. Actually, it is a part of my thesis at faculty. I am required to compare different Intrusion detection systems such as Zeek and aforementioned Suricata and Snort based on dataset CICIDS2017 which contains malicious (Bruteforce, DoS, Web attacks...) and benign traffic. What I need is to classify/label traffic with these different IDS tools, but I haven&#39;t found the way anywhere how to do that with Zeek. Attached, you can find two images. The first one is .csv file that contains different flow-based features and labeled traffic (benign or ftp patator). I am not sure is Bro able to perform this kind of analysis at all. The second image is notice.log made after running policy/protocols/ssh/detect-bruteforcing.zeek script against .pcap file. It would mean a lot to me if you know is there some kind of custom script written in Zeek which can label all the traffic per each instances? <br></div><div><br></div><div>Best regards <br></div><div><br></div><div>Borivoje<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Oct 21, 2019 at 10:59 PM Richard Bejtlich &lt;<a href="mailto:richard@corelight.com" rel="noreferrer noreferrer noreferrer" target="_blank">richard@corelight.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hello,<div><br></div><div>The notice log would contain any information pertaining to the policy/protocols/ssh/detect-bruteforcing.zeek script.</div><div><br></div><div>However, I&#39;m a little concerned by the nature of your task. Zeek isn&#39;t really designed as an &quot;intrusion detection system&quot; like Snort or Suricata. Is this a school project?</div><div><br></div><div>Sincerely,</div><div><br></div><div>Richard</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Oct 21, 2019 at 2:18 PM Borivoje Pavlovic &lt;<a href="mailto:bpboci24@gmail.com" rel="noreferrer noreferrer noreferrer" target="_blank">bpboci24@gmail.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Hi all,</div><div><br></div><div>I am beginner in Zeek. Currently, I have a task to perform analysis of . pcap files and detect all possible attacks per time instances. In the other words I have to test Zeek as an IDS tool and find with which percentage is Zeek able to classify traffic correctly (True/False positive, True/False negative indication). Is there possibility to do so? For example, I tried to run integrated Brute-Forcing.zeek script against my .pcap file but in the notice.log there is just note that there was an attack which is not what I am looking. Do I have to search for labeled network in some other logs? <br></div><div><br></div><div>Thanks in advance</div><div><br></div><div>Borivoje<br></div><div><br></div></div>
_______________________________________________<br>
Zeek mailing list<br>
<a href="mailto:zeek@zeek.org" rel="noreferrer noreferrer noreferrer" target="_blank">zeek@zeek.org</a><br>
<a href="http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/zeek" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/zeek</a></blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr">Richard Bejtlich<div>Principal Security Strategist, Corelight</div><div><a href="https://corelight.blog/author/richardbejtlich/" rel="noreferrer noreferrer noreferrer" target="_blank">https://corelight.blog/author/richardbejtlich/</a><br></div></div></div></div></div></div></div>
</blockquote></div>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr">Richard Bejtlich<div>Principal Security Strategist, Corelight</div><div><a href="https://corelight.blog/author/richardbejtlich/" rel="noreferrer noreferrer noreferrer" target="_blank">https://corelight.blog/author/richardbejtlich/</a><br></div></div></div></div></div></div></div>
</blockquote></div>
</blockquote></div></div>-- <br><div dir="ltr"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr">Richard Bejtlich<div>Principal Security Strategist, Corelight</div><div><a href="https://corelight.blog/author/richardbejtlich/" target="_blank">https://corelight.blog/author/richardbejtlich/</a><br></div></div></div></div></div></div></div>
_______________________________________________<br>
Zeek mailing list<br>
<a href="mailto:zeek@zeek.org" target="_blank">zeek@zeek.org</a><br>
<a href="http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/zeek" rel="noreferrer" target="_blank">http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/zeek</a></blockquote></div></div>