Detecção de Vulnerabilidades em Hosts USB utilizando Técnicas de Fuzzing Externo

Aluno: Gabriel Geraldino de Souza (gabrielgeraldino(at)usp.br)
Orientador: Prof. Dr. Marcos Antonio Simplicio Junior
Link para a monografia

Resumo

O protocolo Universal Serial Bus (USB) é uma das interfaces de comunicação mais onipresentes em sistemas computacionais, conectando desde periféricos simples a componentes de sistemas críticos, como caixas eletrônicos e dispositivos industriais. Essa ampla adoção, contudo, o estabelece como uma significativa superfície de ataque. Este trabalho tem como objetivo principal avaliar a segurança de sistemas que utilizam o protocolo USB por meio de fuzzing, uma técnica de teste automatizada que consiste no envio de dados massivos, inválidos ou inesperados para a descoberta de vulnerabilidades. Este trabalho envolve uma revisão da literatura sobre o protocolo USB e falhas conhecidas, seguida pelo desenvolvimento de uma ferramenta de software capaz de interpretar, manipular e reproduzir capturas de tráfego USB (.pcap) em baixo nível, utilizando o módulo raw-gadget do kernel Linux. Esta ferramenta foi integrada a fuzzers como syzkaller e radamsa, para automatizar a geração de casos de teste e identificar falhas de segurança, como negação de serviço (DoS), corrupção de memória e outras anomalias no tratamento de pacotes. Os experimentos comparam a eficácia dos diferentes métodos de mutação em relação ao impacto prático das vulnerabilidades encontradas.
Palavras-chave: USB. Fuzzing. Análise de Vulnerabilidades. Teste de Software.

Planejamento

/ Março Abril Maio Junho Julho Agosto Setembro Outubro Novembro Dezembro
Estudo do protocolo USB e técnicas de fuzzing
Levantamento de bugs e vulnerabilidades passadas
Definição da estratégia de fuzzing
Aplicação da estratégia e fine-tuning em sistemas reais
Avaliação de resultados
Escrita da monografia
Atualização do site