A Performance Analysis of Intru- Sion Detection with Snort and Se

Total Page:16

File Type:pdf, Size:1020Kb

A Performance Analysis of Intru- Sion Detection with Snort and Se Linköping University | Department of Computer and Information Science Master’s thesis, 30 ECTS | Datateknik 2021 | LIU-IDA/LITH-EX-A--21/068--SE A Performance Analysis of Intru- sion Detection with Snort and Se- curity Information Management En Prestandaanalys av Intrångsdetektering med Snort och Hantering av Säkerhetsinformation Christian Thorarensen Supervisor : Mohammad Borhani Examiner : Andrei Gurtov External supervisor : Villiam Rydfalk Linköpings universitet SE–581 83 Linköping +46 13 28 10 00 , www.liu.se Upphovsrätt Detta dokument hålls tillgängligt på Internet - eller dess framtida ersättare - under 25 år från publicer- ingsdatum under förutsättning att inga extraordinära omständigheter uppstår. Tillgång till dokumentet innebär tillstånd för var och en att läsa, ladda ner, skriva ut enstaka ko- pior för enskilt bruk och att använda det oförändrat för ickekommersiell forskning och för undervis- ning. Överföring av upphovsrätten vid en senare tidpunkt kan inte upphäva detta tillstånd. All annan användning av dokumentet kräver upphovsmannens medgivande. För att garantera äktheten, säker- heten och tillgängligheten finns lösningar av teknisk och administrativ art. Upphovsmannens ideella rätt innefattar rätt att bli nämnd som upphovsman i den omfattning som god sed kräver vid användning av dokumentet på ovan beskrivna sätt samt skydd mot att dokumentet ändras eller presenteras i sådan form eller i sådant sammanhang som är kränkande för upphovsman- nens litterära eller konstnärliga anseende eller egenart. För ytterligare information om Linköping University Electronic Press se förlagets hemsida http://www.ep.liu.se/. Copyright The publishers will keep this document online on the Internet - or its possible replacement - for a period of 25 years starting from the date of publication barring exceptional circumstances. The online availability of the document implies permanent permission for anyone to read, to down- load, or to print out single copies for his/hers own use and to use it unchanged for non-commercial research and educational purpose. Subsequent transfers of copyright cannot revoke this permission. All other uses of the document are conditional upon the consent of the copyright owner. The publisher has taken technical and administrative measures to assure authenticity, security and accessibility. According to intellectual property law the author has the right to be mentioned when his/her work is accessed as described above and to be protected against infringement. For additional information about the Linköping University Electronic Press and its procedures for publication and for assurance of document integrity, please refer to its www home page: http://www.ep.liu.se/. © Christian Thorarensen Abstract Network intrusion detection systems (NIDSs) are a major component in cybersecurity and can be implemented with open-source software. Active communities and researchers continue to improve projects and rulesets used for detecting threats to keep up with the rapid development of the internet. With the combination of security information manage- ment, automated threat detection updates and widely used software, the NIDS security can be maximized. However, it is not clear how different combinations of software and basic settings affect network performance. The main purpose in this thesis was to find out how multithreading, standard ruleset configurations and near real-time data shipping affect Snort IDS’ online and offline per- formance. Investigations and results were designed to guide researchers or companies to enable maximum security with minimum impact on connectivity. Software used in per- formance testing was limited to Snort 2.9.17.1-WIN64 (IDS), Snort 3.1.0.0 (IDS), PulledPork (rule management) and Open Distro for Elasticsearch (information management). To in- crease the replicability of this study, the experimentation method was used, and network traffic generation was limited to 1.0 Gbit/s hardware. Offline performance was tested with traffic recorded from a webserver during February 2021 to increase the validity of test re- sults, but detection of attacks was not the focus. Through experimentation it was found that multithreading enabled 68-74% less run- time for offline analysis on an octa-thread system. On the same system, Snort’s drop rate was reduced from 9.0% to 1.1% by configuring multiple packet threads for 1.0 Gbit/s traf- fic. Secondly, Snort Community and Proofpoint ET Open rulesets showed approximately 1% and 31% dropped packets, respectively. Finally, enabling data shipping services to in- tegrate Snort with Open Distro for Elasticsearch (ODFE) did not have any negative impact on throughput, network delay or Snort’s drop rate. However, the usability of ODFE needs further investigation. In conclusion, Snort 3 multithreading enabled major performance benefits but not all open-source rules were available. In future work, the shared security information man- agement solution could be expanded to include multiple Snort sensors, triggers, alerting (email) and suggested actions for detected threats. Acknowledgments First, I am extremely grateful to Andrei Gurtov and Mohammad Borhani for the great feed- back during the whole thesis project. Secondly, a big thank you to MindRoad AB for pro- viding me with this assignment and a great work environment at their COVID-safe office in Linköping Science Park. Finally, I would like to thank Cornelia Folke for her love, support and never-ending belief in me. iv Contents Abstract iii Acknowledgments iv Contents v List of Figures viii List of Tables ix Listings x 1 Introduction 1 1.1 Motivation . 1 1.2 Aim............................................ 2 1.3 Research questions . 3 1.4 Delimitations . 3 1.5 MindRoad AB . 4 2 Theory 5 2.1 Intrusion detection . 5 2.2 Intrusion detection system categories . 5 2.3 Intrusion prevention . 7 2.4 IDS and IPS differences . 7 2.5 Snort . 9 2.5.1 Snort architecture . 9 2.5.2 Snort sniffing, logging and network interfaces . 9 2.5.3 Snort pcap readback . 10 2.5.4 Snort rules . 12 2.5.5 Snort NIDS . 13 2.5.6 Snort packet I/O and LibDAQ . 13 2.5.7 Preprocessors . 13 2.5.8 PulledPork . 14 2.6 Rulesets . 14 2.6.1 Snort Community Ruleset . 14 2.6.2 Snort Subscriber Ruleset . 14 2.6.3 Snort Registered Ruleset . 14 2.6.4 Proofpoint Emerging Threats Open Rules . 15 2.6.5 Proofpoint Emerging Threats Pro Rules . 15 2.7 Elastic Stack . 15 2.7.1 Elasticsearch . 16 2.7.2 Kibana . 16 2.7.3 Logstash . 16 v 2.7.4 Beats . 18 2.7.5 Open source and software licenses . 18 2.8 Open Distro for Elasticsearch . 18 2.9 D-ITG . 18 3 Related Work 19 3.1 IDS: Detection of attacks . 19 3.2 IDS: Performance, load and stress testing . 20 3.3 IDS: Packet I/O performance . 22 3.4 IDS: Network traffic generation for testing . 22 3.5 IDS: Encrypted traffic . 23 3.6 Security information and event management . 24 3.7 Related work compared to this thesis . 25 4 Method 26 4.1 Pre-study . 26 4.1.1 Experimentation in software engineering . 26 4.1.2 Definitions in experimentation . 27 4.1.3 Methods in related work . 28 4.2 Experiment planning . 29 4.2.1 Snort, PulledPork and SIEM . 29 4.2.2 Variable definitions . 29 4.2.3 Datasets . 30 4.2.4 Snort rulesets . 33 4.2.5 Snort performance test rule and payload . 34 4.2.6 D-ITG network traffic generation configurations . 34 4.2.7 SIEM integration and test environment . 35 4.2.8 Information management . 35 4.2.9 Snort 3 multiple packet threads and DAQ . 37 4.3 Experiment design . 37 4.3.1 Experiment: Snort pcap readback and packet threads . 37 4.3.2 Experiment: Snort pcap readback, standard rulesets and policies . 39 4.3.3 Experiment: Snort IDS real-time performance . 41 4.4 Experiment presentation . 44 5 Results 45 5.1 Snort pcap readback and packet threads . 45 5.2 Snort pcap readback, standard rulesets and policies . 47 5.2.1 MR1: Snort 2 Community Max-detect alerts . 47 5.2.2 MR1: ET Open alerts . 49 5.2.3 MR1: Snort 2 built-in rules alerts . 49 5.2.4 MR1: All rulesets . 49 5.3 Snort IDS real-time performance . 50 5.3.1 Generated network traffic with and without Snort . 50 5.3.2 Snort 3 packet threads . 50 5.3.3 Snort 2 open-source rulesets . 51 5.3.4 SIEM integration . 51 5.3.5 Snort 3 DAQs: pcap vs afpacket . 52 6 Discussion 53 6.1 Results . 53 6.1.1 Snort pcap readback and packet threads . 53 6.1.2 Snort pcap readback and rulesets . 54 vi 6.1.3 Snort rulesets and detection of attacks . 54 6.1.4 Snort IDS real-time performance . 55 6.1.5 SIEM integration . 55 6.1.6 Snort 3 DAQs: pcap vs afpacket . 55 6.1.7 Snort IDS real-time performance hypotheses . 56 6.2 Method . 56 6.2.1 Experimentation . 56 6.2.2 Datasets . 56 6.2.3 Snort IDS and environment . 57 6.2.4 Snort, NIC and truncation . ..
Recommended publications
  • Intrusion Detection Systems (IDS)
    Intrusion Detection Systems (IDS) Adli Wahid Role of Detection in Security • Part of security monitoring o Violation of security policies o Indicators of compromise o Threat drive or Vulnerability driven o What’s happening on the network? • Rules o Detection is based on rules • Action • What do we do when detection happens? • Alert and Investigate • Drop / Block Perspective – Adversary Tactics and Techniques • Mitre Att&ck Framework https://attack.mitre.org • Tactics – what are the goals of the adversary? • Technique – how do they do it? • SubJect to: o Resources o Platforms • Can we used this knowledge for detection? o Observe Adversaries Behaviour o Techniques, Tactics and Procedures (TTPs) o Deploy in prevention, detection, response Your Adversaries Motives Infrastructure Targets Behaviour Your Assets Your Systems Reference: https://published-prd.lanyonevents.com/published/rsaus19/sessionsFiles/13884/AIR-T07-ATT%26CK-in-Practice-A-Primer-to-Improve-Your-Cyber-Defense-FINAL.pdf Reference: https://published-prd.lanyonevents.com/published/rsaus19/sessionsFiles/13884/AIR-T07-ATT%26CK-in-Practice-A-Primer-to-Improve-Your-Cyber-Defense-FINAL.pdf Making Your Infrastructure Forensics Ready • Detecting known or potentially malicious activities • Part of the incident response plan • If your infrastructure is compromised o Can you answer the questions: what happened and since when? o Can we ‘go back in time’ and how far back? • What information you you need to collect and secure? • Centralized logging Intrusion Detection Systems • An intrusion
    [Show full text]
  • USING LUA for DETECTION and MALWARE TRAFFIC ANALYSIS Dr Chris Wakelin, Senior Threat Analyst, Proofpoint November 2018
    MOONSTRUCK: USING LUA FOR DETECTION AND MALWARE TRAFFIC ANALYSIS Dr Chris Wakelin, Senior Threat Analyst, Proofpoint November 2018 1 © 2018 Proofpoint, Inc. Introduction . “Lua” is Portuguese for “Moon” . Small extensible language . Considered “well-engineered” by experts : . “If you read ... you'll see that the Lua team were well aware of many developments in programming languages and were able to choose from among the best ideas. Most designers of popular scripting languages have been amateurs and have not been nearly so well informed ... Lua is superbly designed so that the pieces fit together very nicely, with an excellent power-to-weight ratio ... Lua is superbly engineered. The implementation is just staggeringly good ...” . Currently used in . Wireshark . Games (Angry Birds, Crysis, Far Cry, Gary’s Mod …) . etc. 2 © 2018 Proofpoint, Inc. Introduction . Lua(jit) scripting support added initially in September 2012 . After suggestion by Will Metcalf of Emerging Threats . Lua Output support added March 2014 . Lua flowvar support added in 2013 . but only viewable (logged) from December 2016 3 © 2018 Proofpoint, Inc. Lua vs LuaJIT . LuaJIT – Just-In-Time compiler for Lua . Stable version 2.0.5 . Ubuntu 16.04 LTS included 2.0.4 . Development – version 2.1beta3 (for 18 months …) . Included in Ubuntu 18.04 LTS though . Some caveats . Based on older Lua 5.1 . Latest Lua is version 5.4 . Need to pre-allocate buffers in Suricata . Probably best to stick to Lua 5.1 features 4 © 2018 Proofpoint, Inc. Lua/LuaJIT options Suricata “configure” options (pick one) --enable-lua Enable Lua support --enable-luajit Enable Luajit support suricata.yaml … # Luajit has a strange memory requirement, it's 'states' need to be in the # first 2G of the process' memory.
    [Show full text]
  • Downloads." the Open Information Security Foundation
    Performance Testing Suricata The Effect of Configuration Variables On Offline Suricata Performance A Project Completed for CS 6266 Under Jonathon T. Giffin, Assistant Professor, Georgia Institute of Technology by Winston H Messer Project Advisor: Matt Jonkman, President, Open Information Security Foundation December 2011 Messer ii Abstract The Suricata IDS/IPS engine, a viable alternative to Snort, has a multitude of potential configurations. A simplified automated testing system was devised for the purpose of performance testing Suricata in an offline environment. Of the available configuration variables, seventeen were analyzed independently by testing in fifty-six configurations. Of these, three variables were found to have a statistically significant effect on performance: Detect Engine Profile, Multi Pattern Algorithm, and CPU affinity. Acknowledgements In writing the final report on this endeavor, I would like to start by thanking four people who made this project possible: Matt Jonkman, President, Open Information Security Foundation: For allowing me the opportunity to carry out this project under his supervision. Victor Julien, Lead Programmer, Open Information Security Foundation and Anne-Fleur Koolstra, Documentation Specialist, Open Information Security Foundation: For their willingness to share their wisdom and experience of Suricata via email for the past four months. John M. Weathersby, Jr., Executive Director, Open Source Software Institute: For allowing me the use of Institute equipment for the creation of a suitable testing
    [Show full text]
  • Securing Security Tools Suricon Ö.Wï
    Securing Security Tools SuriCon ö.wÏ Pierre Chiìier [email protected] French National Information Security Agency ö.wÏ ANSSI ◮ Created on July Åth ö..R, theANSSI (FrenchNetwork and Information SecurityAgency)isthe national authorityfor the defense and the security of information systems. ◮ Under the authority of the Prime Minister ◮ Main missions are: ◮ prevention ◮ defense of information systems ◮ awareness-rising http://www.ssi.gouv.fr/en/ ANSSI Securing Security Tools ö/öÏ Securing Security Tools Objectives of this talk: ◮ Improving security of tools ◮ Not on small steps,but trying to solve problems ◮ Consider alternatives to common solutions ◮ Test our claims ANSSI Securing Security Tools é/öÏ What is a network IDS ? A device that ◮ monitors network for malicious activity ◮ does stateful protocol analysis ◮ raises alerts to the administrators ◮ has to be fast ANSSI Securing Security Tools ÿ/öÏ What is a network IDS ? From the security point of view, a NIDS is: ◮ exposed to malicious traíc ◮ running lots of protocols dissectors ◮ connected to the admin network ◮ coded for performance ANSSI Securing Security Tools ó/öÏ Root causes ◮ Bad speciícations ◮ when they exist ◮ Design complexity and attack surface ◮ Formats complexity ◮ Programming language ◮ Paradox: many security tools are not securely coded ◮ “I’ll íx it later” ◮ Infosec peopleconsidering it’s “not their job” ANSSI Securing Security Tools Ï/öÏ Mimimal solutions ◮ Finding vulns does not (really)help security! ◮ But it helps (raising awareness, demonstrating the
    [Show full text]
  • Release 3.2Dev OISF
    Suricata User Guide Release 3.2dev OISF Jun 07, 2017 Contents 1 What is Suricata 1 1.1 About the Open Information Security Foundation............................1 2 Installation 3 2.1 Source..................................................3 2.2 Binary packages.............................................4 2.3 Advanced Installation..........................................5 3 Command Line Options 7 3.1 Unit Tests.................................................9 4 Suricata Rules 11 4.1 Rules Introduction............................................ 11 4.2 Meta-settings............................................... 16 4.3 Header Keywords............................................ 20 4.4 Prefilter.................................................. 31 4.5 Payload Keywords............................................ 32 4.6 HTTP Keywords............................................. 51 4.7 Flow Keywords.............................................. 67 4.8 Flowint.................................................. 70 4.9 Xbits................................................... 72 4.10 File Keywords.............................................. 73 4.11 Rule Thresholding............................................ 75 4.12 DNS Keywords.............................................. 77 4.13 SSL/TLS Keywords........................................... 78 4.14 Modbus Keyword............................................ 81 4.15 DNP3 Keywords............................................. 82 4.16 ENIP/CIP Keywords..........................................
    [Show full text]
  • A Comparative Analysis of the Snort and Suricata Intrusion-Detection Systems
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Calhoun, Institutional Archive of the Naval Postgraduate School Calhoun: The NPS Institutional Archive Theses and Dissertations Thesis Collection 2011-09 A comparative analysis of the Snort and Suricata intrusion-detection systems Albin, Eugene Monterey, California. Naval Postgraduate School http://hdl.handle.net/10945/5480 NAVAL POSTGRADUATE SCHOOL MONTEREY, CALIFORNIA THESIS A COMPARATIVE ANALYSIS OF THE SNORT AND SURICATA INTRUSION-DETECTION SYSTEMS by Eugene Albin September 2011 Thesis Advisor: Neil Rowe Second Reader: Rex Buddenberg Approved for public release; distribution is unlimited THIS PAGE INTENTIONALLY LEFT BLANK REPORT DOCUMENTATION PAGE Form Approved OMB No. 0704-0188 Public reporting burden for this collection of information is estimated to average 1 hour per response, including the time for reviewing instruction, searching existing data sources, gathering and maintaining the data needed, and completing and reviewing the collection of information. Send comments regarding this burden estimate or any other aspect of this collection of information, including suggestions for reducing this burden, to Washington headquarters Services, Directorate for Information Operations and Reports, 1215 Jefferson Davis Highway, Suite 1204, Arlington, VA 22202-4302, and to the Office of Management and Budget, Paperwork Reduction Project (0704-0188) Washington DC 20503. 1. AGENCY USE ONLY (Leave blank) 2. REPORT DATE 3. REPORT TYPE AND DATES COVERED September 2011 Master’s Thesis 4. TITLE AND SUBTITLE 5. FUNDING NUMBERS A Comparative Analysis of the Snort and Suricata Intrusion-Detection Systems 6. AUTHOR(S) Eugene Albin 7. PERFORMING ORGANIZATION NAME(S) AND ADDRESS(ES) 8.
    [Show full text]
  • Suricata IDPS and Its Interaction with Linux Kernel
    Suricata IDPS and its interaction with Linux kernel Eric Leblond, Giuseppe Longo Stamus Networks France, Italy [email protected] [email protected] Abstract All reconstructions that are handled differently by operating system due to RFC incompletion or bad implementation must Suricata is an open source network intrusion detection and pre- be taken into account by the IDS. If streaming is not done this vention system. It analyzes the traffic content against a set of signatures to discover know attacks and also journalize proto- way, then attackers can abuse this interpretation mistake to col information. get this attack unnoticed. For instance, if they attack a Win- One particularity of IDS systems is that they need to analyze dows operating system seen as a Linux by the IDS, they just the traffic as it is seen by the target. For example, the TCP need to use a TCP segmentation scheme that is done differ- streaming reconstruction has to be done the same way it is done ently on Linux and on Windows so the IDS will see a content on the target operating systems and for this reason it can’t rely that is not the one received by the target. This kind of tech- on its host operating system to do it. nique is called evasion [4] and it is available in attack tools Suricata interacts in a number of ways with the underlying just as Metasploit [2]. For this reason it can’t rely on the op- operating system to capture network traffic. Under Linux erating system it is running on to do it.
    [Show full text]
  • Based Intrusion Detection System
    EXAMENSARBETE INOM ELEKTRONIK OCH DATORTEKNIK, GRUNDNIVÅ, 15 HP STOCKHOLM, SVERIGE 2019 Machine Learning for a Network- based Intrusion Detection System Maskininlärning för ett Nätverksbaserat Intrångsdetekteringssystem VILHELM GUSTAVSSON KTH SKOLAN FÖR ELEKTROTEKNIK OCH DATAVETENSKAP Machine Learning for a Network-based Intrusion Detection System An application using Zeek and the CCIDS2017 dataset Swedish title: Maskininl¨arningf¨orett N¨atverksbaserat Intr˚angsdetekteringssystem Thesis project for the degree: Bachelor of Science in Computer Engineering Vilhelm Gustavsson May 2019 Royal Institute of Technology, KTH School of Electrical Engineering and Computer Science Stockholm, Sweden TRITA-CBH-GRU-2019:033 Abstract Cyber security is an emerging field in the IT-sector. As more devices are con- nected to the internet, the attack surface for hackers is steadily increasing. Network-based Intrusion Detection Systems (NIDS) can be used to detect ma- licious traffic in networks and Machine Learning is an up and coming approach for improving the detection rate. In this thesis the NIDS Zeek is used to extract features based on time and data size from network traffic. The features are then analyzed with Machine Learning in Scikit-learn in order to detect malicious traf- fic. A 98.58% Bayesian detection rate was achieved for the CICIDS2017 which is about the same level as the results from previous works on CICIDS2017 (with- out Zeek). The best performing algorithms were K-Nearest Neighbors, Random Forest and Decision Tree. Sammanfattning (Swedish abstract) IT-s¨akerhet ¨ar ett v¨axande f¨alt inom IT-sektorn. I takt med att allt fler sa- ker ansluts till internet, ¨okar ¨aven angreppsytan och risken f¨or IT-attacker.
    [Show full text]
  • Running Bro on BSD
    Running Bro on BSD An analysis of high performance solutions running on BSD operating systems. Michael Shirk BroCon 2016 @Shirkdog http://github.com/Shirkdog Agenda l Introduction l Bro is awesome l Why FreeBSD? l High Performance and FreeBSD l FreeBSD at the Berkley Lab l PF_RING vs. netmap l OpenBSD Rant Warning l Whenever you see the beastie with a hammer, there is a potential for some BSD bias to slip in. l The goal is to minimize this throughout the talk. l All information not cited in this talk is based on personal experience or opinion (marked with an asterisk *). Introduction l Worked in IDS/IPS since 2003 (various positions including consulting) - Engines: Snort, Suricata, Dragon and now Bro (also had to work with McAfee, ISS, NFR … others) - Signatures for Emerging Threats (since they were Bleeding Edge Snort) l Support Open Source Security Tools and Software - Maintain pulledpork for Snort/Suricata (rule updating script): http://github.com/shirkdog/pulledpork - Active community member of open source projects: l Operating Systems: FreeBSD, OpenBSD, HardenedBSD l Security Tools: Snort, Suricata, AIDE, Bro (starting) Bro Beginnings l 2013 – Bro setup on Linux with PF_RING and Suricata ( Dell R610 12 Core 32GB Appliance) - PoC was Security Onion, the production setup was on Ubuntu with PF_RING, Suricata and nothing else. - Gigamon TAP aggregated data to a single 10Gb Fiber interface fed to the Bro/Suricata sensor. - ~700Mbps peak, ~350Mbps non-peak l Bro logs were fed into Splunk (modified Splunk_TA_Bro to work with log formats) l Set it and forget it, it's just that simple.
    [Show full text]
  • Intrusion Detection Systems for Smart Home Iot Devices: Experimental Comparison Study
    Intrusion Detection Systems for Smart Home IoT Devices: Experimental Comparison Study Faisal Alsakran1, Gueltoum Bendiab1, Stavros Shiaeles2, and Nicholas Kolokotronis3 1 CSCAN, University of Plymouth, PL4 8AA, Plymouth, UK [email protected], [email protected] 2 School of Computing, University of Portsmouth, PO1 2UP, Portsmouth, UK [email protected] 3 Department of Informatics and Telecommunications, University of Peloponnese, 22131 Tripolis, Greece [email protected] ABSTRACT Smart homes are one of the most promising applications of the 1 INTRODUCTION emerging Internet of Things (IoT) technology. With the growing Smart home technology also often referred to as home automation number of IoT related devices such as smart thermostats, smart allows the entire home to be automated and therefore, the connected fridges, smart speaker, smart light bulbs and smart locks, smart smart home devices can be remotely controlled and operated, from any homes promise to make our lives easier and more comfortable. location in the world, through a smartphone app, iPads or other network However, the increased deployment of such smart devices brings an devices [13]. In recent years, smart home technology is gaining increase in potential security risks and home privacy breaches. In tremendous ground at all levels. Economic reports affirm that connected order to overcome such risks, Intrusion Detection Systems are home market becomes the largest IoT segment at seven billion related presented as pertinent tools that can provide network-level smart devices in 2018, which present 26% of the global IoT devices protection for smart devices deployed in home environments. These market [14]. According to Gartner [32] this segment is expected to grow systems monitor the network activities of the smart home-connected to 20.4 billion devices by 2020.
    [Show full text]
  • Writing Parsers Like It Is 2017
    Writing parsers like it is 2017 Pierre Chifflier1 and Geoffroy Couprie2 [email protected] [email protected] 1 ANSSI 2 Clever Cloud Abstract. Despite being known since a long time, memory violations are still a very important cause of security problems in low-level programming languages containing data parsers. We address this problem by proposing a pragmatic solution to fix not only bugs, but classes of bugs. First, using a fast and safe language such as Rust, and then using a parser combinator. We discuss the advantages and difficulties of this solution, and we present two cases of how to implement safe parsers and insert them in large C projects. The implementation is provided as a set of parsers and projects in the Rust language. 1 Introduction 1.1 Manipulating data and related problems In 2016, like every year for a long time, memory corruption bugs have been one of the first causes of vulnerabilities of compiled programs [2]. When looking at the C programming language, many errors lead to memory corruption: buffer overflow, use after free, double free, etc. Some of these issues can be complicated to diagnose, and the consequence is that a huge quantity of bugs is hidden in almost all C software. Any software manipulating untrusted data is particularly exposed: it needs to parse and interpret data that can be controlled by the attacker. Unfortunately, data parsing is often done in a very unsafe way, especially for network protocols and file formats. For example, many bugs were discovered in media parsing libraries in Android [12], leading to the possible remote exploitation of all devices by a simple MMS message.
    [Show full text]
  • Effective Implementation of Dynamic Classification for Network Forensic and Traffic Analysis
    International Journal of Computing and Business Research (IJCBR) ISSN (Online) : 2229-6166 Volume 6 Issue 2 March 2015 EFFECTIVE IMPLEMENTATION OF DYNAMIC CLASSIFICATION FOR NETWORK FORENSIC AND TRAFFIC ANALYSIS Manu Bansal Assistant Professor Department of IT University Institute of Engineering & Technology Panjab University, Sector 25, Chandigarh ABSTRACT Packet capturing is one of classical and most frequently used task performed by the network administrators. This is done to fetch the packets traveling in the network and finally detect any suspicious activity in the network. Finally, any out of the way activity or abnormal activity is analyzed by the intrusion detection system (IDS) tools for classification of attacks or type of the traffic. Enormous IDS tools are available including open source products which can classify the attacks or traffic from the PCAP (Packet Capture) Files fetched from honeypots or servers. This article explains about various aspects of PCAP and the detailed process of analyzing the PCAP using Snort IDS Tool for classification of traffic. Keywords – Network Forensic using Data Mining, PCAP Analysis, Honeypot and Honeynets International Journal of Computing and Business Research (IJCBR) ISSN (Online) : 2229-6166 Volume 6 Issue 2 March 2015 INTRODUCTION Network administrators generally face the regular issues of intrusion in their network by different media. To cope up with such issues, they make use of pcap (packet capture) that is having the application programming interface (API) for capturing the network traffic from different dimensions including ports, IP Addresses and associated parameters. In case of Unix- like systems, pcap is implemented in libpcap library. In case of Windows, it implements a port of libpcap that is known as WinPcap.
    [Show full text]