Você está na página 1de 18

IoT Device Identification Using Deep

Learning

Erik Jhones,
Alessandro Feitoza,
Luan Araujo
Prof. Dr. Márcio Espíndola
Freire Maia

Universidade Federal do Ceará

8 de janeiro de 2023
Agenda

• Introdução;
• Fundamentação Teórica;
• Trabalhos Relacionados;
• Metodologia;
• Resultados e Discussão;
• Conclusões;
• Referências.

2 of 18
Fig 1- IoT: Num de dispositivos em todo o mundo de 2019 a 2030

Introdução

Fig 1- IoT: Num de dispositivos em todo o mundo de 2019 a 2030

3 of 18
Introdução

• O crescente uso de dispositivos IoT nas organizações aumentou


o número de vetores de ataque disponíveis, isso se dá devido à
falta de conscientização de segurança entre os fornecedores e a
ausência de padrões governamentais certificadores para
dispositivos IoT [2].

• Shodan

• Identificar os Dispositivos IoT conectados à rede organizacional.

4 of 18
Desafio

• Política (BYOD)
• Proposta
◦ Identificação de dispositivos conhecidos e desconhecidos na rede
• Em abordagens tradicionais a identificação é feita pelo endereço
MAC (Fácil falsificar)
◦ A abordagem do artigo atual é focada no conteúdo TCP dos
pacotes trocados pelos dispositivos em oposição ao cabeçalho
dos pacotes.
◦ Apenas uma única sessão TCP é necessária para detectar o
dispositivo IoT de origem

5 of 18
Fundamentação Teórica

• Machine Learning;
• Deep Learning;
• Protocolos em
IoT;
◦ TCP;
◦ Bluetooth;
◦ ZigBee;
◦ CoAP;

6 of 18
Trabalhos Relacionados

Tabela 1 - Trabalhos
Relacionados

7 of 18
Metodologia (IoT trace dataset)

belkin wemo motion sensor ec:1a:59:83:28:11 ip 192.168.1.193


amazon echo 44:65:0d:56:cc:d3 ip 192.168.1.240
samsung smartcam 00:16:6c:ab:6b:88 ip 192.168.1.249
belkin wemo switch ec:1a:59:79:f4:89 ip 192.168.1.223
netatmo welcome 70:ee:50:18:34:43 ip 192.168.1.241
pix-star photoframe e0:76:d0:33:bb:85 ip 192.168.1.177
Non IoT devices all other IPs ip .............

Amazon Echo
Samsung
SmartCam Belkin Wemo
Belkin Wemo Netatmo Welcome
switch
motion sensor
8 of 18
Metodologia (processamento)

• Dataset possui 690787 amostras de payload TCP;


◦ exemplo payload: <IP version=4 ihl=5 tos=0x0
len=60 id=0 flags=DF frag=0 ttl=64 proto=6
chksum=0xb5b1 src=192.168.1.249
dst=192.168.1.193 |<TCP sport=49152 dport=4977
seq=1883598654 ack=4130175041 dataofs=10
reserved=0 flags=SA window=5792 chksum=0xa935
urgptr=0 options=[('MSS', 1460), ('SAckOK', b''),
('Timestamp', (12068163, 220769932)), ('NOP', None),
('WScale', 2)] |>>
• Os atributos de cada amostra foram retirados dos payloads;
• Usamos codificação hash para gerar atributos numéricos;
◦ exemplo hash:
b'\xf1\xe0ix~\xcetS\x1d\x11%Y\x94\\hq'
• Para cada hash foi gerado o seu hexadecimal;
9 of 18
◦ f1e069787ece74531d112559945c6871
Metodologia (processamento)

• Dataset pós-processamento: 33 atributos, 690787 amostras, 7


classes;
• Proporção por classes;
◦ Non IoT devices 586917
belkin wemo motion sensor 353955
amazon echo 12683
samsung smartcam 17139
belkin wemo switch 26487
netatmo welcome 9676
pix-star photoframe 1930

10 of 18
Metodologia (processamento)

• Foi usado random forest para realizar um feature selection nos


dados. Ao todo, foram selecionados as 10 features mais
importantes, onde o grau de importância total somava 80% de
informação;
◦ features selecionadas: 27, 18, 0, 9, 5, 23, 20, 17, 29, 7.

11 of 18
Metodologia (visualizando dataset)

scatter plot dataset pós tSNE


12 of 18
Metodologia (classificação)

● O dataset foi particionado em 80% treino, 15% validação, e


5% teste;

● Foram usados 3 classificadores: MLP, KNN e Random Forest


(ambos com configuração default da biblioteca sklearn);

● Os modelos foram avaliados usando Acurácia, precisão. recall e


F1-score;

13 of 18
Resultados classificação (treino)

random forest KNN

MLP
14 of 18
Resultados classificação (teste)

random forest KNN

MLP
15 of 18
Conclusão

● Random Forest teve as melhores métricas, superando em até


10% o MLP;

● Random forest lidou melhor com o desbalanceamento entre as


classes;

● MLP estava sujeito a overfitting, enquanto Random Forest não


teve esse problema;

● Ambas as classes foram classificadas com alto grau de precisão


utilizando o Random Forest.

16 of 18
Dúvidas?

● Random Forest teve as melhores métricas, superando em até


10% o MLP;

● Random forest lidou melhor com o desbalanceamento entre as


classes;

● MLP estava sujeito a overfitting, enquanto Random Forest não


teve esse problema;

● Ambas as classes foram classificadas com alto grau de precisão


utilizando o Random Forest.

17 of 18
OBRIGADO!

18 of 18

Você também pode gostar