Detectando ataques Broken Object Level Authorization em APIs REST usando dependência Produtor-Consumidor

Detalhes bibliográficos
Ano de defesa: 2022
Autor(a) principal: Loebens, Marcelo de Castro
Outros Autores: http://lattes.cnpq.br/8566448745754906
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal do Amazonas
Instituto de Computação
Brasil
UFAM
Programa de Pós-graduação em Informática
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: https://tede.ufam.edu.br/handle/tede/8741
Resumo: As Web APIs (Application Programming Interfaces) vêm se tornando ubíquas em aplicações que demandam algum tipo de comunicação entre cliente e servidor, sendo desenvolvidas majoritariamente utilizando o estilo de arquitetura REST (Representational State Transfer) e largamente empregadas no desenvolvimento de aplicações Web e móveis. Esse aumento de popularidade, no entanto, trouxe novos desafios de segurança, como a difusão de vulnerabilidades derivadas principalmente da ausência de controles de estado das aplicações clientes, reflexo do requisito de statelessness do design REST. Dentre essas vulnerabilidades destaca-se a Broken Object Level Authorization (ou BOLA), um tipo específico de quebra de controle de acesso. Ela foi elencada na primeira posição do OWASP API Security Top 10, sendo considerada a vulnerabilidade de maior prevalência em aplicações do mundo real, uma vez que pode levar ao acesso não autorizado a dados sensíveis. Este trabalho visa fornecer uma abordagem de detecção de tentativas de exploração dessa vulnerabilidade em tempo de execução, a partir da identificação de relacionamentos produtor-consumidor entre os endpoints, extraídos a partir de especificações da API no padrão OpenAPI (OAS). Essa solução será avaliada utilizando-se APIs de aplicações vulneráveis a BOLA, visando validar a sua capacidade de detecção de ataques.