Flow Based netwrok anomaly detection system
./prototype
โ Main / function / prototype
./Web
โ Network Anomaly Detection System Web (processing..)
./RESTful
โ Example of Restful API (processing..)
- Train Dataset
Local์์ ๋ชจ์ ์น์ํ, ๊ฒ์ ๋ฑ ๊ธฐํ ์์
์์ ๋คํธ์ํฌ ํจํท(.pcap
)์ ๋ํ 64,368๊ฐ์ ์ ์ ์ธ์
๋ฐ์ดํฐ(.csv
)
- Test Dataset
๋น์ ์ ์ธ์ ๋ฐ์ดํฐ
File name | Total number of Sessions | Type | Extension | Source |
---|---|---|---|---|
Normal-1 | 81 | Web surfing / Game | .csv |
Local |
Normal-2 | 80 | Web surfing / Game | .csv |
Local |
Attack-1 | 418 | http-flood | .csv |
Link |
Attack-2 | 609 | Mirai malware | .csv |
Link |
Attack-3 | 896 | The major fraud and hacking criminal case "B 8322-16" | .csv |
Link |
Attack-4 | 509 | Packet Injection Attacks | .csv |
Link |
- Random Forest Classifier๋ฅผ ์ด์ฉํ Feature๋ค์ ์ค์๋ ๊ณ์ฐ ๊ฒฐ๊ณผ
- CICFlowMeter๋ก ๋์จ 84๊ฐ์ Feature ์ค ์๋ 78๊ฐ์ Features ์ฌ์ฉ
Flow duration | Total Fwd Packet | Total Bwd Packets | Total Length of Fwd Packet | Total Length of Bwd Packet | Fwd Packet Length Min |
---|---|---|---|---|---|
Fwd Packet Length Max | Fwd Packet Length Mean | Fwd Packet Length Std | Bwd Packet Length Min | Bwd Packet Length Max | Bwd Packet Length Mean |
Bwd Packet Length Std | Flow Bytes/s | Flow Packets/s | Flow IAT Mean | Flow IAT Std | Flow IAT Max |
Flow IAT Min | Fwd IAT Min | Fwd IAT Max | Fwd IAT Mean | Fwd IAT Std | Fwd IAT Total |
Bwd IAT Min | Bwd IAT Max | Bwd IAT Mean | Bwd IAT Std | Bwd IAT Total | Fwd PSH flags |
Bwd PSH Flags | Fwd URG Flags | Bwd URG Flags | Fwd Header Length | Bwd Header Length | FWD Packets/s |
Bwd Packets/s | Packet Length Min | Packet Length Max | Packet Length Mean | Packet Length Std | Packet Length Variance |
FIN Flag Count | SYN Flag Count | RST Flag Count | PSH Flag Count | ACK Flag Count | URG Flag Count |
CWE Flag Count | ECE Flag Count | down/Up Ratio | Average Packet Size | Fwd Segment Size Avg | Bwd Segment Size Avg |
Fwd Bytes/Bulk Avg | Fwd Packet/Bulk Avg | Fwd Bulk Rate Avg | Bwd Bytes/Bulk Avg | Bwd Packet/Bulk Avg | Bwd Bulk Rate Avg |
Subflow Fwd Packets | Subflow Fwd Bytes | Subflow Bwd Packets | Subflow Bwd Bytes | Fwd Init Win bytes | Bwd Init Win bytes |
Fwd Act Data Pkts | Fwd Seg Size Min | Active Min | Active Mean | Active Max | Active Std |
Idle Min | Idle Mean | Idle Max | Idle Std |
- ์๋ฃ์ ์ค๋ฒํ๋ก์ฐ ๋๋ ์ธ๋ํ๋ก์ฐ๋ฅผ ๋ฐฉ์ง ํ๊ธฐ ์ํด Standard Scaler๋ฅผ ์ํํ์ฌ ์ ์ฒด ๋ฐ์ดํฐ์ ๋ถํฌ๋ฅผ ํ๊ท 0, ๋ถ์ฐ 1์ด ๋๋๋ก ๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ
- Anomaly Detection์ ์ํ LOF ์ํ ๊ณผ์
- ํ์ต๋ฐ์ดํฐ(์ ์)์ ๋ํด Local Outlier Factor ์ํ ๊ฒฐ๊ณผ(
.csv
)
- ํ์ต๋ฐ์ดํฐ(์ ์)์ ๋ํด ํ
์คํธ๋ฐ์ดํฐ(๋น์ ์) ์ถ๊ฐ ํ Local Outlier Factor ์ํ ๊ฒฐ๊ณผ(
.csv
)
File name | Total number of Sessions | Number of inliner | Number of outlier | outlier percentage |
---|---|---|---|---|
Normalโ1 | 81 | 68 | 13 | 16.04% |
Normalโ2 | 80 | 67 | 13 | 16.25% |
Attackโ1 | 418 | 169 | 249 | 59.56% |
Attackโ2 | 609 | 297 | 312 | 51.23% |
Attackโ3 | 896 | 377 | 519 | 57.92% |
Attack-4 | 509 | 31 | 478 | 93.90% |
File name | Type | Source |
---|---|---|
Normalโ1 | Web surfing / Game | Local |
Normalโ2 | Web surfing / Game | Local |
Attackโ1 | http-flood | Link |
Attackโ2 | Mirai malware | Link |
Attackโ3 | The major fraud and hacking criminal case "B 8322-16". | Link |
Attack-4 | Packet Injection Attacks | Link |
๋ณธ ๊ธฐ์ ์์๋ ๋คํธ์ํฌ๊ฐ ์ ์์ผ ๋, Flow๊ธฐ๋ฐ์ผ๋ก IP๋ณ ๋คํธ์ํฌ ์ธ์ ์ ์์งํ์ฌ ํ์ต ๋ฐ์ดํฐ์ ์ ๋ง๋ค์๋ค.
์ด๋ฅผ ๋ฐํ์ผ๋ก ๋ชจ๋ธ์ ํ์ต์ํจ ํ, ํ ์คํธ ๋ฐ์ดํฐ์ธ ๋น์ ์ ๋คํธ์ํฌ ์ธ์ ์ ๋ํ ์ด์ ํ์ ํ์ง๋ฅผ ์ํํ์๋ค.
ํ์ต์ ์ค์ํ๊ณ ์ฑ๋ฅ์ ๋ถ์ํด ๋ณธ ๊ฒฐ๊ณผ ํ๊ท 86% ์ ์ ํ๋๋ก ๋คํธ์ํฌ ์ด์ํ์ ํ์ง๊ฐ ๊ฐ๋ฅํ๋ค.
-
๋คํธ์ํฌ์์ ๋ฐ์ดํฐ ํ๋ฆ์ ๋ํ ํ์ํ ๊ฐ์์ฑ ์ ๊ณต์ผ๋ก ํจ์จ์ ์ธ ๋ชจ๋ํฐ๋ง ๊ฐ๋ฅ
-
๋ชจ๋ํฐ๋ง๊ณผ ๋๋ถ์ด ์ค์๊ฐ ํจํท ๋ถ์์ ํตํด ์ ์ํ ๋์ ๊ฐ๋ฅ
-
๋คํธ์ํฌ IP๋ณ ํจํท์ ๋ํ ๋ฐ์ดํฐ๋ฅผ ํ์ตํ๊ณ ์ด์ ์งํ ํ์ง ๊ฐ๋ฅ
โ ํตํฉ๋ณด์๊ด์ ์ ์ฉ์, ์ค์๊ฐ ์นจํด ์ฒ๋ฆฌ, ๋ฒ์ ํ๋ ๋ฐ ์ธ๋ ฅ๊ณผ ์๊ฐ ๋จ์ถ์ ํ ์ ์์ผ๋ฉฐ, ์๋ ค์ง์ง ์์ ์ํ์ ๋ํด์๋ ํ์ง ๋ฐ ๋์ ๊ฐ๋ฅ
-
๊ฐ๋จํ๊ณ ๋น ๋ฅธ ๊ฒฐ๊ณผ ๋ถ์ ๋ฐ ์ฆ๊ฐ์ ์ธ ํผ๋๋ฐฑ
-
๋ณด๋ค ๋น ๋ฅธ ์ฐ์ฐ์ ์ํด GPU ์ฐ์ฐ ์ํ
-
๋ฐ์ดํฐ์ ์๊ฐ ๋ง๋ํ ๊ฒฝ์ฐ, Feature ์ ํ์ IP ์ฃผ์ ์ถ๊ฐ
Flow duration | Duration of the flow in Microsecond |
---|---|
total Fwd Packet | Total packets in the forward direction |
total Bwd packets | Total packets in the backward direction |
total Length of Fwd Packet | Total size of packet in forward direction |
total Length of Bwd Packet | Total size of packet in backward direction |
Fwd Packet Length Min | Minimum size of packet in forward direction |
Fwd Packet Length Max | Maximum size of packet in forward direction |
Fwd Packet Length Mean | Mean size of packet in forward direction |
Fwd Packet Length Std | Standard deviation size of packet in forward direction |
Bwd Packet Length Min | Minimum size of packet in backward direction |
Bwd Packet Length Max | Maximum size of packet in backward direction |
Bwd Packet Length Mean | Mean size of packet in backward direction |
Bwd Packet Length Std | Standard deviation size of packet in backward direction |
Flow Bytes/s | Number of flow bytes per second |
Flow Packets/s | Number of flow packets per second |
Flow IAT Mean | Mean time between two packets sent in the flow |
Flow IAT Std | Standard deviation time between two packets sent in the flow |
Flow IAT Max | Maximum time between two packets sent in the flow |
Flow IAT Min | Minimum time between two packets sent in the flow |
Fwd IAT Min | Minimum time between two packets sent in the forward direction |
Fwd IAT Max | Maximum time between two packets sent in the forward direction |
Fwd IAT Mean | Mean time between two packets sent in the forward direction |
Fwd IAT Std | Standard deviation time between two packets sent in the forward direction |
Fwd IAT Total | Total time between two packets sent in the forward direction |
Bwd IAT Min | Minimum time between two packets sent in the backward direction |
Bwd IAT Max | Maximum time between two packets sent in the backward direction |
Bwd IAT Mean | Mean time between two packets sent in the backward direction |
Bwd IAT Std | Standard deviation time between two packets sent in the backward direction |
Bwd IAT Total | Total time between two packets sent in the backward direction |
Fwd PSH flags | Number of times the PSH flag was set in packets travelling in the forward direction (0 for UDP) |
Bwd PSH Flags | Number of times the PSH flag was set in packets travelling in the backward direction (0 for UDP) |
Fwd URG Flags | Number of times the URG flag was set in packets travelling in the forward direction (0 for UDP) |
Bwd URG Flags | Number of times the URG flag was set in packets travelling in the backward direction (0 for UDP) |
Fwd Header Length | Total bytes used for headers in the forward direction |
Bwd Header Length | Total bytes used for headers in the backward direction |
FWD Packets/s | Number of forward packets per second |
Bwd Packets/s | Number of backward packets per second |
Packet Length Min | Minimum length of a packet |
Packet Length Max | Maximum length of a packet |
Packet Length Mean | Mean length of a packet |
Packet Length Std | Standard deviation length of a packet |
Packet Length Variance | Variance length of a packet |
FIN Flag Count | Number of packets with FIN |
SYN Flag Count | Number of packets with SYN |
RST Flag Count | Number of packets with RST |
PSH Flag Count | Number of packets with PUSH |
ACK Flag Count | Number of packets with ACK |
URG Flag Count | Number of packets with URG |
CWE Flag Count | Number of packets with CWE |
ECE Flag Count | Number of packets with ECE |
down/Up Ratio | Download and upload ratio |
Average Packet Size | Average size of packet |
Fwd Segment Size Avg | Average size observed in the forward direction |
Bwd Segment Size Avg | Average number of bytes bulk rate in the backward direction |
Fwd Bytes/Bulk Avg | Average number of bytes bulk rate in the forward direction |
Fwd Packet/Bulk Avg | Average number of packets bulk rate in the forward direction |
Fwd Bulk Rate Avg | Average number of bulk rate in the forward direction |
Bwd Bytes/Bulk Avg | Average number of bytes bulk rate in the backward direction |
Bwd Packet/Bulk Avg | Average number of packets bulk rate in the backward direction |
Bwd Bulk Rate Avg | Average number of bulk rate in the backward direction |
Subflow Fwd Packets | The average number of packets in a sub flow in the forward direction |
Subflow Fwd Bytes | The average number of bytes in a sub flow in the forward direction |
Subflow Bwd Packets | The average number of packets in a sub flow in the backward direction |
Subflow Bwd Bytes | The average number of bytes in a sub flow in the backward direction |
Fwd Init Win bytes | The total number of bytes sent in initial window in the forward direction |
Bwd Init Win bytes | The total number of bytes sent in initial window in the backward direction |
Fwd Act Data Pkts | Count of packets with at least 1 byte of TCP data payload in the forward direction |
Fwd Seg Size Min | Minimum segment size observed in the forward direction |
Active Min | Minimum time a flow was active before becoming idle |
Active Mean | Mean time a flow was active before becoming idle |
Active Max | Maximum time a flow was active before becoming idle |
Active Std | Standard deviation time a flow was active before becoming idle |
Idle Min | Minimum time a flow was idle before becoming active |
Idle Mean | Mean time a flow was idle before becoming active |
Idle Max | Maximum time a flow was idle before becoming active |
Idle Std | Standard deviation time a flow was idle before becoming active |
- ๋จธ์ ๋ฌ๋์ ์ด์ฉํ ๊ฐ์ธ์ฉpc ์ ์ฑ์ฝ๋ ๊ฐ์ผ ์์ธก
- ๋คํธ์ํฌ์์ SVM์ ๊ธฐ๋ฐ์ผ๋กํ๋ DDoS ๊ณต๊ฒฉ ํ์ง ๋ฐฉ๋ฒ
- MAML ์๊ณ ๋ฆฌ์ฆ์ ํ์ฉํ Ddos ๊ณต๊ฒฉ ํ์ง ์์คํ
- Machine Learning ์๊ณ ๋ฆฌ์ฆ์ ์ ์ฉํ ์ธํฐ๋ท ์ ํ๋ฆฌ์ผ์ด์
- Intrusion Detection System
- Likelihood of a Personal Computer to Be Infected with Malware
- Anomaly based unknown Intrusion Detection in Endpoint environments
- Network traffic features for anomaly detection in specific industrial control system network