According to a recent survey with more than 4000 software developers, less than half of developers can spot security holes. As a result, software products present a low-security quality expressed by vulnerabilities that can be exploited by cyber-criminals. This lack of quality and security is particularly dangerous if the software which contains the vulnerabilities is deployed in critical infrastructures. Serious games, and in particular, Capture-the-Flag(CTF) events, have shown promising results in improving secure coding awareness of software developers in the industry. The challenges in the CTF event, to be useful, must be adequately designed to address the target group. This paper presents novel contributions by investigating which challenge types are adequate to improve software developers' ability to write secure code in an industrial context. We propose 1) six challenge types usable in the industry context, and 2) a structure for the CTF challenges. Our investigation also presents results on 3) how to include hints and penalties into the cyber-security challenges. We evaluated our work through a survey with security experts. While our results show that "traditional" challenge types seem to be adequate, they also reveal a new class of challenges based on code entry and interaction with an automated coach.
翻译:根据最近一项涉及4 000多名软件开发商的调查,不到一半的开发商能够发现安全漏洞。结果,软件产品呈现出一种低安全质量,其表现形式为网络罪犯可以利用的弱点。如果包含薄弱环节的软件被安装在关键基础设施中,这种质量和安全性就特别危险。严重的游戏,特别是捕捉-Flag(CTF)事件,在提高该行业软件开发商安全编码意识方面显示了可喜的成果。CTF活动的挑战,如果有用的话,必须适当地设计来应对目标群体。本文通过调查哪些类型的挑战足以提高软件开发商在工业环境中写写安全代码的能力,提出了新的贡献。我们建议:(1) 工业环境中可用六类挑战,以及(2) CTF挑战的结构。我们的调查还介绍了3个方面的结果:如何将提示和惩罚纳入网络安全挑战中。我们通过与安全专家的调查评估了我们的工作。我们的成果表明,“传统”挑战类型似乎足以应对目标群体。