Securing Node-RED ApplicationsShow others and affiliations
2021 (English)In: Protocols, Strands, and Logic: Essays Dedicated to Joshua Guttman on the Occasion of his 66.66th Birthday / [ed] Daniel Dougherty, José Meseguer, Sebastian Alexander Mödersheim, Paul Rowe, Springer Science and Business Media Deutschland GmbH , 2021, p. 1-21Chapter in book (Refereed)
Abstract [en]
Trigger-Action Platforms (TAPs) play a vital role in fulfilling the promise of the Internet of Things (IoT) by seamlessly connecting otherwise unconnected devices and services. While enabling novel and exciting applications across a variety of services, security and privacy issues must be taken into consideration because TAPs essentially act as persons-in-the-middle between trigger and action services. The issue is further aggravated since the triggers and actions on TAPs are mostly provided by third parties extending the trust beyond the platform providers. Node-RED, an open-source JavaScript-driven TAP, provides the opportunity for users to effortlessly employ and link nodes via a graphical user interface. Being built upon Node.js, third-party developers can extend the platform’s functionality through publishing nodes and their wirings, known as flows. This paper proposes an essential model for Node-RED, suitable to reason about nodes and flows, be they benign, vulnerable, or malicious. We expand on attacks discovered in recent work, ranging from exfiltrating data from unsuspecting users to taking over the entire platform by misusing sensitive APIs within nodes. We present a formalization of a runtime monitoring framework for a core language that soundly and transparently enforces fine-grained allowlist policies at module-, API-, value-, and context-level. We introduce the monitoring framework for Node-RED that isolates nodes while permitting them to communicate via well-defined API calls complying with the policy specified for each node.
Place, publisher, year, edition, pages
Springer Science and Business Media Deutschland GmbH , 2021. p. 1-21
Series
Lecture Notes in Computer Science, ISSN 0302-9743 ; 13066 LNCS
Keywords [en]
Internet of things, Fine grained, Formalisation, Javascript, Link nodes, Monitoring frameworks, Open-source, Runtime Monitoring, Security and privacy issues, Service security, Third parties, Graphical user interfaces
National Category
Computer Sciences
Identifiers
URN: urn:nbn:se:mdh:diva-56664DOI: 10.1007/978-3-030-91631-2_1Scopus ID: 2-s2.0-85119698057OAI: oai:DiVA.org:mdh-56664DiVA, id: diva2:1620650
2021-12-162021-12-162021-12-16Bibliographically approved