Towards Vulnerability Injection using Artificial Intelligence ; Rumo à injeção de vulnerabilidades em Python com Inteligência Artificial

Saved in:
Bibliographic Details
Title: Towards Vulnerability Injection using Artificial Intelligence ; Rumo à injeção de vulnerabilidades em Python com Inteligência Artificial
Authors: Bogaerts, Frédéric Christophe Gabriel
Contributors: Fonseca, José, Ivaki, Naghmeh Ramezani
Publication Year: 2022
Collection: Universidade de Coimbra: Estudo Geral
Subject Terms: Injeção de Vulnerabilidades, Redes Neurais Recorrentes, Inteligência Artificial, Deep Learning, Análise Estática de Código Python, Vulnerability Injection, Recurrent Neural Networks, Artificial Intelligence, Static Python Code Analysis
Description: Dissertação de Mestrado em Segurança Informática apresentada à Faculdade de Ciências e Tecnologia ; É difícil desenvolver software sem vulnerabilidades mesmo quando são seguidas as melhores práticas de programação. A prevenção da exfiltração de informação é feita com scanners de segurança e ferramentas de detecção de vulnerabilidades.Isto levanta as questões: quão eficazes são estas ferramentas? qual o impacto de uma vulnerabilidade não detectada?Python é uma das linguagens de programação mais usadas no mundo. Logo visamos desenvolver uma ferramenta capaz de injetar vulnerabilidades e de criarcódigo vulnerável para: i) avaliar e comparar a performance e eficácia dos scanners de segurança e de vulnerabilidades, ii) avaliar o impacto de cada vulnerabilidade.Após analisar um vasto leque de vulnerabilidades Python (tanto em códigos vulneráveis como corrigidos) implementámos um protótipo que identifica e ataca pontos de injeção.Propomos um método de análise estática que obtém resultados de modelos de IA (com redes neuronais recorrentes baseadas em Machine Learning).A injeção de vulnerabilidades pode ser validada através de um ataque bem sucedido. A nossa técnica diminui as deficiências da procura comum de vulnerabilidades com base em texto e expressões regulares (Regex).Ao implementar a técnica proposta num protótipo multi-plataforma denominadoVAITP (Vulnerability Attack and Injection Tools in Python) possibilitamos a identificação de vulnerabilidades e pontos de injeção.O protótipo consegue atacar código vulnerável e cria ainda um relatório em PDF com informação tal como: i) pontos de injeção, ii) vulnerabilidades e iii) ataques e payloads bem sucedidos.Para servir de base ao nosso estudo implementamos Regex no VAITP. Cerca de centena e meia de ficheiros Python foram utilizados como teste, divididos em injetáveis, vulneráveis e não-injetáveis. Ambas as técnicas (com Regex e modelos de IA) foram bem sucedidas na injeção de vulnerabilidades em ficheiros injetáveis. Todavia, a utilização de IA, demonstrou ser capaz de ...
Document Type: master thesis
Language: English
Relation: https://hdl.handle.net/10316/103014; 203077865
Availability: https://hdl.handle.net/10316/103014
Rights: info:eu-repo/semantics/openAccess
Accession Number: edsbas.E431B00
Database: BASE
Be the first to leave a comment!
You must be logged in first