A Black Box Tool for Robustness Testing of REST Services

REST services are nowadays being used to support many businesses, with most major companies exposing their services via REST interfaces (e.g., Google, Amazon, Instagram, and Slack). In this type of scenarios, heterogeneity is prevalent and software is sometimes exposed to unexpected conditions that...

ver descrição completa

Detalhes bibliográficos
Autor principal: Laranjeiro, Nuno (author)
Outros Autores: Agnelo, João (author), Bernardino, Jorge (author)
Formato: article
Idioma:eng
Publicado em: 2021
Assuntos:
Texto completo:http://hdl.handle.net/10316/100830
País:Portugal
Oai:oai:estudogeral.sib.uc.pt:10316/100830
Descrição
Resumo:REST services are nowadays being used to support many businesses, with most major companies exposing their services via REST interfaces (e.g., Google, Amazon, Instagram, and Slack). In this type of scenarios, heterogeneity is prevalent and software is sometimes exposed to unexpected conditions that may activate residual bugs, leading service operations to fail. Such failures may lead to nancial or reputation losses (e.g., information disclosure). Although techniques and tools for assessing robustness have been thoroughly studied and applied to a large diversity of domains, REST services still lack practical approaches that specialize in robustness evaluation. In this paper, we present a tool (named bBOXRT) for performing robustness tests over REST services, solely based on minimal information expressed in their interface descriptions.We used bBOXRT to evaluate an heterogeneous set of 52 REST services that comprise 1,351 operations and t in distinct categories (e.g., public, private, in-house).We were able to disclose several different types of robustness problems, including issues in services with strong reliability requirements and also a few security vulnerabilities. The results show that REST services are being deployed preserving software defects that harm service integration, and also carrying security vulnerabilities that can be exploited by malicious users.