Atribuidos 2022 2023

DEI - FCTUC
Gerado a 2024-05-19 15:41:30 (Europe/Lisbon).
Voltar

Titulo Estágio

Autenticação Multi-Factor Melhorada para Aplicações Móveis

Áreas de especialidade

Engenharia de Software

Engenharia de Software

Local do Estágio

Remote / Presencial (a empresa tem escritórios em Coimbra, Aveiro, Porto, Leiria, Lisboa, Belmonte)

Enquadramento

As aplicações móveis fazem parte do nosso dia-a-dia, pois nelas colocamos os nossos dados privados e com elas fazemos as operações financeiras sem termos de ir a um banco.Por forma a proteger os nossos dados, foram sendo introduzidos vários fatores de autenticação, combinando algo que o utilizador sabe, o que utilizador é, o que o utilizador tem, e o que o utilizador faz. Verifica-se que as aplicações (na sua maioria de mobile banking) utilizam como segundo factor de autenticação o envio de um token por SMS – OTP (one time password). No entanto são conhecidas várias vulnerabilidades a este tipo de autenticação, relacionadas com o protocolo SS7 identificados pela GSM Association (GSMA)1 e protocolo SIM SWAP2, o que fragiliza os dois dos três vetores da segurança (confidencialidade, e integridade). De forma a proteger o utilizador final, pretende-se com o presente estágio implementar um protótipo de um sistema de autenticação multi-factor que seja enderece as vulnerabilidades conhecidas e que diminua consideravelmente o sucesso de um ataque e engenharia social.  Sobre a Empresa:A WIT desenvolve software para Operadores de Telecomunicações de vários continentes, tais como o Grupo Vodafone (Europa), Deutsche Telekom (Alemanha), Reliance Jio (Índia), KDDI, Softbank, NTT Docomo (Japão), Singtel (Singapura), Telstra (Australia), Unitel (Angola), Eir (Irlanda), Telecom Italia (Itália), Orange (França), Telefónica (Espanha), TeliaSonera (Suécia), Belgacom (Bélgica), Post Luxembourg (Luxemburgo), Bell (Canadá), Century Link (EUA) e Everything Everywhere (RU). O software desenvolvido pela WIT está presente em 42 países. A WIT tem escritórios em Portugal e Reino Unido e os seus centros de desenvolvimentos estão localizados em Coimbra, Porto, Leiria e Aveiro. Referencias: 1. SS7 Vulnerabilities and attack exposure report - Disponível em:  https://www.gsma.com/membership/wp-content/uploads/2018/07/SS7_Vulnerability_2017_A4.ENG_.0003.03.pdf 2. Countering SIM-Swapping. Disponível em:https://www.enisa.europa.eu/publications/countering-sim-swapping

Objetivo

Espera-se que o estagiário estude e entenda os conceitos de segurança, os principais standards de segurança (OWASP, NIST, SANS) e estude os diferentes tipos de autenticação disponibilizados pelos dispositivos móveis - que podem ser obtidos através dos diferentes sensores dos dispositivos móveis; - sons ambientes; - através de biométricas de voz. - através de uma foto/vídeo capturado em tempo-real. Com base nas principais e mais robustas formas de autenticação, deverá propor e desenvolver um protótipo de um serviço de autenticação multi factor que garanta a autenticação de forma segura e compatível com a autenticação nos dispositivos móveis (Android e iOS) o mais transparente para o utilizador. Este trabalho deverá ser possível de atingir através do desenvolvimento dos seguintes componentes:1-     Protótipo para a Aplicação cliente (Android/iOS) que implemente a autenticação multi factor;2-     Protótipo de um módulo de acesso a third party APIs;3-     Protótipo de uma API, responsável por validar e confirmar o sucesso da autenticação; Espera-se que o aluno tenha a autonomia e capacidade crítica necessárias para recolher, analisar e estruturar toda a informação acerca de soluções existentes no mercado. Esta informação deverá ser depois aplicada no desenvolvimento do protótipo. Segue-se a análise de requisitos do projeto, a criação de um plano de desenvolvimento e a definição de um “project backlog” com as funcionalidades desejadas. O desenvolvimento do software deverá ser feito de forma iterativa usando um processo ágil, baseado em SCRUM. No final do estágio, deverá existir um protótipo funcional, que seja facilmente demonstrável e que mostre bem os conceitos explorados durante o estágio.

Plano de Trabalhos - Semestre 1

Para o 1º semestre estão planeadas as seguintes tarefas:Levantamento do estado da arte;Estudo das melhores práticas de segurança para dispositivos móveis(OWASP, SANS, NIST, etc.);Estudo dos sistemas e bibliotecas de implementação de autenticação em multi factor para aplicações móveis;Estudo das vulnerabilidades do protocolo SS7 e outras vulnerabilidades associadas à quebra de autenticação em dispositivos móveis (p. exemplo SIM SWAP);Análise de requisitos;Elaboração do modelo de autenticação, e correspondente arquitetura;Elaboração do plano de desenvolvimento;Prototipagem da API responsável por validação da autenticação;Prototipagem do módulo da aplicação cliente para dispositivos móveis;Documentação intermédia do estágio. 

Plano de Trabalhos - Semestre 2

Para o 2º semestre estão planeadas as seguintes tarefas:Prototipagem do módulo de acesso a third-party APIs (para reconhecimento facial, de voz, etc.);Integração do módulo cliente numa aplicação Android e iOS;Criação de testes para verificar o sucesso da autenticação em multi factor;Preparação dos protótipos para demonstrações internas;Elaboração de uma auditoria de segurança (penetration test) ao protótipo implementado;Preparação do protótipo para demonstrações;Testes funcionais;Testes de usabilidade;Documentação final de estágio. 

Condições

O aluno terá ao seu dispor os equipamentos necessários para desempenhar as suas tarefas. O estágio é remunerado. Se o desempenho do aluno ao longo do mês for positivo, terá direito a receber uma bolsa mensal. Além da bolsa, o aluno terá acesso às formações da WIT Academy (que incluir tópicos como: iOS Programming, Android Programming, Arquitecturas de Software, Software Quality, Metodologias de Desenvolvimento de Software). O aluno será acompanhado não só pelo orientador como por um tutor técnico que lhe dará todo o apoio necessário. No final do estágio, o aluno terá conhecimento detalhado sobre segurança em dispositivos móveis, conhecendo as melhores práticas do mercado. Terá também conhecimento dos ataques comuns contra mecanismos de autenticação em dispositivos móveis. Ficará ainda com conhecimento sobre os mais comuns sensores nos dispositivos móveis e como eles podem ser utilizados para traçar um perfil do utilizador. No final do estágio, será feita uma avaliação do estagiário e dos conhecimentos adquiridos. Se o resultado for positivo o estagiário será convidado para fazer parte da equipa de desenvolvimento.

Observações

-A documentação do projecto deverá ser preferencialmente em Inglês.-Serão usadas metodologias de desenvolvimento ágeis.-Existe um Tutor e um Orientador. O Orientador define os requisitos do estágio, define as prioridades do Backlog e acompanha os resultados parciais do projeto. O Tutor garante o cumprimento das tarefas, promove as meetings e acompanha o aluno com mais regularidade 

Orientador

Antonio Mendes
antonio.mendes@wit-software.com 📩