通过游戏化进行有效的安全编码教学

游戏化的图像结果

如今,教授技术的有效方法是通过游戏化或有趣的文档。 我去过Google和Amazon的几次研讨会,他们都使用了非常规的样式进行教学,并让社区尝试了他们的云产品。

Google在Google Cloud Summit上举办了一个名为Cloud Hero(https://www.gc-launch.com/cloud-hero)的活动,社区可以通过游戏化亲身体验其Google Cloud Platform产品。 要求参与者穿披风(像英雄一样!),并要求他们进入游戏室,并提供台式电脑。 每个人都将按时开始,并在完成任务和速度时获得评分。 参与者被要求为每个GCP产品做某些事情以推进比赛。 分数实时显示在大屏幕上,您可以看到主要的得分手。 这很有趣,具有挑战性,并且确实学到了很多东西。

另一方面,亚马逊主办了一个AWS研讨会(https://aws.amazon.com/getting-started/projects/build-modern-app-fargate-lambda-dynamodb-python/)。 这是一个较小的事件,参与者只需要按照每个简短而甜美的AWS产品并使用神话生物Web应用程序来学习教程。

这两个事件在吸引演讲者和咨询人员帮助参与者方面具有相似之处。 他们强调有趣和最少的技术术语。

我们在西雅图城市大学的一位同学有一个小项目,这是一个招牌游戏Python Web应用程序,旨在测试您的网络安全调查技能。

2013年进行了游戏化研究,重点研究以下主题:验证用户输入; 数组范围检查; 缓冲区溢出; 运算符优先级; 舍入错误; 返回值和处理错误; 数值上溢/下溢。 研究的结果是,学生们能够在游戏水平和信息保证概念之间建立清晰的关联(Adamo-Villani,Oania&Cooper,2013年)。

我们可能能够为教室设置执行简单的互动游戏。 解决诸如SDLC,SDL,威胁建模,攻击面等主题。希望学生们在SDLC的每个阶段都保留安全性的重要性,并希望软件安全性比应用程序安全性更重要,由于应用程序的开发,后者的成本更高修补漏洞(Ransome&Misra,2014)。

研究人员能够克服这样的观念,即安全性在SDLC中并不重要。 没那么多。 与会者希望在动手和理论之间取得平衡。 我相信实践安全编码的游戏化可以帮助教师教授SDL。 安全编码网站培训的一个示例,https://securecodewarrior.com/。 与会者已经知道安全性很重要,但是由于教师工作量大,需要更多资源,他们无法实施安全编码。

线程方法指出实现课程更改所需的时间和资源最少。

参考文献

Adamo-Villani,N.,Oania,M.&Cooper,S.(2013年)。 在入门编程中使用严肃的游戏方法讲授安全编码:开发和初步发现。 教育技术系统杂志。41 (2)。

Ransome,J.和Misra,A.(2014年)。 核心软件安全性:源头安全