MQTT protocol data security with OTP blockchain-based identity and data verification
Citation
Parlakay, B., (2023). MQTT protocol data security with OTP blockchain-based identity and data verification, MEF Üniversitesi, Fen Bilimleri Enstitüsü, Mekatronik Mühendisliği Ana Bilim Dalı. ss. 1-146Abstract
Son yıllarda teknolojinin hızla gelişmesiyle birlikte, Nesnelerin İnterneti (IoT) adını verdiğimiz akıllı cihazlar ve sistemler hayatımızın her alanında kendine yer bulmaktadır. IoT, akıllı telefonlar, tabletler, PC'ler ve üzerinde sensör bulunan neredeyse her şeyi kapsayan geniş bir kavramdır. Bu kapsamda, IoT cihazları arasında verimli ve güvenli iletişim sağlamak amacıyla MQTT protokolü önemli bir role sahiptir. Bu tezde, MQTT protokolünün güvenlik zafiyetlerini tespit etmek ve bu zafiyetlere karşı etkili önlemler geliştirmek hedeflenmektedir. Tez kapsamında, Raspberry Pi ve bilgisayar arasında MQTT server client mimarisi oluşturulmuştur. MQTT Broker ve yayıncı/abone istemcileri için Python programları geliştirilmiş, sistem üzerinde çeşitli güvenlik açıklarını tespiti sağlanırken Shodan API'sinden ve Wireshark'dan yararlanılmıştır. Bu süreçte, paket ve konu düzeyindeki güvenlik sorunları deneysel olarak incelenmiştir. Akıllı sözleşmeler, dijital imzalar, OTP kullanarak 1883 numaralı portunda bir yapı geliştirilmiştir. Bu, yayıncı ve abone için kimlik doğrulama ve şifreleme sağlayarak yalnızca yetkili kullanıcıların MQTT brokerine bağlanmasına olanak tanır. Kimlik doğrulama, mesaj reddetme, veri bütünlüğü ve seçici gizlilik gibi ek güvenlik önlemleri sunulmaktadır. MQTT brokerına erişim, veri yayınlama veya okuma isteyen bir kullanıcının sadece gerekli yetkiye sahip olması yetmez, aynı zamanda benzersiz OTP (Tek Seferlik Şifre) bilgilerine dayalı olarak dijital imzalı bir mesajı onaylaması da gereklidir. Bu imza Elips Kavisli Dijital İmza Algoritması'na dayanır. Erişim izinlerine sahip kullanıcılar, dijital imzayı genel anahtar ve OTP bilgilerini kullanarak doğrulayabilirler. Dijital imzalar, asimetrik şifreleme tekniklerini kullanarak, iletilen her bir MQTT mesajının bütünlüğünü ve kökenini doğrular. Bu, iletilen verinin değiştirilmediğini ve belirli bir cihaz veya kullanıcıdan geldiğini garantiler. SSL/TLS, bağlantı bazında çalışır ve tüm bağlantıyı şifreler. Geniş ölçekteki sistemlerde, SSL/TLS sertifikalarının yönetimi ve sürekli şifreleme/şifre çözme işlemleri, özellikle düşük kapasiteli IoT cihazlarında ek işlem yükü oluşturabilir. Akıllı sözleşmeler ve dijital imzaların kullanımı, geniş ölçekteki çok sayıda yayınlayıcı ve abone içeren sistemlerde, SSL/TLS'ye göre daha ölçeklenebilir bir çözüm sunabilir. Tez çalışması sonucunda, geliştirilen güvenlik önlemleri sayesinde Broker'ın saldırılara karşı bağışık olduğu tespit edilmiştir. Bu tez, MQTT protokolündeki güvenlik tutarsızlıklarının ve alınabilecek önlemlerin özlü bir incelemesini sunarak, alanındaki çalışmalara katkı sağlamayı hedeflemektedir. Bu sayede, IoT sistemlerinde veri iletişiminin daha güvenli ve etkin bir şekilde gerçekleştirilmesine yardımcı olunacaktır. The widespread Internet of Thing presence in almost every aspect of our lives has been made possible by the fast development of technology these past few years. The internet of things is in a wide area. For example cell phones, tablets, computers and all other devices with sensors. Among the technologies used to facilitate efficient communication, between these IoT devices the MQTT protocol stands out. Exposure of security vulnerabilities existing in MQTT, and the development of effective countermeasures is a key objective of this thesis. The MQTT server's client architecture was built between the Raspberry Pi and the computer. To be used by MQTT Broker and publisher subscribers, Python programs have been developed. The use of the wireshark API has been recommended to check for system security vulnerabilities. During that process, the safety issues at packet and module level have been examined in an experimental manner. The MQTT protocol has been found to be vulnerable to attacks. Although encryption can be performed on port 8388 with Secure Sockets (SSL) and Transport Layer Security (TLS) protocols to address the security vulnerabilities found in the standard MQTT configuration, this is not preferred and is not scalable. Instead, a structure has been developed on port 1883 again, using smart contracts, digital signatures to only allow authorized users to connect to the MQTT broker, providing authentication and encryption for the publisher and subscriber. Extra security measures are offered with authentication, message denial, data integrity, and selective privacy. In the area of Smart Contracts major progress has been made. A smart contract, ensuring transparency and traceability in every transaction offering benefits, plays an important role. Smart contracts consist of an automated set of instructions which, when certain conditions have been fulfilled, shall be executed automaticly. Users' permissions as well as Digital Signatures could be included in these conditions. Better scalability is also provided by this system. Using A system has been developed using Smart Contract technology to perform user authentication and permission management for users connected to an MQTT broker. Authorization processes such as adding, removing, granting, or denying user permissions can be executed through a smart contract. Similarly, a user seeking to access and publish or read data on the MQTT broker must not only possess the necessary authorization but also approve a digitally signed message based on their unique OTP (One-Time Password) information. The Elliptic Curve digital signature algorithm is used for this signature. Users with access permissions can verify the digital signature using their public key and OTP information. Once the smart contract confirms the user's permission to publish data, they can proceed with their publication or perform encrypted data readings This design is intended to stop entry and manipulation of data, within the system. In contrast with the data security offered by SSL or TLS, this new and effective method provides additional protection against attacks on data centre such as potential Distributed Denial of Service attack from Sybil. Upon completion of this thesis, it was determined that the Broker gained immunity against attacks due to the implemented security measures.Consequently the thesis offers an examination of MQTT in relation, to attacks and suggests an enhanced security mechanism to counteract these attacks.
URI
https://tez.yok.gov.tr/UlusalTezMerkezi/TezGoster?key=S2eMu1TIwY_v4mYv58xAr1u-ehBtLK3CAYJu8ZpDz1VRV4hEc9ZxFsQklRVRGz2Vhttps://hdl.handle.net/20.500.11779/2239