MQTT-protokollan tietoturvallisuuden testaaminen - Hakonen, Sami (2023)
Tässä tutkielmassa tarkoituksena oli selvittää älykoti ja IoT-järjestelmissä yleisesti käytetyn MQTT-protokollan tietoturvallisuuden ominaisuuksia, protokollaan kohdistettavia hyökkäyksiä ja hyökkäyksien lievennyskeinoja. Teoriaosuudessa esitellään älykotien ja IoT-järjestelmien arkkitehtuuria, yleisesti tietoturvallisuutta sen testausta ja älykotien tietoturvallisuutta. Tämän jälkeen esitetään tarkemmin MQTT-protokollan ominaisuuksia yleisesti ottaen ja tietoturvanäkökulmasta, sekä protokollaan kohdistuvia hyökkäystapoja. Tutkielman empiirisessä vaiheessa toteutettiin erilaisia hyökkäystyyppejä protokollaa vastaan. Ensimmäisenä toteutettiin tiedonkeruu välittäjästä käyttäen Nmap-työkalua, testitapauksessa käyttäjän todennus ei ollut käytössä ja havaintona todettiin, että tämä ei tietoturvallisuuden näkökulmasta ole hyvä tapa vaan tiedon luottamuksellisuus, eheys ja saatavuus vaarantuvat. Toisena tapauksena välittäjälle asetettiin todennus ja käyttäjätunnus-salasana-pari hankittiin välittäjältä väsytyshyökkäyksellä Metasploit-työkalua käyttäen. Samaan lopputulokseen päästiin myös ilman väsytyshyökkäystä Wireshark-työkalulla välittäjän ja asiakkaan välistä liikennettä salakuuntelemalla. Viimeisenä tapauksena toteutettiin erityyppisiä palvelunestohyökkäyksiä MQTTSA-ohjelmaa käyttäen. Testissä käytetyistä palvelunestohyökkäyksistä hyötykuormaa pikkuhiljaa kasvattava hyökkäys oli tehokkain estämään järjestelmän toiminnan täysin. Lopuksi testiympäristöön lisättiin päästä päähän TLS-salaus ja yritettiin toistaa hyökkäystapaukset. Hyökkäyksiä ei pystytty toteuttamaan, kun salaus oli käytössä. Jos hyökkääjällä olisi kuitenkin mahdollisuus vaikkapa fyysiseltä laitteelta saada salaukseen käytetty varmenne käyttöönsä, hyökkäykset olisivat mahdollisia. Keskeisinä löydöksinä oli, ettei MQTT-protokolla sisällä kovinkaan vahvoja ominaisuuksia hyökkäyksiä vastaan vaan sitä käyttävän järjestelmän tietoturvallisuuden koventamiseksi olisi hyvä käyttää tietoliikenteen salausta.