Automated Detection of Harmful Internet of Things Interactions through Natural Language

Open Access
- Author:
- Bees, Jonathan
- Area of Honors:
- Computer Science
- Degree:
- Bachelor of Science
- Document Type:
- Thesis
- Thesis Supervisors:
- Patrick Drew Mcdaniel, Thesis Supervisor
Jesse Louis Barlow, Thesis Honors Advisor - Keywords:
- Internet of Things
IoT
Natural Language Processing
NLP - Abstract:
- Modern "smart" devices, which take everyday objects like locks and refrigerators and make them visible and controllable via the internet, make up what is referred to as the Internet of Things (IoT). The breadth of "things" which could be connected to the internet has encouraged the rapid development and release of new IoT products by many disparate companies. Because of the enormous quantity and variety of internet-connected sensors and appliances, the causes and effects of the interactions between these devices are difficult to detect. This issue arises from both the sheer number of internet-connected devices which could interact with each other as well as the fact that many of these interactions can take place through the physical environment, separate from any explicitly programmed logic. This can lead to devices interacting in ways that users did not anticipate or intend. In this thesis, we use the natural language descriptions created by device manufacturers to describe the properties their devices can sense and the actions they can perform to determine how a connected set of IoT devices could interact both directly and via the physical environment they inhabit. Using Natural Language Processing (NLP), we determine what aspects of the environment or the state of the IoT system could trigger a program, along with what changes that program's action would cause to the system state and the environment. We then use these representations to create a representation of the environmental and system state to determine what combinations of programs could exhibit undesirable properties such as compromising a user's safety. We evaluate this approach on a corpus of 280,000 trigger-action programs (17,000 unique pairs of 1,470 triggers and 896 actions) from the IFTTT platform, finding more than 350,000 possible instances of program combinations that could unintentionally exhibit undesirable properties. This approach can be applied to the current, fractured state of the IoT ecosystem without additional work from manufacturers, third-party integrators, or users, allowing users to detect and avoid situations that could endanger them or their belongings.