Titulo Estágio
Mobile Money Security – Pattern Detection
Local do Estágio
O escritório da WIT em Taveiro ou outro a definir com o aluno. Neste momento estamos remote.
Enquadramento
Os serviços de Mobile Money que permitem o pagamento através de telemóvel e transferência de pequenas quantias de dinheiro entre pessoas são cada vez mais comuns. Nos países em desenvolvimento, que não têm uma infraestrutura de pagamento através de cartões bancários, os sistemas de Mobile Money são o mecanismo de pagamento mais utilizado no dia-a-dia.
A WIT fornece sistemas e aplicações para operadores de telecomunicações a nível mundial, onde se incluem aplicações de Mobile Money em países onde este sistema de pagamentos é mais usado para transacções comerciais.
Através da experiência na operação destes sistemas, estão frequentemente a ser reportados ataques, tanto de um ponto de vista técnico, com ataques de engenharia social. A implementação de mecanismos de detecção de padrões de ataques ao sistema é um elemento muito relevante para a gestão de um sistema seguro e que transmita confiança.
Sobre a Empresa:
A WIT tem 20 anos de experiência na área das telecomunicações e é uma empresa francamente exportadora. Prova disso é o facto do software que desenvolve já ter sido exportado para 46 países. Todos estes projectos foram desenvolvidos com uma metodologia muito forte de software, sempre com requisitos de alta-disponibilidade, segurança, performance, escalabilidade e especial cuidado com a user-experience. A empresa conta com os seguintes clientes: Grupo Vodafone, Deutsche Telekom, NTT DoCoMo, KDDI, Softbank, AT&T, Verizon, Safaricom, Vodacom, Unitel, entre outros. Na WIT somos Groundbreakers e procuramos, todos os dias, desafiar o status quo fazendo mais e diferente, sempre com o objectivo de sermos cada vez melhores. Descobre aqui se também tu podes ser um groundbreaker: [url=https://www.youtube.com/watch?v=Mt9sCqvJx9U]https://www.youtube.com/watch?v=Mt9sCqvJx9U[/url]
Objetivo
O objectivo do estágio será a utilização da informação que tem sido recolhida e que continua a ser guardada durante a operação de sistema de mobile Money, que é desenvolvido pela WIT e operado em vários países, de forma a implementar mecanismos de detecção de padrões de ataques.
Os dados que são registados incluem informação sobre acesso geral à aplicação, inscrição no serviço e alteração do dispositivo usado, bem como dados sobre o utilizador e informação sobre as transacções individuais.
No contexto do estágio, estes dados serão relacionados de forma a que sejam definidas regras concretas para detecção de ataques, tendo em consideração informação adicional que possa ser acrescentada ou que já exista e seja considerada relevante, como por exemplo a localização, as horas típicas de utilização, a periodicidade das transações, ou informação sobre o dispositivo usado para fazer a transaçã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, que deverá conter processos devidamente justificados.
De forma a ganhar contexto total, o estagiário será enquadrado no departamento de segurança da WIT e acompanhado pela equipa de segurança. Para que possa ganhar contextualização, durante o processo de estudo do estado-da-arte, deverá também participar no processo de auditoria e elaborar sobre aplicabilidade de certas normas, em especial sobre as seguintes áreas:
1. GDPR: Nos mercados onde o sistema actualmente opera apenas agora a adoptar normas de protecção de dados, pelo que existe a oportunidade de avaliar os processos actuais, no que diz ao processamento de dados pessoais.
2. PCI-DSS: Os sistemas de Mobile Money, por definição, não utilizam cartões de pagamento para processamento como método principal, mas a maioria dos serviços já oferecerem serviços de “Cartões Virtuais” para compras online. No entanto, a norma PCI-DSS oferece um conjunto de recomendações bastante relevante para a implementação de um sistema seguro e robusto que é aplicável aos sistemas de mobile Money.
3. Revised Directive on Payment Services (PSD2): Como parte da investigação, deverá ser feita uma análise sobre a aplicabilidade das recomendações de PSD2, em específico sobre possíveis alterações ao sistema para migrar de “2 factor authentication” para “multi-factor authentication” de acordo com as recomendações na directiva para Strong customer authentication (SCA), sem que existem
4. OWASP (Open Web Application Security Project): Contexto geral sobre segurança de software com forte incidência nos Mobile Top Ten issues (OWASP Mobile Top Ten). Deverá conhecer os melhores protocolos e algoritmos de forma a assegurar a integridade, confidencialidade e disponibilidade dos dados em trânsito, e localmente.
No final do estágio, deverá existir um protótipo funcional com implementação de um conjunto de padrões, 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:
• Estudo sobre o estado da arte.
• Estudo sobre os ataques mais comuns em aplicações de mobile banking (incluindo ataques tendo por base engenharia social).
• Levantamento dos dados actuais e aplicabilidade desses dados para detecção de padrões.
• Relacionamento com casos específicos de ataques.
• Levantamento de potenciais ferramentas de “Complex event processing” off-the-shelf que possam ser utilizadas.
• Participação em processos de security assessment.
• Estudo sobre os pontos (GDPR, PCI-DSS, PSD2)
• Elaboração do plano de desenvolvimento.
• Prototipagem de um sistema com regras simples, que possa ser colocado na intersecção de uma transação.
• Preparação dos protótipos para demonstrações internas.
• Documentação intermédia do estágio.
Plano de Trabalhos - Semestre 2
Para o 2º semestre estão planeadas as seguintes tarefas:
• Desenvolvimento de alterações à app móvel para colecção de dados adicionais que sejam considerados relevantes.
• Implementação de um conjunto de casos especificados durante o 1º semestre, a ser detectados em tempo-real ou em background para alertas ou restrição de transacções.
• Implementação de um dashboard web simples com listagem das condições e dos casos detectados.
• Possibilidade de configurar percentagens de confiança de em cada regra.
• Avaliação do impacto da detecção de padrões na performance do sistema e qual o potencial atraso que adiciona à transacção.
• Preparação do protótipo para demonstrações.
• Testes funcionais.
• Testes de usabilidade.
• Avaliação de requisitos não funcionais.
• Documentação final de estágio.
Condições
O local de trabalho será no escritório da WIT Software em Taveiro ou noutro local definido entre o aluno e a empresa uma vez que a WIT tem centros de desenvolvimento no Porto, Aveiro, Coimbra, Leiria e Lisboa. Neste momento encontramo-nos a trabalhar remotamente.
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 inclui tópicos como: iOS Programming, Android Programming, Arquitecturas de Software, Software Quality, Metodologias de Desenvolvimento de Software, Application Security).
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 técnicas de security assessment, desenvolvimento de aplicações java, e processos de gestão de dados. Terá também conhecimento sobre mecanismos para gestão e transferências bancárias, no caso concreto de aplicações de “Mobile Money”.
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
- Toda a documentação de projecto será em Inglês.
- Será usado SCRUM, como metodologia de desenvolvimento.
- 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 projecto. 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 📩