Título
A serious game for teaching Java cybersecurity in the industry with an intelligent coach
Autor
Casqueiro, Luís Afonso Maia Rosa
Resumo
pt
A cibersegurança tem vindo a ganhar mais importância nos últimos anos. Hoje em dia, continuamos
a ver um aumento no número de vulnerabilidades conhecidas e ataques cibernéticos
bem-sucedidos. Vários estudos mostram que uma das causas desses problemas é a falta de
consciência dos programadores de software em termos de segurança. Ao não estarem cientes de
como escrever código seguro, os programadores podem adicionar vulnerabilidades ao software
sem saber. Este estudo foca-se em aumentar a conciencia dos programadores de software de
Java, no que toca à segurança cibernética, através de uma abordagem baseada em jogos sérios.
O nosso artefacto Java Cybersecurity Challenges, consiste em exercícios de programação que
pretendem providenciar aos programadores de software com uma experiência prática sobre vulnerabilidades relacionadas à segurança da linguagem de programação Java. A solução desenvolvida
inclui um treinador inteligente que visa ajudar os jogadores a compreender as vulnerabilidades
e a resolver os exercícios. Esta pesquisa foi desenvolvida com base na metodologia
Action Design Research. Esta metodologia permitiu-nos chegar a uma solução útil, para o
problema encontrado, aplicando uma abordagem de desenvolvimento iterativa. Os nossos resultados
mostram que o artefacto desenvolvido é um bom método para responder ao problema
definido e foi aceite e incorporado num programa de treino da indústria. Este trabalho contribui
para investigadores e praticantes através de uma descrição detalhada sobre a implementação de
um processo de análise automática de código, bem como de feedback, para avaliar o nível de
segurança dos Java Cybersecurity Challenges.
en
Cybersecurity as been gaining more and more attention over the past years. Nowadays
we continue to see a rise in the number of known vulnerabilities and successful cyber-attacks.
Several studies show that one of the causes of these problems is the lack of awareness of software
developers. If software developers are not aware of how to write secure code they can
unknowingly add vulnerabilities to software. This research focuses on raising Java developers
cybersecurity awareness by employing a serious game type of approach. Our artifact, the
Java Cybersecurity Challenges, consist of programming exercises that intend to give software
developers hands-on experience with security related vulnerabilities in the Java programming
language. Our designed solution includes an intelligent coach that aims at helping players understand
the vulnerabilities and solve the challenges. The present research was conducted using
the Action Design Research methodology. This methodology allowed us to reach a useful solution,
to the encountered problem, by applying an iterative development approach. Our results
show that the developed final artifact is a good method to answer the defined problem and
has been accepted and incorporated in an industry training program. This work contributes to
researchers and practitioners through a detailed description on the implementation of an automatic
code analysis and feedback process to evaluate the security level of the Java Cybersecurity
Challenges.