[2026-07-03] Detection Methods of Slow Read DoS Using Full Packet Capture Data
Background
Slow Read
- TCP handshake : ์ ์ ํธ๋ํฝ์ฒ๋ผ ๋ณด์ด๊ฒ ํจ
- ํฐ ๋ฐ์ดํฐ๋ฅผ ์์ฒญ
- Receive Window Size๋ฅผ ์์ ๊ฐ์ผ๋ก ์ค์ ํ์ฌ ์๋ฒ์ ์๋ต์ ๋งค์ฐ ๋๋ฆฐ ์๋๋ก ์์ .
- 0์ผ๋ก ์ค์ ํ ๊ฒฝ์ฐ ์ฐ๊ฒฐ์ ์ ์งํ๋, TCP ํ์ด๋ก๋ ๋ฐ์ดํฐ๋ ๋ณด๋ด์ง ์์
- sender๋ receiver๊ฐ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์ ์ค๋น๊ฐ ๋๋์ง, ์ฃผ๊ธฐ์ ์ผ๋ก probe
- receiver๋ TCP window๋ 0์ผ๋ก advertiseํ๊ณ , probe์๋ ์๋ตํ์ฌ sender์ ์์์ ์๋น
Collection and Analysis Tools
Full Packet Capture (FPC) : ๋ชจ๋ํฐ๋งํ ์ ์๋ ํน์ง๋ค์ ๋ณด์ ํ ์ ์ฒด ํจํท (PCAP)
- ๋ชจ๋ ๋ฐ์ดํฐ ํจํท์ ๋ํ ์์ ํ ๊ธฐ๋ก์ ์ ๊ณต
- ๋๊ตฌ
- TShark : ๋คํธ์ํฌ ํธ๋ํฝ์ด๋ ์ ์ฅ๋ ํจํท ๋ฐ์ดํฐ์ ์ ์บก์ฒํ๊ณ ๋ถ์ํ๋ ๋คํธ์ํฌ ํ๋กํ ์ฝ ๋ถ์๊ธฐ
- Tcpdump : ์ปดํจํฐ๊ฐ ์ฐ๊ฒฐ๋ ๋คํธ์ํฌ๋ฅผ ํตํด ์ ์ก๋๊ฑฐ๋ ์์ ๋๋ TCP/IP ๋ฐ ๊ธฐํ ํจํท์ ์ฌ์ฉ์๊ฐ ํ๋ฉด์ ํ์
- Libpcap : ๋คํธ์ํฌ ์นด๋์์ ํจํท์ ์ง์ ๊ฐ๋ก์ฑ ์ฌ ์ ์๋๋ก API๋ฅผ ์ ๊ณตํ๋ ๊ฐ์ฅ ๋ฐ๋จ์ ํต์ฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ
- Dumpcap : ํ๋ฉด ์ถ๋ ฅ์ด๋ ๋ฌด๊ฑฐ์ด ๋ถ์ ๊ธฐ๋ฅ ์์ด, ์ค์ง ํจํท์ ๋น ๋ฅด๊ฒ ์บก์ฒํด์ ๋์คํฌ์ ํ์ผ(PCAP-NG)๋ก ์ ์ฅ
Attack Tool
SlowHTTPTest : Slowloris, Slow HTTP POST, ๊ทธ๋ฆฌ๊ณ Slow Read์ ๊ฐ์ ์ ํ๋ฆฌ์ผ์ด์
๊ณ์ธต DoS ๊ณต๊ฒฉ์ ์คํ
Experiment
Data Collection Process
- Environment : ์บ ํผ์ค ๋คํธ์ํฌ. ๊ฐ์์ค, ์ค์ต์ค ๋ฐ ์ฌ๋ฌด์ค์ ํธ์คํธ๋ก ๊ตฌ์ฑ
- ์ค์์น, ์๋ฒ ๋ฐ ๋ผ์ฐํฐ, Cisco ๋ฐฉํ๋ฒฝ
- ํ์ ๋ฆฌ์์ค ํฌํธ : Apache ์น ์๋ฒ, Linux CentOS ์ด์์ฒด์ , Intel 3.30GHz ํ๋ก์ธ์ ๋ฐ 32GB ๋ฉ๋ชจ๋ฆฌ
- Tool
- ์บก์ฒ ๋๊ตฌ : Dumpcap
- ๊ณต๊ฒฉ ๋๊ตฌ : SlowHTTPTest
- ๊ณต๊ฒฉ ์๋๋ฆฌ์ค
- ์๋ฐํ ์๋๋ฆฌ์ค : 1์ด์์ 5์ด ์ฌ์ด์ ๋ฌด์์ ์ฐ๊ฒฐ ๊ฐ๊ฒฉ์ ๋๊ณ 500๊ฐ์ ์ฐ๊ฒฐ์ ์ฌ์ฉํ๋ ๋จ์ผ ๊ณต๊ฒฉ ํธ์คํธ
- ์ค๊ฐ ์์ค์ ๊ณต๊ฒฉ : 1์ด์์ 5์ด ์ฌ์ด์ ๋์ผํ ๋ฌด์์ ์ฐ๊ฒฐ ๊ฐ๊ฒฉ์ผ๋ก 1,000๊ฐ์ ์ฐ๊ฒฐ
- ๊ฐ์ฅ ์๋ฐํ์ง ์์ ๊ณต๊ฒฉ : 1,500๊ฐ์ ์ฐ๊ฒฐ์ ์ฌ์ฉํ๊ณ 1์ด์์ 5์ด ์ฌ์ด์ ๋ฌด์์ ์ฐ๊ฒฐ ๊ฐ๊ฒฉ ์ค์
- ๊ณต๊ฒฉ์ด ์์๋๋ ์์ ๊ณผ ์ข ๋ฃ๋๋ ์์ ์ ๊ณ ์ ํ ํธ๋ํฝ ๋์์ ์บก์ฒํ๊ธฐ ์ํด์ ๊ณต๊ฒฉ ์ ํ๋ก ์ ํด ํธ๋ํฝ์ ํ๋ณด
- ๋ฐ์ดํฐ ๋ผ๋ฒจ๋ง
- ๊ณต๊ฒฉ : ๊ณต๊ฒฉ์ PC์ ๊ณ ์ IP ์ฃผ์์์ ์จ ํธ๋ํฝ
- ์ ์ : ์ด์ธ์ ์ฌ์ฉ์๋ค์ด ๋ณด๋ธ ํธ๋ํฝ
Machine Learning Algorithms
์๋ฐ(Java JDK 8u91) ๊ธฐ๋ฐ์ ๋ํ์ ์ธ ๋ฐ์ดํฐ ๋ง์ด๋ ๋ฐ ๋จธ์ ๋ฌ๋ ์คํ์์ค ์ํํธ์จ์ด์ธ Weka(v3.6.14) API๋ฅผ ์ฌ์ฉ
- Algorithm
- parametric model : MLP, SVM, NB
- non-parametric model : C4.5 ์์ฌ๊ฒฐ์ ํธ๋ฆฌ์ ๋ ๊ฐ์ง ๋ณํ(C4.5N, C4.5D), RF, 5NN, JRip
- Sampling : 50:50 Random under-sampling
- DDoS ํน์ฑ ์ ํด๋์ค ๋ถ๊ท ํ์ด ๋ฐ์ํ์ฌ ML์ด ํธํฅ๋ ์ ์์
Metrics
- ๋ชจ๋ธ test ๋ฐฉ๋ฒ
- Stratified 5-fold cross-validation : ๋ฐ์ดํฐ๋ฅผ 5 ์กฐ๊ฐ์ผ๋ก ๋๋์ด 4์กฐ๊ฐ์ผ๋ก ํ์ตํ๊ณ 1์กฐ๊ฐ์ผ๋ก test
- Stratified : ๊ฐ ์กฐ๊ฐ์ ๋๋ ๋ ๊ณต๊ฒฉ/์ ์ ๋น์จ์ ์๋ณธ ๋น์จ๊ณผ ๋ง์ถค
- ๋ ผ๋ฌธ์์๋ ํด๋น ์ฌ์ดํด์ 4๋ฒ ๋ฐ๋ณตํ์ฌ ๊ฒฐ๊ณผ์ ์ ๋ขฐ๋๋ฅผ ๋์
- Stratified 5-fold cross-validation : ๋ฐ์ดํฐ๋ฅผ 5 ์กฐ๊ฐ์ผ๋ก ๋๋์ด 4์กฐ๊ฐ์ผ๋ก ํ์ตํ๊ณ 1์กฐ๊ฐ์ผ๋ก test
- Metric
- AUC : ๋ชจ๋ธ์ TPR๊ณผ FPR์ ๊ทธ๋ํ๋ก ๋ํ๋. AUC ๊ฐ์ด ํด ์๋ก TPR์ ๋๊ณ FPR์ ๋ฎ์ ๊ฒ
- F-score : ์ ๋ฐ๋(Precision)์ ์ฌํ์จ(Recall)์ ๊ฐ์ค ์กฐํ ํ๊ท
- ํต๊ณ ๊ฒ์ฆ
- ANOVA : ๊ฐ ์๊ณ ๋ฆฌ์ฆ๊ฐ์ AUC ํ๊ท ์ฐจ์ด ๋ถ์
- Tukey์ HSD ์ฌํ ๊ฒ์ : ANOVA ์ฐจ์ด๊ฐ ์๋ค๊ณ ๋๋ฉด ์ด๋ค ๋ชจ๋ธ๊ณผ ์ด๋ค ๋ชจ๋ธ์ด ์ ์๋ฏธํ๊ฒ ์ฐจ์ด ๋๋ ์ง 1:1๋ก ๋น๊ตํ๋ ๊ฒ์ฌ
- ์ฑ๋ฅ์ด ๋ฐ์ด๋ ๋ชจ๋ธ์๊ฒ Group A๋ก ๋ฐฐ์
Feature Selection
- Feature

๊ณผ์ ํฉ ๋ฐฉ์ง๋ฅผ ์ํด Feature Selection ์งํ
- Subset Evaluation : ํน์ง๋ค์ด ๊ทธ๋ฃน์ผ๋ก ๋ญ์ณค์ ๋ ์ผ๋ง๋ ์๋์ง๋ฅผ ๋ด๋์ง ํ๊ฐ
CfsSubsetEval,ConsistencySubsetEval
- Single-Attribute Evaluation : ํน์ง ํ๋๊ฐ ์ผ๋ง๋ ์ํฅ๋ ฅ ์๋ ์ง ํ๊ฐ
- ์นด์ด ์ ๊ณฑ, ์ ๋ณด ํ๋ ๋น, ์ ๋ณด ํ๋๋, ๋์นญ ๋ถํ์ค์ฑ ๋ฑ์ผ๋ก ํ๊ฐ
- ์นด์ด ์ ๊ณฑ ํต๊ณ๊ฐ ๋ฑ์ ํตํด ์์๋ฅผ ๋งค๊ธด ํ์ Ranker ๊ฒ์ ๋ฐฉ๋ฒ์ ํตํด ์์๊ฐ ๋ฎ์ ํ์ ํน์ง๋ค์ ๋ฒ๋ฆผ
Result

- C4.5N์์ ํธ๋ฆฌ์ ๋ฃจํธ ๋
ธ๋๋ CWS (๊ณ์ฐ๋ ์๋์ฐ ํฌ๊ธฐ)
- TTL : ๋จ์ผ ๋ ธ๋์์ ๋ณด๋๊ธฐ ๋๋ฌธ์ TTL์ด ์ ์ฌ
- TSFF : Time Since First Frame. ์ฒซ ์ ์ ์ดํ ํต์ ์ด ์ง์๋๋ ์๊ฐ.
- ์ง์์ ์ผ๋ก ์ฐ๊ฒฐ์ ์ ์งํ๊ธฐ ๋๋ฌธ์ Slow Read์์ ๋๊ฒ ๋ํ๋จ
- TSPF : ์ด์ ํจํท ์ดํ ๊ฒฝ๊ณผํ ์๊ฐ
- ์๋ฒ๊ฐ ๋๊ธธ๋ง ํ ๋ Probe๋ฅผ ๋ณด๋ด๊ณ ๊ณต๊ฒฉ์๋ ACK๋ฅผ ๋ณด๋ด๋ ํจํด์ด ๋๋ฌ๋จ
-
ANOVA

- F-value : ๋ชจ๋ธ๋ค ๊ฐ์ ํ๊ท ์ ์ ์ฐจ์ด๊ฐ ๊ฐ ๋ชจ๋ธ์ด ํ ์คํธ๋ง๋ค ๋ณด์ธ ์ ์์ ์ค์ฐจ๋ณด๋ค ์ผ๋ง๋ ํฐ ์ง ๋ณด์ฌ์ค. 1192๋ก ๋ชจ๋ธ์ ์ฑ๋ฅ ๊ฒฉ์ฐจ๊ฐ ๋๋ ทํจ
- p-value : ํด๋น ์คํ ๊ฒฐ๊ณผ๊ฐ ์ฐ์ฐํ ์ผ์ด๋ฌ์ ํ๋ฅ . ๋งค์ฐ ์์
FPC Feature Selection Results

- Feature : FrameLen, TCPHL, TTL, WSV, CWS, WSSF, TSFF, TSPF
- ์ฑ๋ฅ์ด ์ฝ๊ฐ ๋ฎ์์ก์ง๋ง ์ด๋ ๊ณผ์ ํฉ ๋ฐฉ์ง ๋ฐ ์ฒ๋ฆฌ ์๊ฐ ๊ฐ์
- GSF ๋ฐฉ์๊ณผ RSGR ๋ฐฉ์์ ์กฐํฉํ CFS ๊ธฐ๋ฒ์ ํตํด Feature๋ฅผ ์ ํํ๋ ๊ฒ์ด ์ฑ๋ฅ์ด ์ข์์
Conclusion
Contribution
- ML์ ํตํ Slow Read Detection model ๊ตฌ์ถ
- Full Packet capture ํน์ง ์ฌ์ฉ
- ๋ฐ์ดํฐ integrity : ์ค์ ํ๊ฒฝ์ ํธ๋ํฝ ์บก์ฒ
Future Work
๋คํธ์ํฌ ํ๋ฆ ๋ฐ์ดํฐ์ธ Netflow ๊ธฐ๋ฐ ํน์ง๊ณผ FPC๋ฅผ ๋น๊ตํ ์์ ์
์ฝ์ ์ด์ ๋ฐ ์ป์ด๊ฐ ์
- ์ฝ์ ์ด์ : ์คํ ๊ณผ์ ์ด ๊ถ๊ธํ๊ณ ์ด๋ค ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํด์ผ ํ๋ ์ง, ์ด๋ค feature๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ ์ง๊ฐ ๊ถ๊ธํ์
- ์ป์ด๊ฐ ์
- ANOVA์ ์ฌํ ๊ฒ์ ์์คํ ์ ๋ํด์ ๋ฐฐ์๊ฐ.
- ๋ฐ์ดํฐ์ ๋ง๋ค ๋ SlowHTTPTest๋ฅผ ์ฌ์ฉํ๋ฉด ์ข์ ๋ฏ
์๋ฌธ ๋ฐ ์๊ฐํ ์
- Slow Read๋ผ๊ณ ํ ์ง๋ผ๋ probe ํจํท์ด ์๋์ ์ผ๋ก ๋ง๋ค๊ณ ํ๋ค. ๊ทธ๋๋ ์ ์ ํจํท์ด ํจ์ฌ ๋ง์ ๊ฑฐ ๊ฐ์๋ฐ
- TTL์ ๋ํ ํ๊ฐ : ํด๋น TTL ๊ฐ์ ๋คํธ์ํฌ ํ๊ฒฝ ๋ง๋ค, ๋๊ฐ ๊ณต๊ฒฉํ๋ ์ง์ ๋ฐ๋ผ, ๋จ์ผ์ด๋ ๋ค์ค์ด๋์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋ฏ๋ก ๋ณ๋ก ์ข์ ๊ฐ์ ์๋ ๊ฑฐ ๊ฐ์
Leave a comment