Suricata
Author: c | 2025-04-24
All users of Suricata 6 or earlier are strongly recommended to update to Suricata 7 soon. More information on the EOL policy EOL Policy - Suricata. About Suricata. Suricata is a
Suricata 7.0.8 released! - Suricata
Prevention mode. If our sensors are deployed in-line, you choose prevention mode and the Suricata engine drops the packets in-flight if it determines a rule matches those packets. It’s worth pointing out that this isn’t a point of differentiation because Snort works this way too.Does Suricata have a community?Suricata is backed by the Open Information Security Foundation (OISF) which provides long term protection for the openness of the code and helps to foster a community. The OISF helps to provide structure to Suricata training opportunities, resources, and the annual conference, SuriCon.Those interested in learning more can follow Suricata on Twitter – @Suricata_IDS – and below we’ve curated several additional resources from around the web. 1) Suricata Frequently Asked Questions (FAQs)2) Suricata User Guide and download3) Infosec Institute: Open Source IDS: Snort or Suricata? [Updated 2019]4) eSecurity Planet: 10 Open Source Security Breach Prevention and Detection Tools5) YouTube: Bro Befriends Suricata by Michal Purzynski6) SlideShare: Suricata: A Decade Under the Influence (of packet sniffing)* * *Is there a resource you think we should add here? Please Tweet us up @BricataInc or send us a note at [email protected].If you enjoyed this post, you might also like: Snort, Suricata and Bro: 3 Open Source Technologies for Securing Modern NetworksRecent Articles By Author*** This is a Security Bloggers Network syndicated blog from Bricata authored by Bricata. Read the original post at: 513M Active, 1025M Inact, 2057M Wired, 56K Buf, 12G FreeARC: 539M Total, 270M MFU, 248M MRU, 1661K Anon, 2880K Header, 15M Other461M Compressed, 1156M Uncompressed, 2.51:1 RatioSwap: 1024M Total, 1024M Free @stephenw10 Thermal SensorsIntel Core* CPU on-die thermal sensor You have SpeedShift enabled?Be good to see more of that top output so we know what's generating that CPU load. @stephenw10PID USERNAME PRI NICE SIZE RES STATE C TIME WCPU COMMAND 11 root 187 ki31 0B 64K CPU2 2 122:26 58.07% [idle{idle: cpu2}] 11 root 187 ki31 0B 64K CPU1 1 122:25 57.91% [idle{idle: cpu1}] 11 root 187 ki31 0B 64K RUN 3 122:21 57.13% [idle{idle: cpu3}] 11 root 187 ki31 0B 64K CPU0 0 124:38 56.37% [idle{idle: cpu0}]69815 root 24 0 855M 469M select 3 0:57 17.04% /usr/local/bin/suricata --netmap -D -c /usr/local/etc/suricata/suricata_12484_igc1/suricata.yaml --pidfile /var/run/suric69815 root 24 0 855M 469M select 3 0:58 16.84% /usr/local/bin/suricata --netmap -D -c /usr/local/etc/suricata/suricata_12484_igc1/suricata.yaml --pidfile /var/run/suric69815 root 23 0 855M 469M select 3 0:50 15.64% /usr/local/bin/suricata --netmap -D -c /usr/local/etc/suricata/suricata_12484_igc1/suricata.yaml --pidfile /var/run/suric69815 root 23 0 855M 469M select 2 1:05 14.86% /usr/local/bin/suricata --netmap -D -c /usr/local/etc/suricata/suricata_12484_igc1/suricata.yaml --pidfile /var/run/suric69815 root 24 0 855M 469M select 2 1:05 14.11% /usr/local/bin/suricata --netmap -D -c /usr/local/etc/suricata/suricata_12484_igc1/suricata.yaml --pidfile /var/run/suric 12 root -60 - 0B 320K WAIT 3 0:22 10.66% [intr{swi1: netisr 1}]69815 root 23 0 855M 469M select 0 1:24 9.82% /usr/local/bin/suricata --netmap -D -c /usr/local/etc/suricata/suricata_12484_igc1/suricata.yaml --pidfile /var/run/suric69815 root 21 0 855M 469M select 0 1:32 7.52% /usr/local/bin/suricata --netmap -D -c /usr/local/etc/suricata/suricata_12484_igc1/suricata.yaml --pidfile /var/run/suric56778 root 21 0 550M 390M bpf 1Suricata 7.0.0 released! - Suricata
Number of alerts?Therefore:Distributed deployment of Suricata, adapting to multi-data center business scenarios, and reporting data statistics to ES;If traffic cannot be handled, use dumpcap to split the mirrored traffic before analyzing it with Suricata;Store Suricata’s analysis logs in Elasticsearch (ELK) for big data analysis;DIY a security analysis backend to correlate existing HIDS data and log system data to identify more valuable and urgent attack events;Block the identified attack events using hardware FW and system iptables.0x04 DeploymentSuricata Deployment for Security Data AnalysisDeployment on CentOS 7, version: Suricata 4.0.5 yum install epel-release yum install suricata yum install wget libpcap-devel libnet-devel pcre-devel gcc-c++ automake autoconf libtool make libyaml-devel zlib-devel file-devel jansson-devel nss-develELK DeploymentI deployed version 6.2. Download it online and follow the deployment instructions. The specific process is omitted. elasticsearch-6.2.0.rpm logstash-6.2.0.rpm kibana-6.2.0-x86_64.rpmSuricata Rules and Configuration:Rule introduction reference: rule explanation reference: 1. Direct update and replacement wget 2. Suricata rule updates can be performed using suricata-update yum install python-pip python-yaml pip install --pre --upgrade suricata-updateEnter suricata-update to automatically update the rules, showing how many rules have been updated and enabled. 3. Suricata.yaml configuration fileNetwork configuration can be tailored to the actual network architecture for targeted detection:Select the detection rules to load. Some default rules can be removed to reduce false positives. Here are the rules I enabled:Reference: Configurationsuricata_logstash.conf, to collect Suricata intrusion detection data into ES: input { file { path => ["/var/log/suricata/eve.json*"] codec => "json" type => "SuricataIDS" } } filter { if [type] == "SuricataIDS" { date { match => [ "timestamp", "ISO8601" ] } ruby { code => " if event.get('[event_type]') == 'fileinfo' event.set('[fileinfo][type]', event.get('[fileinfo][magic]').to_s.split(',')[0]) end " } ruby{ code => " if event.get('[event_type]') == 'alert' sp = event.get('[alert][signature]').to_s.split(' group ') if (sp.length == 2) and /Ad+z/.match(sp[1]) event.set('[alert][signature]', sp[0]) end end 0x05 Data Analysis1) Suricata DataCreating a Kibana dashboard for data analysis is the simplest method. You can download the necessary JSON files for the Kibana dashboard and add them to Kibana: starting Suricata for network intrusion detection, an eve.json file is generated. Use the ELK stack to process this file and display alerts in Kibana. The specific interface is shown below:2) Comprehensive Correlation AnalysisComprehensive correlation analysis involves linking current data, such as HIDS, WAF (based on ELK), CMDB, etc.For example:Scenario 1: Suricata detects a large number of scanning and brute-force attempts. By correlating the source IP of this event with CMDB data, if a match is found, it is highly. All users of Suricata 6 or earlier are strongly recommended to update to Suricata 7 soon. More information on the EOL policy EOL Policy - Suricata. About Suricata. Suricata is aSuricata 6.0.9 released! - Suricata
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters Show hidden characters **** Firing up Suricata on your Windows 10 box: **** This is a very quick and dirty way to get it up and running so you can experiment on it. There are lots of settings and things that i jump over, you should dig into the settings on your own. 1. Start by getting the 64 bit MSI with Suricata. Install to default location: "C:\Program files\Suricata" ____________________________________________________________________________________________________ 2. Suricata requires NPCAP. If you got wireshark installed, you got this already, current version (2021-Sep-24) of NPCAP is 1.31 If you don't use wireshark (which you should), you can find it here: Due to a path bug in Suricata, you need to copy the following files to "C:\Program files\Suricata" as it can't find them: C:\Windows\System32\Npcap\Packet.dll C:\Windows\System32\Npcap\wpcap.dll ____________________________________________________________________________________________________ 3. Configure Suricata: there is a configuration file: "suricata.yaml" in the root folder that needs to be configured: 3.1 The variable "HOME_NET:" needs to be set. Set it to your endpoint/networks CIDR, i.e. 1.2.3.4/32 or 1.2.3.4/24 3.2 Set the "*_SERVERS:" variables if you got any. 3.3 Set the "default-log-dir:" variable, default = "C:\\Program Files\\Suricata\\log" 3.4 (optional) Configure some of the other outputs if required (I suggest TLS and DNS). 3.5 (optional) If you are deploying more than one sensor, you may want to set the "sensor-name:" variable on each. 3.6 (optional) There are some values for memory usage, some of them are rather low and can be increased. ____________________________________________________________________________________________________ 4. Get the Emerging threats Snort ruleset here, put them in the rules folder with the other rules. curl -L -o %date%_Suricata_emerging.rules.tar.gz It's in tar+Gzip format, which can be unpacked by 7Zip, PeaZip or whatevs. Unpack to "default-rule-path:" which is "C:\\Program Files\\Suricata\\rules\" You can enable/disable whatever rules that apply to your system. Example: If you're not running any Databases or SMTP servers, turn those rules off. ____________________________________________________________________________________________________ 5. As you start, you need to tell Suricata what Large volumes of traffic efficiently. In contrast to Zeek’s multi-process architecture, Suricata uses all available CPU cores simultaneously, making it particularly well-suited for high-bandwidth environments where performance is crucial. This ability to scale effectively ensures that Suricata can monitor large networks without compromising speed or detection accuracy.Suricata also excels at deep packet inspection, enabling it to analyze not just the headers of packets but the data they carry. This in-depth inspection allows Suricata to identify threats hidden within encrypted traffic or files, providing a more comprehensive layer of security.Another major strength of Suricata is its advanced protocol analysis capabilities. Suricata can detect unusual or suspicious behavior within specific communication protocols like HTTP, DNS, and SSL, which are often targeted by attackers. Its ability to identify protocol-based anomalies helps organizations catch sophisticated threats that might bypass traditional signature-based detection methods.Use Cases of SuricataSuricata is highly effective in environments that require real-time detection and prevention of network threats. Its capability to operate in both IDS and IPS modes makes it versatile enough to be used by small businesses as well as large enterprises. When used as an IPS, Suricata can actively block threats by dropping malicious packets, resetting suspicious connections, or rate-limiting potentially harmful traffic.Another valuable use case for Suricata is in network traffic baselining. By monitoring traffic over time, Suricata can establish a “normal” pattern of network activity. This allows it to detect deviations that may indicate a security incident, even when no specific signatures exist for the threat. Suricata’s detailed logs can also support threat hunting, helping security teams proactively search for hidden dangers in the network.SEE ALSO: VMware ESXi Vulnerability: What You Should KnowComparative Analysis – Zeek vs SuricataDynamical analysis of diversity in rule-based open source network intrusion detection systemsWhen it comes to performance, the core architectural difference between Zeek and Suricata is their approach to traffic processing. Suricata’s multi-threaded architecture allows it to leverage multiple CPU cores simultaneously, making it ideal for high-bandwidth environments. This ensures Suricata can process large volumes of traffic efficiently, which is crucial in real-time detection and prevention scenarios. In contrast, Zeek’s multi-process architectureSuricata 7.0.6 and released - Suricata
To block abnormal behaviors and attacks within the network.1.2.3 Application-Based Intrusion Prevention Systems (AIPS)Application-Based Intrusion Prevention Systems (AIPS) focus on blocking attacks targeting specific applications, such as web applications and databases.2. Using Snort as a Host-Based Intrusion Detection SystemSnort is an open-source intrusion detection system that can analyze network traffic to detect abnormal behaviors and attacks within the network. Snort uses rules to identify suspicious traffic and takes appropriate actions based on the rules.2.1 Installing Snort for a Host-Based Intrusion Detection System“Ubuntu Host-Based Intrusion Detection System”sudo apt-get updatesudo apt-get install snortCentOSsudo yum install epel-releasesudo yum install snort2.2 Configuring Snort as a Host-Based Intrusion Detection SystemThe configuration file for Snort is located at /etc/snort/snort.conf. In this file, you can set Snort’s operating parameters and rules.Example: Configuring Snort’s Interface and Rulesinterface: eth0daq: pcap2.3 Starting Snortsudo systemctl start snort2.4 Viewing Snort LogsSnort’s log files are located at /var/log/snort/. You can review the logs to understand the suspicious traffic and attacks detected by Snort.Example: Viewing Snort Logssudo tail -f /var/log/snort/alert3. Using Suricata for Intrusion DetectionSuricata is an open-source intrusion detection and prevention system that can analyze network traffic to detect abnormal behaviors and attacks within the network. Suricata supports multiple protocols, including HTTP, TLS, and DNS.3.1 Installing Suricata“Ubuntu Host-Based Intrusion Detection System”sudo apt-get updatesudo apt-get install suricataCentOSsudo yum install epel-releasesudo yum install suricata3.2 Configuring SuricataThe configuration file for Suricata is located at /etc/suricata/suricata.yaml. In this file, you can set Suricata’s operating parameters and rules.Example: Configuring Suricata’s Interface and Rulesdefault-rule-path: /etc/suricata/rules3.3 Starting Suricatasudo systemctl start suricata3.4 Viewing Suricata LogsSuricata’s log files are located at /var/log/suricata/. You can review the logs to understand the suspicious traffic and attacks detected by Suricata.Example: Viewing Suricata Logssudo tail -f /var/log/suricata/fast.log4. Best Practices for Network Security Monitoring and Intrusion DetectionTo conduct effective network security monitoring and intrusion detection, it’s essential to follow some best practices:4.1 Regularly Update Rules and SignaturesRegularly update the intrusion detection system’s rules and signatures to keep the system up to date and capable of detecting the latest attacks.4.2 Set Reasonable Alert ThresholdsConfigure reasonable alert thresholds to reduce false positives and negatives, ensuring timely action when required.4.3Suricata 7.0.1 released! - Suricata
Essential tool for protecting the network layer and identifying threats that may be trying to penetrate the organization’s defenses.Suricata’s deep packet inspection (DPI) capability allows it to go beyond simply analyzing headers and surface-level data. By inspecting the actual contents of packets, Suricata can identify hidden threats within files or encrypted traffic. This makes it particularly useful in environments where attackers might try to obfuscate their activities through complex payloads or encrypted channels.OSSEC’s Strength in Endpoint SecurityOn the other hand, OSSEC is focused on monitoring individual hosts for signs of intrusion or compromise. It does this by analyzing log files, monitoring file integrity, detecting rootkits, and watching for policy violations. OSSEC’s focus on the host level allows it to detect insider threats, malware, or misconfigurations that may not be visible from a network perspective. By monitoring specific systems, OSSEC can detect threats such as unauthorized changes to critical files, suspicious user behavior, or abnormal system activity.In this sense, OSSEC complements tools like Suricata by providing endpoint-level visibility. While Suricata watches for threats entering or moving through the network, OSSEC ensures that the endpoints themselves remain secure from internal or localized threats. OSSEC also offers a centralized logging system, which collects data from multiple endpoints, providing a broader view of system activity across the network.When to Use Suricata vs OSSECThe decision between Suricata and OSSEC depends largely on the organization’s security needs. For businesses primarily concerned with securing their network perimeter, Suricata is the better choice, as it provides comprehensive network traffic monitoring and can block threats before they reach critical systems. Suricata’s IPS functionality is particularly valuable for companies that need proactive threat prevention in addition to detection.OSSEC, on the other hand, is ideal for organizations that require deep visibility into their endpoints. It is particularly effective in environments where insider threats, file integrity, and configuration management are top concerns. OSSEC’s focus on host-based monitoring makes it an excellent tool for protecting individual systems and ensuring compliance with internal security policies.In many cases, organizations may choose to deploy both Suricata and OSSEC as part of a layered security strategy. Suricata. All users of Suricata 6 or earlier are strongly recommended to update to Suricata 7 soon. More information on the EOL policy EOL Policy - Suricata. About Suricata. Suricata is aSuricata 7.0.4 and released - Suricata
To implement an Intrusion Detection System (IDS) on a Linux system, you can choose from many open-source or commercial tools. Here are the detailed steps to implement a Linux IDS using the open-source tools Snort and Suricata:Choose a Linux IDS ToolSnort: A Powerful Linux IDSSnort is a popular open-source network intrusion detection and prevention system (IDS/IPS).2. Suricata: A Linux IDSSuricata is another open-source network threat detection engine that provides powerful intrusion detection and prevention capabilities.Here are the steps to install and configure Snort and Suricata.Using Snort for Linux IDS1. Install Snort on Linux IDSFirst, ensure your system is updated:sudo yum update -yInstall dependencies:sudo yum install -y epel-releasesudo yum install -y gcc flex bison zlib libpcap pcre libdnet tcpdump libdnet-devel libpcap-devel pcre-develDownload and install DAQ:wget -xvzf daq-2.0.6.tar.gzcd daq-2.0.6./configure && make && sudo make installcd ..Download and install Snort:wget -xvzf snort-2.9.20.tar.gzcd snort-2.9.20./configure && make && sudo make installcd ..2. Configure Snort for Linux IDSCreate necessary directories:sudo mkdir /etc/snortsudo mkdir /etc/snort/rulessudo mkdir /var/log/snortsudo mkdir /usr/local/lib/snort_dynamicrulesCopy configuration files:sudo cp etc/*.conf* /etc/snort/sudo cp etc/*.map /etc/snort/sudo cp etc/*.dtd /etc/snort/Edit the main configuration file /etc/snort/snort.conf to configure it according to your network environment and needs.3. Download Rule Sets for Linux IDSDownload and extract the rule sets (registration required):wget -O snortrules.tar.gztar -xvzf snortrules.tar.gz -C /etc/snort/rules4. Run SnortRun Snort for testing:sudo snort -T -c /etc/snort/snort.confIf there are no errors, you can start Snort:sudo snort -A console -q -c /etc/snort/snort.conf -i eth0Using Suricata for IDS1. Install SuricataFirst, ensure your system is updated:sudo yum update -yInstall EPEL repository and dependencies:sudo yum install -y epel-releasesudo yum install -y suricata2. Configure SuricataSuricata’s configuration file is located at /etc/suricata/suricata.yaml. Edit this file according to your network environment and needs.3. Download Rule Sets for Linux IDSDownload the rule sets:wget -xvzf emerging.rules.tar.gz -C /etc/suricata/rules4. Run SuricataTest the configuration file:sudo suricata -T -c /etc/suricata/suricata.yaml -vStart Suricata:sudo suricata -c /etc/suricata/suricata.yaml -i eth0Centralized Log Management and MonitoringRegardless of which IDS tool you use, it is recommended to use centralized log management tools to collect and analyze log data. For example, you can use the ELK Stack (Elasticsearch, Logstash, Kibana) to centrally manage and visualize log data.1. Install Elasticsearchsudo yum install -y elasticsearchsudo systemctl enable elasticsearchsudo systemctl start elasticsearch2. Install Logstashsudo yum install -y logstashConfigure Logstash to collect Snort or Suricata logs.3. Install Kibanasudo yum install -y kibanasudo systemctl enable kibanasudo systemctl start kibanaConfigure Kibana to visualize data in Elasticsearch.SummaryBy installing and configuring Snort or Suricata, and combining them with centralized log management and monitoring tools, you can effectively implement intrusion detection to protect your systems and networks from potential threats. Regularly updating rule sets and monitoring log data is key to ensuring the effectiveness of your IDS.Comments
Prevention mode. If our sensors are deployed in-line, you choose prevention mode and the Suricata engine drops the packets in-flight if it determines a rule matches those packets. It’s worth pointing out that this isn’t a point of differentiation because Snort works this way too.Does Suricata have a community?Suricata is backed by the Open Information Security Foundation (OISF) which provides long term protection for the openness of the code and helps to foster a community. The OISF helps to provide structure to Suricata training opportunities, resources, and the annual conference, SuriCon.Those interested in learning more can follow Suricata on Twitter – @Suricata_IDS – and below we’ve curated several additional resources from around the web. 1) Suricata Frequently Asked Questions (FAQs)2) Suricata User Guide and download3) Infosec Institute: Open Source IDS: Snort or Suricata? [Updated 2019]4) eSecurity Planet: 10 Open Source Security Breach Prevention and Detection Tools5) YouTube: Bro Befriends Suricata by Michal Purzynski6) SlideShare: Suricata: A Decade Under the Influence (of packet sniffing)* * *Is there a resource you think we should add here? Please Tweet us up @BricataInc or send us a note at [email protected].If you enjoyed this post, you might also like: Snort, Suricata and Bro: 3 Open Source Technologies for Securing Modern NetworksRecent Articles By Author*** This is a Security Bloggers Network syndicated blog from Bricata authored by Bricata. Read the original post at:
2025-04-07513M Active, 1025M Inact, 2057M Wired, 56K Buf, 12G FreeARC: 539M Total, 270M MFU, 248M MRU, 1661K Anon, 2880K Header, 15M Other461M Compressed, 1156M Uncompressed, 2.51:1 RatioSwap: 1024M Total, 1024M Free @stephenw10 Thermal SensorsIntel Core* CPU on-die thermal sensor You have SpeedShift enabled?Be good to see more of that top output so we know what's generating that CPU load. @stephenw10PID USERNAME PRI NICE SIZE RES STATE C TIME WCPU COMMAND 11 root 187 ki31 0B 64K CPU2 2 122:26 58.07% [idle{idle: cpu2}] 11 root 187 ki31 0B 64K CPU1 1 122:25 57.91% [idle{idle: cpu1}] 11 root 187 ki31 0B 64K RUN 3 122:21 57.13% [idle{idle: cpu3}] 11 root 187 ki31 0B 64K CPU0 0 124:38 56.37% [idle{idle: cpu0}]69815 root 24 0 855M 469M select 3 0:57 17.04% /usr/local/bin/suricata --netmap -D -c /usr/local/etc/suricata/suricata_12484_igc1/suricata.yaml --pidfile /var/run/suric69815 root 24 0 855M 469M select 3 0:58 16.84% /usr/local/bin/suricata --netmap -D -c /usr/local/etc/suricata/suricata_12484_igc1/suricata.yaml --pidfile /var/run/suric69815 root 23 0 855M 469M select 3 0:50 15.64% /usr/local/bin/suricata --netmap -D -c /usr/local/etc/suricata/suricata_12484_igc1/suricata.yaml --pidfile /var/run/suric69815 root 23 0 855M 469M select 2 1:05 14.86% /usr/local/bin/suricata --netmap -D -c /usr/local/etc/suricata/suricata_12484_igc1/suricata.yaml --pidfile /var/run/suric69815 root 24 0 855M 469M select 2 1:05 14.11% /usr/local/bin/suricata --netmap -D -c /usr/local/etc/suricata/suricata_12484_igc1/suricata.yaml --pidfile /var/run/suric 12 root -60 - 0B 320K WAIT 3 0:22 10.66% [intr{swi1: netisr 1}]69815 root 23 0 855M 469M select 0 1:24 9.82% /usr/local/bin/suricata --netmap -D -c /usr/local/etc/suricata/suricata_12484_igc1/suricata.yaml --pidfile /var/run/suric69815 root 21 0 855M 469M select 0 1:32 7.52% /usr/local/bin/suricata --netmap -D -c /usr/local/etc/suricata/suricata_12484_igc1/suricata.yaml --pidfile /var/run/suric56778 root 21 0 550M 390M bpf 1
2025-04-11Number of alerts?Therefore:Distributed deployment of Suricata, adapting to multi-data center business scenarios, and reporting data statistics to ES;If traffic cannot be handled, use dumpcap to split the mirrored traffic before analyzing it with Suricata;Store Suricata’s analysis logs in Elasticsearch (ELK) for big data analysis;DIY a security analysis backend to correlate existing HIDS data and log system data to identify more valuable and urgent attack events;Block the identified attack events using hardware FW and system iptables.0x04 DeploymentSuricata Deployment for Security Data AnalysisDeployment on CentOS 7, version: Suricata 4.0.5 yum install epel-release yum install suricata yum install wget libpcap-devel libnet-devel pcre-devel gcc-c++ automake autoconf libtool make libyaml-devel zlib-devel file-devel jansson-devel nss-develELK DeploymentI deployed version 6.2. Download it online and follow the deployment instructions. The specific process is omitted. elasticsearch-6.2.0.rpm logstash-6.2.0.rpm kibana-6.2.0-x86_64.rpmSuricata Rules and Configuration:Rule introduction reference: rule explanation reference: 1. Direct update and replacement wget 2. Suricata rule updates can be performed using suricata-update yum install python-pip python-yaml pip install --pre --upgrade suricata-updateEnter suricata-update to automatically update the rules, showing how many rules have been updated and enabled. 3. Suricata.yaml configuration fileNetwork configuration can be tailored to the actual network architecture for targeted detection:Select the detection rules to load. Some default rules can be removed to reduce false positives. Here are the rules I enabled:Reference: Configurationsuricata_logstash.conf, to collect Suricata intrusion detection data into ES: input { file { path => ["/var/log/suricata/eve.json*"] codec => "json" type => "SuricataIDS" } } filter { if [type] == "SuricataIDS" { date { match => [ "timestamp", "ISO8601" ] } ruby { code => " if event.get('[event_type]') == 'fileinfo' event.set('[fileinfo][type]', event.get('[fileinfo][magic]').to_s.split(',')[0]) end " } ruby{ code => " if event.get('[event_type]') == 'alert' sp = event.get('[alert][signature]').to_s.split(' group ') if (sp.length == 2) and /Ad+z/.match(sp[1]) event.set('[alert][signature]', sp[0]) end end 0x05 Data Analysis1) Suricata DataCreating a Kibana dashboard for data analysis is the simplest method. You can download the necessary JSON files for the Kibana dashboard and add them to Kibana: starting Suricata for network intrusion detection, an eve.json file is generated. Use the ELK stack to process this file and display alerts in Kibana. The specific interface is shown below:2) Comprehensive Correlation AnalysisComprehensive correlation analysis involves linking current data, such as HIDS, WAF (based on ELK), CMDB, etc.For example:Scenario 1: Suricata detects a large number of scanning and brute-force attempts. By correlating the source IP of this event with CMDB data, if a match is found, it is highly
2025-04-13