Git Product home page Git Product logo

researchiotsecurity's Introduction

ResearchIoTSecurity

Study about IoT Security for the "Integradora 2" class.

Credits

https://github.com/prplfoundation/prpl-hypervisor

Hypervisor

  • The Secure Version

Download Submodules:

  • git submodule init

  • git submodule update

Additional Step to run shared-ethernet.cfg

  • Additional step required which is not written in the cfg file: On the makefile, you also need to comment the line "CONFIG_PIC32MZ_ETHERNET_DRV = yes".
  • Side Note: deploying shared-ethernet is slower than normal, maybe because of the config file
  • Side Note 2: shared ethernet has a bug, which makes none/one/both of the VM's not work properly. A fix was not researched thoroughly.

Using Parallels Desktop:

  • Need to configure another Network Interface to share Ethernet.

Using tcp-listener application

  • If on Parallels Desktop, be sure that there's an interface shared from "thunderbolt ethernet".
  • Also be sure that MacOS is not sharing in any way the Thunderbolt Ethernet port
  • Connect PIC32 through Ethernet cable
  • $ sudo ifconfig enp0s6:1 192.168.0.1
  • $ ping 192.168.0.2 (Checking if it is working)
  • $ telnet 192.168.0.2 80 (Connect to telnet )
  • TO quit: 'ctrl' + ']'

Common Mistakes:

  • Do not open the comm interface (/dev/ttyAC0) before fully finishing make load

Secure-Boot-VM Additional Step:

  • git checkout secure-boot-vm
  • ...
  • After executing make, copy the two generated file keys (public and private) to ~/temp
  • Not sure if is ~/temp (at home) or just /temp (top level)

Secure-Boot-VM getting the execution time:

  • Open the file located at prpl-hypervisor/cryptography/security.c
  • Uncomment all the print lines at the bottom of the file.
  • Keep in mind that the values are printed as cicles
  • ns = cicles/100000
  • Side Note: What makes it generate the hash generation and verification faster or slower is the Flash size of the VM (which is configured at each cfg file, for each different VM).

Remember this:

sudo ifconfig enp0s6:1 192.168.0.1

  • My en interface while using parallels is enp0s6. To use applications which requires to set an ip at the code, this is required to telnet/ping/access webpage of the VM running them.

sudo ifconfig enp0s6:1 down

  • Remove the interface

Cables:

  • The thick cable is for Data Transmission, connect it just below ethernet port.
  • The thin cable is used for Powering up the board, connect it to the port located in the middle.

researchiotsecurity's People

Contributors

feliperubin avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.