In this repository you will find a Python implementation of the methods in the paper CNN based IoT Device Identification.
While the use of the Internet of Things is becoming more and more popular, many security vulnerabilities are emerging with the large number of devices being introduced to the market. In this environment, IoT device identification methods provide a preventive security measure as an important factor in identifying these devices and detecting the vulnerabilities they suffer from. In this study, we present a method that identifies devices in the Aalto dataset/IoT devices captures using the convolutional neural network (CNN).
Wireshark and Python 3.10 were used to create the application files. Before running the files, it must be ensured that Wireshark, Python 3.10+ and the following libraries are installed.
Library | Task |
---|---|
Scapy | Packet(Pcap) crafting |
tshark | Packet(Pcap) crafting |
Sklearn | Machine Learning & Data Preparation |
Numpy | Mathematical Operations |
Pandas | Data Analysis |
Scipy | Data Analysis, Mathematical Operations |
Matplotlib | Graphics and Visuality |
Seaborn | Graphics and Visuality |
Keras | Deep Learning |
The technical specifications of the computer used for experiments are given below.
The technical specifications of the computer used for experiments are given below.
Central Processing Unit | : | Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz 2.90 GHz |
Random Access Memory | : | 8 GB (7.74 GB usable) |
Operating System | : | Windows 10 Pro 64-bit |
Graphics Processing Unit | : | AMD Readon (TM) 530 |
The processed datasets are shared in depository. However, raw versions of the datasets used in the study and their addresses are given below.
Dataset | capture year | Number of Devices | Type |
---|---|---|---|
Aalto University | 2016 | 31 | Benign |
This project is licensed under the MIT License - see the LICENSE file for details
If you use the source code please cite the following paper:
@misc{kostas2023CNN,
title={{CNN} based {IoT} Device Identification]},
author={Kahraman Kostas},
year={2023},
eprint={2304.13905},
archivePrefix={arXiv},
primaryClass={cs.CR}
}
Contact: Kahraman Kostas kahramankostas@gmail.com