Tese

Functionality-Based Mobile Application Recommendation System with Security and Privacy Awareness

Atualmente, com o advento dos dispositivos móveis, surgiram uma variedade de aplicativos que são utilizadas nesses dispositivos para executar tarefas do dia a dia. Tais como, pagar contas, assistir filmes e pedir comida. Essa popularidade chamou a atenção de desenvolvedores maliciosos que começaram...

ver descrição completa

Autor principal: Rocha, Thiago de Souza
Outros Autores: http://lattes.cnpq.br/2541078732974933
Grau: Tese
Idioma: eng
Publicado em: Universidade Federal do Amazonas 2020
Assuntos:
Acesso em linha: https://tede.ufam.edu.br/handle/tede/7793
Resumo:
Atualmente, com o advento dos dispositivos móveis, surgiram uma variedade de aplicativos que são utilizadas nesses dispositivos para executar tarefas do dia a dia. Tais como, pagar contas, assistir filmes e pedir comida. Essa popularidade chamou a atenção de desenvolvedores maliciosos que começaram a criar aplicativos mal-intencionados para dispositivos móveis. Alguns desses aplicativos maliciosos alegam que executam uma determinada tarefa benigna apenas para atrair os usuários a instalar o aplicativo e danificar seus dispositivos e/ou executar atividades maliciosas, como enviar mensagens SMS a serviços pagos ou enviar informações confidenciais dos usuários para terceiros. Por esse motivo, os usuários precisam de uma maneira de escolher um aplicativo que seja considerado seguro e atenda suas necessidades. Por exemplo, caso um usuário esteja insatisfeito com o aplicativo utilizado para pedir comida, a lista de sugestões deve ter apenas aplicativos classificados como benignos e que sejam capazes de pedir comida. Atualmente, sistemas de recomendação estão sendo utilizados para escolher aplicativos dentro do ambiente do sistema operacional Android. Entretanto, a maioria das abordagens não avalia segurança e privacidade e quando o fazem consideradam apenas a configuração das permissões dos aplicativos. No entanto, estudos recentes demonstram que essa abordagem não é suficiente. Além disso, algumas abordagens se baseiam no conhecimento do usuário sobre as permissões dos aplicativos e estudos também mostraram que é uma abordagem propensa a erros, pois a maioria dos usuários não entende como o sistema funciona. Nesse contexto, este trabalho apresenta um sistema de recomendação baseado em funcionalidade com ciência de segurança e privacidade para avaliar e sugerir aplicativos. O sistema é formado por uma camada de segurança que utiliza aprendizado de máquina para avaliar os aplicativos e garantir que apenas aplicativos classificados como benignos possam ser sugeridos. Um sistema de pontuação de aplicativos baseado na funcionalidade também é utilizado para garantir que apenas os aplicativos com objetivos semelhantes possam ser sugeridos. Além disso, os usuários podem escolher entre métricas como popularidade, usabilidade, privacidade e atribuir pesos na métrica que considerarem mais importante. Por fim, é feito um mapeamento entre as permissões, chamadas de API e descrições dos apps para criar frases no intuito de que os usuários possam compreender o que o aplicativo que está sendo avaliado pode fazer no dispositivo móvel. O objetivo é fornecer informações úteis e compreensíveis para que os usuários possam verificar se o aplicativo está executando algum comportamento suspeito e/ou solicitando permissões desnecessárias. Um protótipo foi desenvolvido e comparado com os trabalhos da literatura, os experimentos demonstraram que o sistema obteve melhores resultados pois foi capaz de sugerir apenas aplicativos classificados como benignos com objetivos semelhantes. Também foi realizado um experimento comparativo com a Google Play, os resultados demonstram que, em termos de funcionalidade, a lista de sugestões do protótipo possui apenas aplicativos que compartilham objetivos semelhantes e que as categorias do Google Play precisam ser melhor definidas. As principais contribuições são o sistema de recomendação com o advento da camada de segurança, o sistema de pontuação dos aplicativos e o mapeamento entre permissões e chamadas de API, aumentando a confiança e o entendimento do usuário.