Network Protocol Analysis for IoT Devices

Presented by Jonathan Oxer
Thursday 11:35 a.m.–12:20 p.m.
Target audience: Developer

Abstract

Learn about practical network protocol analysis techniques, and take control of the devices that surround you!

Our homes are filled with devices that communicate over both wired and wireless networks, pushing data to each other to make our lives easier.

Many of these devices started out as simple 2-node pairs: some kind of sensor in one place, and a display in another. The sensor is installed in a useful location and periodically communicates with the display that is sitting on your kitchen counter, and your life is improved somehow. Think of home weather stations, HVAC thermostats, and power usage monitors as common examples.

These devices are designed to be cheap, simple, and reliable. What they are NOT designed to be is secure. They commonly blast their data out using transmitters operating in the unlicensed ISM (Industrial, Scientific, Medical) bands without any regard for whether third parties can intercept that data.

Now stop to think about how many other devices in your house may be using wireless communication. Security cameras, bathroom scales, motion detectors, water tank sensors, car alarms, remote control power strips, flood detection alarms, door locks, electric curtains and blinds, humidity sensors, heart rate sensors. And yes, as Karen Sandler showed us at a previous LCA, even implanted medical devices such as pacemakers!

This provides us with both opportunities and threats.

The opportunity is to make these devices do far more than their maker intended. Many of them were designed to be nothing more than point-to-point systems, but by using some basic tools such as an Arduino we can eavesdrop on their conversations and even imitate them. This talk will demonstrate how to start with an unknown communications method between a pair of devices, and methodically pick it apart until we can see how it works. It will begin with a simple ultrasonic water tank depth sensor that sends a periodic signal to a display in your house, and show how to intercept the signal for your own purposes such as integrating it with a home automation system.

Which leads us to the threat. Having analysed the network protocol so that we can read it, we can now also spoof that same protocol to inject false data into the system. With the same skills and tools required to intercept common ISM band signals, we can simply pull up in a car outside a house and cause havoc by manipulating the trivial wireless data packets flying around it.

Finally, learn which techniques you can use with your own IoT projects to reduce the risk of becoming a victim yourself.

Presented by

Jonathan Oxer

Jon has been hacking on both hardware and software since he was a little tacker. Most recently he's been focusing more on the Open Hardware side, co-founding Freetronics as a result of organising the first Arduino Miniconf at LCA2010 and designing the Arduino-based payloads that were sent into orbit in 2013 on board satellites ArduSat-X and ArduSat-1. His books include "Ubuntu Hacks" and "Practical Arduino", and he produces the "SuperHouseTV" DIY home automation channel on YouTube.

©2016 Linux Australia and linux.conf.au 2017. Linux is a registered trademark of Linus Torvalds. Site design by Takeflight. Image credits can be found on our Colophon.