Inácio, Pedro Ricardo MoraisSequeiros, João Bernardo Ferreira2024-09-202024-09-202024-09-04http://hdl.handle.net/10400.6/14515The proliferation of Internet of Things (IoT) devices has been expanding several domains, offering unprecedented connectivity and convenience. However, this surge in interconnected devices has brought forth significant security challenges, as constrained budgets and development time leave security in a secondary role, or even non-existent. This is compounded upon by small design and development teams, where security expertise is reduced and lacking, creating a landscape of IoT systems that are unsecured and ripe for attack by malicious actors. The data gathered by these devices, their general lack of security, and the possibility of serving ans entry points to otherwise more secure systems, makes them increasingly tempting targets for exploration and exploitation. This thesis attempts to bridge the gap of aiding in the secure IoT system development, by approaching the issue of security in IoT from a standpoint of low knowledge and/or low expertise in IoT security. The first step towards the main goal is the extensive survey of existing IoT architectures and modeling tools, to aid in identifying the main challenges in secure IoT development and what can be improved or built upon. The second phase advances upon what was surveyed, by proposing an IoT system model that encompasses a large set of IoT ecosystems, and that embeds security in its essence, by identifying, for each system component, what are its critical security requirements, and what are the most attractive targets for an attacker on the given component. This model is complemented by the creation of an attack taxonomy, that attempts to take the most common attacks on IoT, and identifying where in the system those attacks may occur. To further aid the development process and provide a practical substrate to the Doctor of Philosophy (degree) (Ph.D.) work, an attack modeling tool named Attack Trees for IoT (ATIoT) is presented as a means to identify, starting from a system description given through a direct answer questionnaire, the attacks the system may be more susceptible to, providing the user with a set of attack trees, together with detailed node descriptions, of the identified attacks for the described system. Joining ATIoT, other existing tools are mapped to the proposed model, to further aid in identifying where security requirements, best practices, guidelines, security mechanisms and potential threats in an IoT system should be applied or can be found, further enhancing the usefulness of such tools. Motivated by the profound transformation that Artificial Intelligence (AI) is causing in the technological world, and the always fast advancing security area, a series of experiments of applying different AI mechanisms to the developed tools are also detailed herein. They specifically concern the application of classification models to the elicitation of security requirements, and the use of Large Language Models (LLMs) for identifying potential attacks from a textual system description. The thesis presents the results of these experiments, which show the promise of applying such methodologies to the process of security engineering. Main conclusions include achieving the goal of creating a panoply of mechanisms and tools that aid the development of secure IoT systems, that were designed towards being used by developers with low or no security background and expertise. It was also concluded that AI methods can aid in the maintaining of such tools and mechanisms, ensuring their validity in a longer time period, a challenge always present in fast-paced, always evolving areas.A proliferação de dispositivos para a Internet das Coisas (IoT) tem vindo a expandir vários domínios, oferecendo conectividade e conveniência sem precedentes. No entanto, este aumento de dispositivos interligados traz consigo significativos desafios de segurança, uma vez que orçamentos limitados e tempos de desenvolvimento insuficientes deixam a segurança num papel secundário, ou mesmo inexistente. Isto é agravado por equipas de desenho e desenvolvimento reduzidas, onde a experiência em segurança é limitada e escassa, criando um cenário de sistemas IoT não seguros e propícios a ataques por agentes maliciosos. Os dados recolhidos por estes dispositivos, a sua geral falta de segurança, e a possibilidade de servirem como pontos de entrada para sistemas geralmente mais seguros, torna-os alvos cada vez mais tentadores para ataques e exploração. Esta tese procura colmatar a lacuna de auxílio no desenvolvimento seguro de sistemas IoT, abordando a questão da segurança em IoT a partir de um ponto de vista de baixo conhecimento e/ou baixa experiência em segurança. O primeiro passo rumo ao objetivo principal é o extenso levantamento das arquiteturas e ferramentas de modelação para IoT existentes, para ajudar a identificar os principais desafios no desenvolvimento seguro de sistemas IoT, e o que pode ser melhorado ou desenvolvido. A segunda fase avança sobre o que foi levantado, propondo umm modelo de sistema para a IoT que engloba um conjunto de ecossistemas da IoT, e que incorpora segurança na sua essência, identificando, para cada componente do sistema, quais são os seus requisitos de segurança, e quais são os alvos mais atrativos para um atacante num dado componente. Este modelo é complementado pela criação de uma taxonomia de ataques, que tenta identificar os ataques mais comuns na IoT e onde no sistema esses ataques têm maior probabilidade de ocorrerem. Para auxiliar ainda mais o processo de desenvolvimento, e fornecer um substrato prático ao trabalho de doutoramento, é apresentada uma ferramenta de modelação de ataques, denominada ATIoT, como um meio de identificar, a partir de uma descrição do sistema, fornecida através de um questionário de resposta direta, os ataques aos quais o sistema pode ser mais suscetível, fornecendo assim ao utilizador um conjunto de árvores de ataque, juntamente com descrições detalhadas dos vários nós, dos ataques identificados para o sistema descrito. Juntamente com a ATIoT, outras ferramentas existentes são mapeadas para o modelo proposto, para auxiliar ainda mais na identificação de onde requisitos de segurança, melhores práticas, diretrizes, mecanismos de segurança e ameaças potenciais num sistema da IoT devem ser aplicados ou podem ser encontrados, aumentando ainda mais a utilidade dessas ferramentas. Motivadas pela profunda transformação que a Inteligência Artificial (IA) está a causar no mundo tecnológico, e pela constante evolução das áreas de segurança e da IoT, uma série de experiências de aplicação de diferentes mecanismos de IA às ferramentas desenvolvidas também são detalhadas neste documento. Especificamente, estas experiências incidem sobre a aplicação de modelos de classificação na elicitação de requisitos de segurança, e sobre uso de grandes modelos de linguagem para identificar potenciais ataques a partir de uma descrição textual do sistema. A tese apresenta os resultados destas experiências, que demonstram validade na aplicação destas metodologias no processo de engenharia de segurança. As principais conclusões incluem o alcançar do objetivo de criar vários mecanismos e ferramentas que auxiliem no desenvolvimento de sistemas da IoT seguros, concebidos para serem utilizados por desenvolvedores com baixa ou nenhuma experiência em segurança. Também foi concluído que os métodos de IA podem auxiliar na manutenção dessas ferramentas e mecanismos, garantindo a sua validade num período de tempo mais longo, um desafio sempre presente em áreas em constante evolução e rápido desenvolvimento.engSegurançaInternet-das-CoisasSegurança-por-ConstruçãoModelação-de-SistemasModelação-de- AtaquesInteligência-ArtificialArtificial-IntelligenceCybersecurityTowards a Framework for System and Attack Modelling and Mapping of Requirements and Technology for the Internet of Thingsdoctoral thesis101568487