Infrastructure/Networking

[논문 리뷰] 통신 특징으로 IoT device의 Identity 식별하기

EddyLee 2024. 2. 27. 21:57

제목 : Communication Traffic Characteristics Reveal an IoT Device's Identity

저자 : Rajarshi Roy Chowdhury, Debahish Roy, Pg Emeroylariffion Abas


Abstract

IoT의 발전 -> 네트워크 영역에서 디바이스 인증, 트래픽 유형 분류, 악성 트래픽 식별 등 새로운 유형의 보안 과제를 안겨주기도 한다.

기존에는 IP 주소와 MAC 주소를 이용해서 디바이스를 식별하지만, 이런 주소 체계는 스푸핑 공격과 MAC 무작위화 등의 공격에 취약하다.

따라서 명시적인 식별자를 사용하지 말고, 해당 논문에선 통신 트래픽 특성만을 사용(= 암시적 식별자를 사용)하여 네트워크에 연결된 IoT 디바이스를 식별하는 supervised ML based Device FingerPrinting (DFP) 모델을 제안한다.

 

TCP/IP 패킷 헤더 특성을 이용하여 고유한 지문을 생성하고, 해당 지문을 22개의 특징 벡터로 표현했다.

 

DFP 방법은 UNSW data 세트를 사용하여 개별 IoT 기기를 식별할 때 98% 이상의 정확도를 나타냈다.

 

Introduction

IoT 기술이 세계 경제에 꽤 많은 여파를 미칠 것이다. (구체적인 지표들은 생략)

-> IoT 네트워크에 대한 악의적인 활동과 공격의 증가로 이어졌다. 이런 악성 공격을 완화하기 위해선 네트워크에 연결된 디바이스를 식별할 수 있는 강력하고 정확한 방법이 필수적이다.

 

DFP : IP 주소 + MAC 주소 + OS + 네트워크 트래픽 특징 (패킷, 프레임, 신호) + 브라우저 유형을 활용, 디바이스를 식별하고 추적하는 데에 사용할 수 있는 기술.

따라서, IP 및 MAC 주소와 같은 명시적인 식별 정보가 공격 당해도, 여전히 고유한 디바이스를 식별할 수 있다.

=> 악의적인 공격을 막을 수 있고, 디바이스를 더 정확하게 식별할 수 있다.

(IP 주소나 MAC 주소의 헤더만으로 DFP를 만든다)

 

암튼 이 해당 논문의 연구 장점은 다음과 같다고 한다.

1. 단일 장치에서 발생한 TCP/IP 패킷 헤더만을 사용하여 고유한 지문을 생성하기 위해 많은 수의 특징 풀에서 네트워크 트래픽 특징의 적절한 하위 집합을 식별하여 IoT 장치를 분류 할 수 있다.
2. 공개적으로 사용 가능한 두 개의 데이터 세트로 트리 기반 지도 머신러닝 알고리즘을 사용하여 제안된 DFP 모델 평가할 수 있다.
3. 수학적 연산뿐만 아니라 다양한 데이터셋을 이용한 경험적 분석을 통해 개별 특징의 중요도를 파악하여 특징을 평가할 수 있다.

 

 

Related Work

1) Miettinen : ML 기반 디바이스 핑거프린팅 모델을 제안했다. 276차원 특징 벡터 (12개 패킷 x 23개 특징)를 사용하여 고유한 지문을 생성, 이 지문을 사용하여 장치별 ML 모델을 학습시켰다.

2) Sivanathan : 디바이스 절전 시간, 패킷 크기, 도메인 이름 시스템(DNS) 간격 등 네트워크 트래픽 특성에 대한 통계적 분석을 기반으로 DFP 모델을 제시했다. 매일 관찰되는 패킷 추적을 통해 12가지 통계적 특징을 계산했다. + 시간별 트래픽 추적을 통해 계산한 DFP 접근 방식을 제시했다.

3) 세 가지 매트릭 연산을 사용하여 TCP/IP 패킷의 212개 특징 중 161개의 특징을 선택하여 ML 기반 DFP 모델을 제안했다. 

 

이 외에도  TCP/IP 특징을 24개만 사용한 DFP도 있고, 분류기도 있다.

 

가장 적은 특징을 가지고도 높은 식별률을 보이는게 가장 best긴 하겠지!

 

Methodology

관찰된 네트워크 트래픽 추적을 사용하여 고유한 지문을 생성했고, 이 지문으로 supervised ML 학습시켰다.

ML은 디바이스 분류, 네트워크 트래픽 분류, 악성 트래픽 분류, 추천 시스템 등 다양한 목적으로 활용됐다.

 

1) IoT Datasets

사용 가능한 데이터셋은, IoT Sentinel과 UNSW 데이터셋이 제안된 DFP 모델을 평가하는 데에 활용되었다.

IoT Sentinel 데이터셋 : 31개의 스마트홈 IoT 디바이스가 설정한 위상 트래픽 추적으로 구성

UNSW 데이터셋 : TP-Link 카메라, smart bulb, Belkin camera, smart doorbell, printer과 smart photo frame으로 구성된다.

 

2) ML Classifier

분류 작업에는 Weka tool이 사용됐다. C4.5 분류기는 Iterative Dichotomiser 3 (ID3) 알고리즘의 확장 버전인 J48로 구현된다.
대체 무슨 말일까 -> 아래 블로그에서 설명이 그래도 잘 나와있다.

 

https://tyami.github.io/machine%20learning/decision-tree-2-ID3/

 

의사결정 나무 (Decision Tree) ID3 알고리즘 설명

의사결정 나무의 기본 알고리즘 중 하나인 ID3 를 공부해봅시다

tyami.github.io

 

3) Device Fingerprinting Model

개별 디바이스 식별용 고유 지문을 생성하기 위해 device-originated traffic traces를 사용했다.

device originated traffic traces는 와이어샤크와 같은 네트워크 트래픽 분석 도구를 사용하여 수동적으로 수집한 다음, TShark 유틸리티를 사용하여 단일 TCP/IP 패킷에서 총 24개의 특징을 추출했다.

그 후, 단일 패킷의 24개 특징 벡터인 이 특징 세트에 개별 디바이스 이름으로 레이블을 지정하고 개별 디바이스의 MAC 주소를 기준으로 네트워크 패킷을 그룹화 했다.

이 특징 세트는 비율 속성 평가기를 사용해 평가되었고 가장 중요한 특징을 식별하기 위해 내림차순으로 순위를 매겼다.

이때 시간 기반 기능 값들은 목록에서 제거했다. => 계산 복잡성을 줄였다.

그 후, 선택된 22개의 패킷 헤더 특징(지문)을 사용하여 ML 모델을 훈련하고 IoT 데이터 셋에서 모델 성능을 평가하는 데에 사용했다.

dataset은 8:2로 학습:평가 seperate.

 

Results and discussion

분류 성능 평가 : 트리 기반 분류기 J48을 사용.

위의 두 데이터셋을 사용 (IoT Sentinel, UNSW 데이터셋)

IoT 장치를 분류할 때 제안된 DFP 모델 (파란색)

IoT Sentinel : 22개의 특징 집합을 사용하여 개별 장치 식별률이 83.9%,

같은 분류기에서 24개 특징 집합을 사용하면 0.2% 더 높은 식별률.

-> 84%처럼 낮은 이유는 , IoT Sentinel 데이터셋에 유사한 유형의 디바이스가 존재하기 때문. 또한 이 데이터셋에는 훈련 및 테스트를 위한 다양한 IoT 디바이스와 인스턴스 수가 제한됭었기 때문이다.

 

제안된 DFP 모델 (빨간색)

IoT Sentinel 더 높다. 

 

 

Conclusion

수많은 heterogeneous IoT devices가 서로 연결되고 있는 상황이다.

상호 연결은 네트워크 관리자에게 부하를 주며, attacker은 지금이 기회인 것.

대규모 특징 풀에서 디바이스별 특징을 식별하는 것은 어려운 일이다.

이 논문에선 단일 TCP/IP 패킷 헤더의 네트워크 트래픽 특성만을 사용하여 네트워크에 연결된 IoT 디바이스를 식별하는 ML 기반 DFP 모델을 제안했다.

 

 

정리 및 나의 생각

내가 학부 연구생 때 했던 연구와 굉장히 비슷하다.

라즈베리파이들끼리 LAN을 형성하고, 각 디바이스에서 프롬프트로 랜덤 크기의 랜덤 interval을 가진 데이터들을 각각의 라즈베리파이에 랜덤하게 전송하는 것을 짜고, Wireshark로 트래픽을 캡처한 뒤, .pcap을 다운받고 LSTM 모델을 이용해서 해당 네트워크의 traffic(각각의 디바이스의 트래픽)을 평가하고 예측하는 프로젝트를 했었다.

이 논문의 연구에선 각 디바이스들에게 송신하고 수신되는 패킷들의 헤더의 정보들(MAC주소)을 이용, 각 디바이스를 식별하는 기준을 만드는 연구인 것 같다.

 

가장 궁금한 것은, IP와 MAC 주소로만 패킷을 그냥 네트워크 그룹화 한 것 같은데, 다른 패킷의 feature들은 왜 사용을 안 했을지가 궁금했다.

wireshark만 들어가도 엄청나게 많은 feature들을 볼 수 있는데, 이것들엔 디바이스의 정보가 따로 없는가