NET-Analyzer
BiLSTM model for Network Intrusion Detection System (NIDS).
Datasets
CIC-IDS2017
CICIDS2017 dataset contains benign and the most up-to-date common attacks, which resembles the true real-world data (PCAPs). It also includes the results of the network traffic analysis using CICFlowMeter with labeled flows based on the time stamp, source, and destination IPs, source and destination ports, protocols and attack (CSV files).
Generating realistic background traffic was our top priority in building this dataset. We have used our proposed B-Profile system (Sharafaldin, et al. 2016) to profile the abstract behavior of human interactions and generates naturalistic benign background traffic. For this dataset, we built the abstract behaviour of 25 users based on the HTTP, HTTPS, FTP, SSH, and email protocols.
The data capturing period started at 9 a.m., Monday, July 3, 2017 and ended at 5 p.m. on Friday July 7, 2017, for a total of 5 days. Monday is the normal day and only includes the benign traffic. The implemented attacks include Brute Force FTP, Brute Force SSH, DoS, Heartbleed, Web Attack, Infiltration, Botnet and DDoS. They have been executed both morning and afternoon on Tuesday, Wednesday, Thursday and Friday.
CIC-IDS2018
In CSE-CIC-IDS2018 dataset, we use the notion of profiles to generate datasets in a systematic manner, which will contain detailed descriptions of intrusions and abstract distribution models for applications, protocols, or lower level network entities. These profiles can be used by agents or human operators to generate events on the network. Due to the abstract nature of the generated profiles, we can apply them to a diverse range of network protocols with different topologies. Profiles can be used together to generate a dataset for specific needs.
CICFlowMeter-V3
List of extracted traffic features byFeature Name | Description |
---|---|
fl_dur | Flow duration |
tot_fw_pk | Total packets in the forward direction |
tot_bw_pk | Total packets in the backward direction |
tot_l_fw_pkt | Total size of packet in forward direction |
fw_pkt_l_max | Maximum size of packet in forward direction |
fw_pkt_l_min | Minimum size of packet in forward direction |
fw_pkt_l_avg | Average size of packet in forward direction |
fw_pkt_l_std | Standard deviation size of packet in forward direction |
Bw_pkt_l_max | Maximum size of packet in backward direction |
Bw_pkt_l_min | Minimum size of packet in backward direction |
Bw_pkt_l_avg | Mean size of packet in backward direction |
Bw_pkt_l_std | Standard deviation size of packet in backward direction |
fl_byt_s | flow byte rate that is number of packets transferred per second |
fl_pkt_s | flow packets rate that is number of packets transferred per second |
fl_iat_avg | Average time between two flows |
fl_iat_std | Standard deviation time two flows |
fl_iat_max | Maximum time between two flows |
fl_iat_min | Minimum time between two flows |
fw_iat_tot | Total time between two packets sent in the forward direction |
fw_iat_avg | Mean time between two packets sent in the forward direction |
fw_iat_std | Standard deviation time between two packets sent in the forward direction |
fw_iat_max | Maximum time between two packets sent in the forward direction |
fw_iat_min | Minimum time between two packets sent in the forward direction |
bw_iat_tot | Total time between two packets sent in the backward direction |
bw_iat_avg | Mean time between two packets sent in the backward direction |
bw_iat_std | Standard deviation time between two packets sent in the backward direction |
bw_iat_max | Maximum time between two packets sent in the backward direction |
bw_iat_min | Minimum time between two packets sent in the backward direction |
fw_psh_flag | Number of times the PSH flag was set in packets travelling in the forward direction (0 for UDP) |
bw_psh_flag | Number of times the PSH flag was set in packets travelling in the backward direction (0 for UDP) |
fw_urg_flag | Number of times the URG flag was set in packets travelling in the forward direction (0 for UDP) |
bw_urg_flag | Number of times the URG flag was set in packets travelling in the backward direction (0 for UDP) |
fw_hdr_len | Total bytes used for headers in the forward direction |
bw_hdr_len | Total bytes used for headers in the forward direction |
fw_pkt_s | Number of forward packets per second |
bw_pkt_s | Number of backward packets per second |
pkt_len_min | Minimum length of a flow |
pkt_len_max | Maximum length of a flow |
pkt_len_avg | Mean length of a flow |
pkt_len_std | Standard deviation length of a flow |
pkt_len_va | Minimum inter-arrival time of packet |
fin_cnt | Number of packets with FIN |
syn_cnt | Number of packets with SYN |
rst_cnt | Number of packets with RST |
pst_cnt | Number of packets with PUSH |
ack_cnt | Number of packets with ACK |
urg_cnt | Number of packets with URG |
cwe_cnt | Number of packets with CWE |
ece_cnt | Number of packets with ECE |
down_up_ratio | Download and upload ratio |
pkt_size_avg | Average size of packet |
fw_seg_avg | Average size observed in the forward direction |
bw_seg_avg | Average size observed in the backward direction |
fw_byt_blk_avg | Average number of bytes bulk rate in the forward direction |
fw_pkt_blk_avg | Average number of packets bulk rate in the forward direction |
fw_blk_rate_avg | Average number of bulk rate in the forward direction |
bw_byt_blk_avg | Average number of bytes bulk rate in the backward direction |
bw_pkt_blk_avg | Average number of packets bulk rate in the backward direction |
bw_blk_rate_avg | Average number of bulk rate in the backward direction |
subfl_fw_pk | The average number of packets in a sub flow in the forward direction |
subfl_fw_byt | The average number of bytes in a sub flow in the forward direction |
subfl_bw_pkt | The average number of packets in a sub flow in the backward direction |
subfl_bw_byt | The average number of bytes in a sub flow in the backward direction |
fw_win_byt | Number of bytes sent in initial window in the forward direction |
bw_win_byt | # of bytes sent in initial window in the backward direction |
Fw_act_pkt | # of packets with at least 1 byte of TCP data payload in the forward direction |
fw_seg_min | Minimum segment size observed in the forward direction |
atv_avg | Mean time a flow was active before becoming idle |
atv_std | Standard deviation time a flow was active before becoming idle |
atv_max | Maximum time a flow was active before becoming idle |
atv_min | Minimum time a flow was active before becoming idle |
idl_avg | Mean time a flow was idle before becoming active |
idl_std | Standard deviation time a flow was idle before becoming active |
idl_max | Maximum time a flow was idle before becoming active |
idl_min | Minimum time a flow was idle before becoming active |