All Projects → davikawasaki → iot-security-vulnerability

davikawasaki / iot-security-vulnerability

Licence: MIT license
Raspberry PI Vulnerability Study using Flask, PWA VueJS 2, Requests, Vue-Socket.io and Flask SocketIO

Programming Languages

python
139335 projects - #7 most used programming language
Vue
7211 projects
HTML
75241 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to iot-security-vulnerability

Rpi Pxe Server
setup a Raspberry Pi as an PXE-Server
Stars: ✭ 197 (+720.83%)
Mutual labels:  raspberry, kali
pwk scripts
Automation scripts in preparation for PWK/OSCP labs
Stars: ✭ 16 (-33.33%)
Mutual labels:  kali
Berrylan
Raspberry Pi WiFi setup
Stars: ✭ 243 (+912.5%)
Mutual labels:  raspberry
ControlBlockService2
This is the driver for the ControlBlock re.v 2.X, a power switch and input/output/gameapd gadget for the Raspberry Pi
Stars: ✭ 18 (-25%)
Mutual labels:  raspberry
warpi
"GUI" script running on a Raspberry Pi 4
Stars: ✭ 29 (+20.83%)
Mutual labels:  raspberry
pi-explorer
Web File Explorer UI for linux server
Stars: ✭ 13 (-45.83%)
Mutual labels:  raspberry
Jns
jupyter notebook and lab on Raspberry Pi
Stars: ✭ 228 (+850%)
Mutual labels:  raspberry
exe2hex
Inline file transfer using in-built Windows tools (DEBUG.exe or PowerShell).
Stars: ✭ 284 (+1083.33%)
Mutual labels:  kali
Selfhosted-Google-Photos-Alternative
A complete guide on exiting Google, Amazon or any proprietary service Photos storage with all the features you would want.
Stars: ✭ 143 (+495.83%)
Mutual labels:  raspberry
diffbot
DiffBot is an autonomous 2wd differential drive robot using ROS Noetic on a Raspberry Pi 4 B. With its SLAMTEC Lidar and the ROS Control hardware interface it's capable of navigating in an environment using the ROS Navigation stack and making use of SLAM algorithms to create maps of unknown environments.
Stars: ✭ 172 (+616.67%)
Mutual labels:  raspberry
lcds
Light Centralized Digital Signage
Stars: ✭ 17 (-29.17%)
Mutual labels:  raspberry
anyfesto
Low cost Raspberry Pi /Linux based access point with audio, education and communications local content server. Inspired by the ideas of sharing with others. Anyfesto - a platform from which to speak.
Stars: ✭ 66 (+175%)
Mutual labels:  raspberry
Sudomy
Sudomy is a subdomain enumeration tool to collect subdomains and analyzing domains performing automated reconnaissance (recon) for bug hunting / pentesting
Stars: ✭ 1,572 (+6450%)
Mutual labels:  kali
kali-linux-full-container
Kali image with kali-linux-full metapackage installed, build every night.
Stars: ✭ 20 (-16.67%)
Mutual labels:  kali
cloud4rpi
Cloud4RPi Client Library
Stars: ✭ 21 (-12.5%)
Mutual labels:  raspberry
Rpicheck
RasPi Check - an Android app for checking your Raspberry Pi status.
Stars: ✭ 227 (+845.83%)
Mutual labels:  raspberry
Python-NEO-6M-GPS-Raspberry-Pi
Python script for the NEO-6M GPS module on the Raspberry Pi
Stars: ✭ 41 (+70.83%)
Mutual labels:  raspberry
FaceGuard
Face Guard: Machine Learning + IoT Surveillance demo! Face recognition
Stars: ✭ 13 (-45.83%)
Mutual labels:  raspberry
PicoVGA
VGA/TV display on Raspberry Pico
Stars: ✭ 119 (+395.83%)
Mutual labels:  raspberry
SolPipLog
Logger for the PIP Inverter series ( USB / RS232 version )
Stars: ✭ 72 (+200%)
Mutual labels:  raspberry

Raspberry PI IoT Security Vulnerability Final College Project for Security Class

Considering the increase of IoT devices, this work proposes a weakness evaluation in IoT network of devices and possible solutions. This security IoT project uses a DHT11 sensor with Raspberry Pi, showing real-time temperatures in VueJS PWA.

Project Model with Raspberry Pi 3, DHT11 and Mobile App

Demo - Loads VueJS PWA with socket connection.

⚠️ Due to Heroku Free One Dyno Plan, this demo can't run HTTP requests and websocket connection together. If you know a way to make this feasible in Heroku Cloud, send a PR or a message.

TECHNOLOGIES & LIBRARIES

  1. Python 2.7

  2. Flask 0.12

  3. Jinja 2.10

  4. Werkzeug 0.12

  5. Raspberry Pi 3 B

  6. DHT11

  7. Kali 2017.2

  8. VueJS v2

  9. PWA

  10. Requests 2.18.4

  11. Gunicorn 19.7.1 - Only for Heroku Deployment

  12. Vue-Socket.io

  13. Flask SocketIO

  14. Wireshark

  15. Arpspoof

  16. mitmproxy

IMPLEMENTATION

CHECK THE FULL TUTORIAL

This project covers an IoT devices network using HTTP transmission between two Raspberry Pi 3 B model, which one of the Rasps collects the sensor temperature and the other one acts like a webserver with Flask to provide the temperature data to a mobile device - developed with VueJS 2 and PWA boilerplate. This way, the user can check if there's a fire with his/her mobile device.

As security will be in check, network transmissions will always have a Darth reading and modifying the collected data. The proposed solution aims to fight Darth (not Vader, but as evil as him) to ensure data integrity and confidentiality through cryptography techniques. This will ensure to the server to identify if the received information was tampered or from a unknown source.

PWA SPA Layout Sequence

STEPS

1. Raspberry Client Sensor Server

2. Raspberry Flask Webserver

3. Progressive Web App with VueJS

4. Sniffering Data with Kali

REFERENCES

Flask Documentation

Flask Socket.io

Flask Deployment on the Heroku Cloud

How to setup the DHT11 Humidity Sensor on the Raspberry Pi

Process Types and the Procfile

Mitmproxy - Modes of Operation

Intercept, Analyze, and Modify Puzzle and Dragons Game Traffic

AUTHORS

This work was developed to System Security undergrad-subject final project. The people involved in the project are:

Student: POLETTO, André // polettoandre [at] gmail.com

Student: KAWASAKI, Davi // davishinjik [at] gmail.com

Student: ROZAN, Higor Augusto Bassi // higorb.rozan [at] gmail.com

Student: RODER, Nicholas Ribeiro // nilroder [at] gmail.com

Professor: YOKOYAMA, Roberto Sadao // yokoyama [at] utfpr.edu.br

CONTACT & FEEDBACKS

Feel free to contact or pull request me to any relevant updates you may enquire:

KAWASAKI, Davi // davishinjik [at] gmail.com

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].