model checking the eapnoob protocol• modelled with mcrl2 (micro common representation language 2)...

1
Aleksi Peltonen, Mohit Sethi, Tuomas Aura Model Checking the EAP-NOOB Protocol Contact: aleksi.peltonen@aalto.fi, mohit.sethi@aalto.fi, tuomas.aura@aalto.fi Specification: https://tools.ietf.org/html/draft-aura-eap-noob-03 Implementation: https://github.com/tuomaura/eap-noob aalto.fi aalto.fi AAA/cloud account login aalto.fi EAP-NOOB protocol background New IoT appliance has no owner or domain, no credentials for cloud or Wi-Fi EAP-NOOB: Connects the device to access network Registers the device to AAA server/cloud Security from a single user-assisted out-of-band message between peer device and AAA server Modelling EAP-NOOB Modelled with mCRL2 (micro Common Representation Language 2) Goals of model checking: Protocol simulation and visualisation Debugging the specification, liveness and safety properties Reachability of good and bad states Deadlock freedom Recovery from errors and timeouts Handling persistent vs. ephemeral data Detecting persistent denial of service Recovery after message loss and manipulation Results and changes In the protocol: Recovering from rejected nonces caused by attackers or unreliable channels Recovering from expired out-of-band messages caused by timeouts Handling of redundant out-of-band messages caused by delays or replays In the implementation: Recovering from message type mismatches In the modelling language: Detected and reported a bug in the linearisation of user-defined type aliases Visualisation of states and transitions

Upload: others

Post on 15-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

  • Aleksi Peltonen, Mohit Sethi, Tuomas Aura

    Model Checking the EAPNOOB Protocol

    Contact: [email protected], [email protected], [email protected]: https://tools.ietf.org/html/draft-aura-eap-noob-03Implementation: https://github.com/tuomaura/eap-noob

    aalto.fi aalto.fi

    AAA/cloud account login

    aalto.fi

    EAPNOOB protocol background• New IoT appliance has no owner or domain, no credentials for cloud or WiFi• EAPNOOB:

    Connects the device to access network Registers the device to AAA server/cloud

    • Security from a single userassisted outofband message between peer device and AAA server

    Modelling EAPNOOB• Modelled with mCRL2 (micro Common Representation 

    Language 2)• Goals of model checking:

    Protocol simulation and visualisation Debugging the specification, liveness and safety 

    properties Reachability of good and bad states Deadlock freedom Recovery from errors and timeouts Handling persistent vs. ephemeral data

    Detecting persistent denial of service Recovery after message loss and manipulation

    Results and changesIn the protocol:• Recovering from rejected nonces caused by attackers or unreliable channels• Recovering from expired outofband messages caused by timeouts• Handling of redundant outofband messages caused by delays or replays

    In the implementation:● Recovering from message type mismatches

    In the modelling language:● Detected and reported a bug in the linearisation of userdefined type aliases

    Visualisation of states and transitions