Skip to content

smart-home-network-security/BehavIoT

 
 

Repository files navigation

BehavIoT

This repository is a fork of the code for the IMC23 paper dubbed BehavIoT. Paper BibTeX reference:

@inproceedings{hu-imc23,
title={{BehavIoT: Measuring Smart Home IoT Behavior Using Network-Inferred Behavior Models}},
author={Hu, Tianrui and Dubois, Daniel J. and Choffnes, David},
booktitle={Proc. of the Internet Measurement Conference (IMC)},
year={2023}
}

A Docker container image has been developed to ease the reproducibility of experiments.

Docker container

Pull the image with:

docker pull fdekeers/behaviot

If you are a lone wolf, you can also build the image by yourself by yourself. To do that, you will first need to download the tarball for Oracle JDK 7, by taking a look at Oracle's website, and put the tarball at this repository's root directory. Then, execute the following command:

docker build [-t IMAGE_TAG] --build-arg UID=$(id -u) --build-arg GID=$(id -g) .

Run a container instance with:

docker run --rm --mount type=bind,source=$(pwd),target=/home/user/BehavIoT -it fdekeers/behaviot /home/user/BehavIoT/switch_user.sh $(id -u) $(id -g)

(If you built the image by yourself, replace fdekeers/behaviot with the tag you gave to your image.)

Modeling device behavior: inferring periodic and user events

Modeling system behavior: building probabilistic finite state machine

Characterization: Event destination and non-essential destination analysis

Testbed

The device file lists the smart home devices and their MAC address used in the paper. For the testbed setup and software for traffic capture, please check out the IMC19 paper.

Datasets

Request here

Releases

No releases published

Packages

No packages published

Languages

  • Python 83.9%
  • Jupyter Notebook 12.9%
  • Shell 2.9%
  • Dockerfile 0.3%