[2026-06-02] A Hard-Label Black-Box Evasion Attack against ML-based Malicious Traffic Detection Systems
π¦₯ λ³Έλ¬Έ
Motivation
κΈ°μ‘΄ ννΌ κΈ°λ²
νΉμ μνΈν νλ‘ν μ½μ΄λ νΉμ λ€νΈμν¬(Tor λ±)μμλ§ μλνκ±°λ, νκ² μμ€ν μ λ΄λΆ ꡬ쑰λ₯Ό ν€ν μμμΌ νλ νμ΄νΈλ°μ€/κ·Έλ μ΄λ°μ€ νκ²½μ μ μ λ‘ νκΈ° λλ¬Έμ νμ€μ λΈλλ°μ€ νκ²½μμλ λΉμ€μ©μ
Motivation
- λ²μ©μ± : νΉμ νλ‘ν μ½μ΄λ μνΈν μ¬λΆ λ±κ³Ό μκ΄ μμ΄ μ μ©
- Hard-label : μλ²½ν λΈλλ°μ€ μν©μμ ν΅κ³Όνλμ§, μ°¨λ¨νλμ§μ λν κ²°κ³Όκ°(Hard-label) νΌλλ°± λ§μΌλ‘ 곡격μ μ±κ³΅
- μ΅μνμ ν¨ν· μ‘°μλ§μΌλ‘ μ μ± νΈλν½ μμ±
Threat Model & Assumption
νΌν΄μμ in-lineμΌλ‘ ꡬμΆλ ν΅κ³μ ν¨ν΄ κΈ°λ°μ ML νΈλν½ νμ§ μμ€ν .
- ML λͺ¨λΈ, νλΌλ―Έν°, Feature extractor, νλ ¨ λ°μ΄ν° μΈνΈ λ± μ΄λ μ 보λ μ»μ μ μμ
- λλΆλΆμ νΈλν½ νμ§ μμ€ν μ΄ closed source software μ΄κ±°λ μΈμ£Ό ν΄λΌμ°λ μλΉμ€ ννμ΄λ―λ‘ λΈλλ°μ€μ.
- 곡격μλ reconnaissance(μ μ°°)μ ν΅ν΄ pass/fail νΌλλ°±μ μμ§ν μ μμ
- νμ§ μμ€ν
λ€μ μλ μ격 νΈμ€νΈλ‘ probe trafficμ μ μ‘
- μ μ± νμ΄λ‘λλ μλμ§λ§ μ μ± νΈλν½ ν¨ν΄μ λͺ¨λ°©
- TCPλ RST, ACK, SYN-ACKμ ν΅ν΄ ν΅κ³Όλ₯Ό νμΈ νμ μμμΈ κ²½μ°μλ μ°¨λ¨. UDPλ QUICμ μ¬μ©νμ¬ ICMP Unreachable λ©μμ§λ₯Ό λ°μΌλ©΄ ν΅κ³Ό, μμΌλ©΄ μ°¨λ¨
- ν μ ν TTL, IPIDλ₯Ό ν΅ν΄ μΆκ° νμΈ κ°λ₯
- νμ§ μμ€ν
λ€μ μλ μ격 νΈμ€νΈλ‘ probe trafficμ μ μ‘
- μ κ³Όμ μ ν΅ν΄ μ μ λ°μ΄ν°μ ν¨ν΄μ νλ
NETMASQUERADE

BENIGN TRAFFIC PATTERN MIMICKING
Traffic-BERTλ₯Ό ν΅ν΄ μ μ νΈλν½ λ³΅μ‘ν ν¨ν΄μ λͺ¨λΈλ§. κΈ°λ³Έμ μΈ νλ¦ νΉμ§(μ¦, ν¨ν· ν¬κΈ° μνμ€ λ° ν¨ν· κ° μ§μ° μκ° μνμ€)μ μΆμΆ
νΉμ§ μΆμΆ : λ κ°μ§ λ¬Έμ λ°μ
- νμ€ λ€νΈμν¬ νλ‘μ°μ ν¬κΈ°μ μ§μ μκ°μ λ€μνμ§λ§, BERT κΈ°λ°μ΄λΌ μ
λ ₯ ν¬κΈ°λ₯Ό κ³ μ λ¨.
- paddingκ³Ό chunkingμΌλ‘ νμ€ν
- νΈλν½μ΄ λ€μ΄μ€λ μκ° κ°κ²©(IPD) κ°μ μμμ λ°μ΄ν°λ μ°μμ μΈ κ°μ΄λ©° ν¬κ² Skewed λ¨.
- Skewed λ°μ΄ν°λ ν΄λΉ ν ν°λ§ μ§μ€μ μΌλ‘ νμ΅νκ³ λλ¨Έμ§ ν ν°λ€μ΄ νμ΅λμ§ μμ
- μ΄μ°ν μ§ν λ° λ°μ΄ 10μΈ λ‘κ·Έλ₯Ό μ·¨νμ¬ κ· μΌν λΆν¬λ₯Ό λ§λ¦.
- ν¨ν· ν¬κΈ° κ°μ κ²½μ° MTU μ΄μμ ν¨ν· ν¬κΈ° κ°μ κ²½μ°λ [UNK] ν ν°
- κ°κ° νΉμ§μ λν λ¨μ΄μ₯μ λ
립μ . μ리 νμμ λ° νΉμ ν ν° λ§μ€νΉμ μν΄ κ°κ° νΉμ ν ν°
[PAD]μ[MASK]λ₯Ό λ¨μ΄μ₯μ μΆκ° - μλ² λ© - ν ν° μλ² λ© : ν ν°μ λνλ΄λ κ³ μ°¨μ 벑ν°. Traffic-BERTμ νλ ¨
- μμΉ μλ² λ© : ν ν°μ μλμ μμΉλ₯Ό λνλ. chunking μ, 첫 λ²μ§Έ μΈκ·Έλ¨ΌνΈλ₯Ό μ μΈν λ€λ₯Έ μΈκ·Έλ¨ΌνΈμ μΈλ±μ€λ 0λΆν° μμνμ§ μμ
Traffic-BERT
μ¬λ¬ κ°μ feature μνμ€λ‘ μ²λ¦¬. μνμ€ κ°μ μνΈμμ©μ΄ μ€μ
- λ κ°μ§ λ¬Έμ
- μ€λ²ν€λλ₯Ό μ¦κ°μν€μ§ μμΌλ©΄μ λ€μ€ λͺ¨λ¬ νΉμ§λ€μ ν¨κ³Όμ μΌλ‘ λͺ¨λΈλ§
-
μλ°©ν₯ κ΅μ°¨ μ΄ν μ : λ¨μ concate ν κ²½μ°μλ κΈΈμ΄κ° 2λ°°κ° λμ΄ μκ° λ³΅μ‘λ 4λ°°κ° λμ§λ§ μ΄ λ°©μμ μ¬μ©νλ©΄ μ€λ²ν€λ μ¦κ° X

- κ°κ° μ
ν μ΄ν
μ
μ ν ν μλ μνλ₯Ό μΏΌλ¦¬λ‘ μ¬μ©νμ¬ λ€λ₯Έ μνμ€μ μΆλ ₯κ³Ό μ μ¬λ κ³μ°νκ³ λ€λ₯Έ μνμ€μ κ°μ μ΄ν
μ
κ°μ€μΉλ₯Ό ν λΉ.
- μλ₯Ό λ€μ΄, μ°μ° κΈ°μ€μ ν¨ν· ν¬κΈ°μ§λ§ μ°Έμ‘°νλ μ€μ μ 보λ IPD λ°μ΄ν°
- λ§μ§λ§μ FFN κ³μΈ΅μ ν΅κ³Όνμ¬ λ€μ μΈμ½λ λΈλ‘μ μ λ ₯μΌλ‘ μ¬μ©. λ§μ§λ§ μΈμ½λ λΈλ‘μ μΆλ ₯μ μ ν κ³μΈ΅μ ν΅κ³Όνμ¬ νλ₯ λΆν¬λ₯Ό μ»μ
- κ°κ° μ
ν μ΄ν
μ
μ ν ν μλ μνλ₯Ό μΏΌλ¦¬λ‘ μ¬μ©νμ¬ λ€λ₯Έ μνμ€μ μΆλ ₯κ³Ό μ μ¬λ κ³μ°νκ³ λ€λ₯Έ μνμ€μ κ°μ μ΄ν
μ
κ°μ€μΉλ₯Ό ν λΉ.
-
- μΆκ° νλ ¨ λΉμ© μμ΄, 곡격 νΈλν½ μμ±μ μ μ©ν μ μλ μ μ©ν ν¨ν΄ μ§μμ μ€μ€λ‘ κΉ¨μ°μΉκ² ν νλ ¨ λ°©λ²
- μ΄μ€ μνμ€ λ§μ€νΉμ ν΅ν΄ νμ΅ : κ° μνμ€μ κ°μ μμΉμ μλ λΆλΆμ λ§μ€νΉ
- 15% λ§μ€νΉ. 15%λ₯Ό λͺ¨λ λ§μ€νΉ νμ§ μκ³ 3κ°μ§ μ νμΌλ‘ λλ
- Example : 15κ°μ λ¨μ΄λ₯Ό λ§μ€νΉν λ
- μ ν A (80%, μ½ 12κ°): λΉμΉΈμΈ
[MASK]κΈ°νΈλ‘ λ§μ€νΉ - μ ν B (10%, μ½ 1.5κ°): μ ν μλ±ν 무μμ λ¨μ΄λ‘ μ¬μ© λ°κΏμΉκΈ°
- μ ν C (10%, μ½ 1.5κ°): λ¨μ΄λ₯Ό λ°κΎΈμ§ μκ³ μλ μ λ΅ κ·Έλλ‘ λλ .
- μ ν A (80%, μ½ 12κ°): λΉμΉΈμΈ
- κ°λ³ νΉμ§ μνμ€ λ΄μμ κΉμ μλ°©ν₯ μλ―Έλ‘ μ μλ¬(μ¦, μλ°©ν₯μΈ μλ€ λ¬Έλ§₯μ μ νμ΅μν΄),
- bi-cross attentionμ μν΄ λμ λ κ΅μ°¨ νΉμ§ μνΈμμ©μ κ°ν (ν΄λΉ κ°λ³ μνμ€μμ λ¬Έλ§₯ νμ΅ λΏλ§ μλλΌ λμμ maskingμ νμ¬ λ€λ₯Έ μνμ€μ λ¬Έλ§₯ νμ΅μ‘°μ°¨ κ°ν)
- μ΄μ€ μνμ€ λ§μ€νΉμ ν΅ν΄ νμ΅ : κ° μνμ€μ κ°μ μμΉμ μλ λΆλΆμ λ§μ€νΉ
- μ€λ²ν€λλ₯Ό μ¦κ°μν€μ§ μμΌλ©΄μ λ€μ€ λͺ¨λ¬ νΉμ§λ€μ ν¨κ³Όμ μΌλ‘ λͺ¨λΈλ§
ADVERSARIAL TRAFFIC GENERATION
νΈλν½ λ³μ‘° κ³Όμ μ μ ν κ΅¬κ° λ§λ₯΄μ½ν κ²°μ κ³Όμ (MDP)μΌλ‘ 곡μν
- μν κ³΅κ° (State Space, S): νΉμ μμ tμμμ μνλ (ν¨ν· ν¬κΈ° μνμ€, IPD μνμ€) μμΌλ‘ μ μ
- νλ κ³΅κ° (Action Space, A): 곡격μλ λ§€ λ¨κ³μμ λ¨μΌ ν¨ν·μ νΉμ§(μκ°)μ μμ νκ±°λ, κ°μ§ ν¨ν·(Chaff packet)μ νλ μ½μ
. $a_t$λ μμ λλ μ½μ
μ μΈλ±μ€.
- νλ κ° $a_t$κ° νμ (μκ° μ§μ° μ‘°μ) : ν¨ν· κ° μ§μ° μνμ€ βat/2βμ μλ μμλ₯Ό μμ .
- ν¨ν· ν¬κΈ°λ₯Ό λ³κ²½νλ©΄ κ·Έ μμ λ΄κΈ΄ μ μ± μ½λ(νμ΄λ‘λ)κ° κΉ¨μ§ μ μμΌλ―λ‘ Domain constraintsμ μ§ν€κΈ° μν΄ ν¬κΈ°λ κ·Έλλ‘ λ
- νλ κ° $a_t$κ° μ§μ (κ°μ§ ν¨ν· μ½μ
) : κ° μνμ€μ μμΉ at/2μ μ μμλ₯Ό μΆκ°
- μ΄ λ 10κ° μ§λ¦¬ ν¨ν·κ³Ό λλ¨Έμ§κ° ν¨λ©μΌλ‘ μ±μμ§ μνμ€μμ 50λ²μ§Έ μΈλ±μ€μ μ½μ νλΌλ μ΄μν νλμ λ°©μ§νκΈ° μν΄ Invalid Action Masking λ©μ»€λμ¦μ μ¬μ©νμ¬ μ€ν λΆκ°λ₯ν νλμ νλ₯ μ ν° μμκ°μΌλ‘ μ‘°μ
- νλ κ° $a_t$κ° νμ (μκ° μ§μ° μ‘°μ) : ν¨ν· κ° μ§μ° μνμ€ βat/2βμ μλ μμλ₯Ό μμ .
- 보μ ν¨μ (Reward Function, R): 보μμ μΈ κ°μ§ μμμ ν©μΌλ‘ κ΅¬μ± $r = r_E + \beta \cdot r_D + \gamma \cdot r_M$
- $r_E$ (ννΌ λ³΄μ): νκ² λ°©μ΄ μμ€ν μ 무μ¬ν ν΅κ³Όν ν¨ν·μ λΉμ¨.
- $r_D$ (λΉμ μ¬μ± νλν°): λ³μ‘°λ νΈλν½κ³Ό μλ³Έ μ μ± νΈλν½ κ°μ 거리(Edit Distance)λ₯Ό μ΅μννκΈ° μν νλν°. μ‘°μ νμκ° λμ΄λ λλ§λ€ μμ 보μ(-1)μ λΆμ¬νμ¬ μμ΄μ νΈκ° μ΅λν μ μ νμλ‘ κ³΅κ²©μ μ±κ³΅νλλ‘ μ λ.
- $r_M$ (ν¨κ³Όμ± νλν°): ν¨κ³Ό ν¨λν°. DDoS 곡격 κ°μ κ²½μ° νΈλν½ μ μ‘λ₯ (Rate) λ± μ
μ± κ³΅κ²© λ³Έμ°μ νκ΄΄λ ₯μ μμ§ μλλ‘ κ°μ νλ νλν°
- νμ΄λ‘λμμ λ°μνλ μ μ± νμ : μ°λ¦¬ νμκ° νμ΄λ‘λλ₯Ό 건λ€μ§ μμΌλ―λ‘ 0μΌλ‘ μ€μ - μ’ λ£ μ‘°κ±΄
- μ΅λ μ‘°μ νμκ° μκ³κ°μ λλ¬
- ννΌμ¨μ΄ μκ³κ° μ΄κ³Ό
- μ μ±
μ΅μ ν (Policy Optimization)
- μ μ± : νΉμ μν©μ΄ μ£Όμ΄μ‘μ λ, μ·¨ν΄μΌ νλ νλμ νλ₯ λ‘ κ²°μ
- κ°λ²Όμ΄ GRU μ κ²½λ§μ μ¬μ©.
- μ΅μ ν μκ³ λ¦¬μ¦μΌλ‘ SAC μ¬μ©
- μΌλ°μ μΈ κ°ν νμ΅ AIλ μ€μ§ βκ°μ₯ λμ μ μ(보μ)βλ§μ μ«λ€λ³΄λ μ΄λ°μ μ°μ°ν 10μ μ§λ¦¬ νλμ λ°κ²¬νλ©΄, μ¬μ€ 100μ μ§λ¦¬ μ λ΅μ΄ λ°λ‘ μλλ°λ 주ꡬμ₯μ°½ 10μ μ§λ¦¬ νλλ§ λ°λ³΅ (Local Optimum)
- μνΈλ‘νΌλ₯Ό λμ΄λ©΄μ (λ€μν νλμ νλ©΄μ) μ μλ₯Ό μ΅λν
- Replay Bufferλ₯Ό ν΅ν΄ κ³Όκ±° νΌλλ°±μ λ²λ¦¬μ§ μκ³ κ³μ μ¬νμ©νμ¬ νμ΅νλ μ€νν΄λ¦¬μ(Off-policy) λ°©μμ μ¬μ©
- λ무 λ§μ΄ μ°λ₯΄λ©΄ μ΄μ νμ§ μλμ΄ μΈλ €λ²λ¦¬κΈ° λλ¬Έμ μμ£Ό μ κ² μ°λ¬λ³΄κ³ λ(μ μ μν) λΉ λ₯΄κ² νμ΅νλ λ₯λ ₯μ΄ νμμ
- λμ νλ¦
- νλ $a_t$λ₯Ό ν΅ν΄ λ§μ€νΉ
- Traffic-BERTλ₯Ό μ¬μ©νμ¬ λ§μ€νΉ λΆλΆμ μ μ νΈλν½μ ν¬κΈ°μ μκ° κ°μΌλ‘ μ±μ
- μ€μ λ°©μ΄λ²½μ ν¨ν·μ μμ 보λ
- μ΄λ, κ°μ§λ‘ μΆκ°λκ±°λ μμ λ ν¨ν·μ μ μΈνκ³ λλ¨Έμ§ μ μ± νμ΄λ‘λλ μ μμ μΌλ‘ 쑰립λμΌ κ³΅κ²©μ΄ μ±κ³΅
- λ§μ½ κ°μ§ ν¨ν·κΉμ§ μλ²μ μ ν리μΌμ΄μ
μ΄ κ°μ΄ μ²λ¦¬νλ©΄ μ€λ₯λ‘ κ°μ£Όνκ³ RSTλ₯Ό 보λ΄κ³ μ°κ²°μ λμ
- κ°μ§ ν¨ν·κΉμ§ μ²λ¦¬λμ§ μκΈ° μν΄ TCPμ μλͺ»λ μνμ€ λ²νΈλ₯Ό μ¬μ©νκ±°λ, UDP ν¨ν·μ μ§§μ TTLμ μ€μ νκ±°λ, λ€λ₯Έ νλ‘ν μ½μ λν΄ μ¬μ‘°λ¦½ νμμμ ν νκΈ°λλ orphan IP μ‘°κ°μ 보λ΄λ λ±μ λ°©λ²μ μ¬μ©
- (μν, νλ, 보μ, μ΄ν μν)λ₯Ό replay bufferμ μ μ₯
- replay bufferμ μ΄λ μ λ μ μ₯μ΄ λλ©΄ Q-λ€νΈμν¬λ μμ μ΄ μμΈ‘νλ κ°μΉμ μ€μ λ°μ 보μ κ°μ μ€μ°¨λ₯Ό κ³μ°νμ¬ μμ μ κ°μ€μΉλ₯Ό μ
λ°μ΄νΈνκ³ , κ·Έ νκ° κΈ°μ€μ μ μ±
λ€νΈμν¬μ λκ²¨μ£Όμ΄ μ μ±
λ€νΈμν¬κ° λ λμ νλμ νμ΅νλλ‘ μ λ
- Q-λ€νΈμν¬ : νμ¬ μν $s_t$μμ νΉμ νλ $a_t$λ₯Ό μ·¨νμ λ, λ―Έλμ μ»μ μ μλ λμ 보μμ κΈ°λκ°(Q-Value)μ κ³μ°νλ μ κ²½λ§
- Q-λ¬λ μκ³ λ¦¬μ¦μ λ€μ μνμ κ°μΉλ₯Ό νκ°ν λ μ΅λκ°μ μ ν.
- ν΅κ³μ μΈ λ Έμ΄μ¦κΉμ§ κΈμ μ μΈ κ°μΉλ‘ ν¬ν¨μμΌ, νΉμ νλμ κ°μΉλ₯Ό κ³Όλνκ°
- μ΄μ€ Q-λ€νΈμν¬ : λ κ°μ Q-λ€νΈμν¬λ₯Ό λμμ νμ΅ν ν, μ΅μκ°μ μ ν
- Q-λ€νΈμν¬ : νμ¬ μν $s_t$μμ νΉμ νλ $a_t$λ₯Ό μ·¨νμ λ, λ―Έλμ μ»μ μ μλ λμ 보μμ κΈ°λκ°(Q-Value)μ κ³μ°νλ μ κ²½λ§
- μΆλ‘ (Runtime Inference): μ€μ 곡격 μμλ νκ² μμ€ν
μΌλ‘λΆν° μ€μκ° νΌλλ°±($r_E$)μ λ°μ μ μμΌλ―λ‘, νμ΅λ μ΄μ€ Q-Networkμ κ°μ νμ©νμ¬ κ³΅κ²© μ±κ³΅ μ¬λΆλ₯Ό μΆμ
- μ μκ° μΌμ μ μλ₯Ό λμΌλ©΄ μ‘°μμ μ€λ¨νκ³ νκ² μλ²λ‘ λ°μ‘
Evaluation
μ΅λ 10λ² μ΄νμ μ‘°μμΌλ‘ 96.5%μ 곡격 μ±κ³΅λ₯ μ λ¬μ±. μ΄μ κΈ°λ²μ λΉν΄ μ΅λ 21% λ°μ΄λ¨.
- 1μκ° μ΄λ΄μ μ°ν λ°©λ²μ μ°Ύμλ β κΈ°μ‘΄ κ³΅κ²©λ³΄λ€ μ½ 70λ°° λΉ λ₯Έ μλλ‘ μ μ± ν¨ν·μ μ μ ν¨ν·μΌλ‘ μ€μκ°μΌλ‘ λ³ν
Contribution
- νλ λ μ΄λΈ λΈλλ°μ€ κΈ°λ² νΈλν½ μ°ν 곡격 νλ μμν¬ μ μ
- μ μ νΈλν½μ λͺ¨λ°©ν μ μλ Traffic-BERT μ€κ³
- μ΅μνμ μ‘°μλ§μΌλ‘ 곡격μ νλ μ΅μ ν λ°©λ² μ μ
λ΄ μκ°
- μμνλ₯Ό μν΄ log ν¨μλ₯Ό μ·¨ν μ μλ€λ μ μ μκ² λ¨.
- λ°©νλ²½ λ¨μμ κ°μ§ ν¨ν·μ λλ‘νκ³ ν΅κ³ λΆμμ νλ€λ©΄..?
- κ³μ° λΉμ©μ΄ μ€λκ±Έλ¦¬λ €λ..
- λ°©νλ²½μ΄ μ¨λΌμΈμΌλ‘ νμ΅ν΄μ Q-networkμ μμ μ μμ μ€μ 보μμ΄ λ€λ₯΄λ€λ©΄..?
- λλ λ°©νλ²½μμ feature extractorλ₯Ό λ³κ²½νλ€λ©΄
Leave a comment