{"title":"Automatic Challenge Generation for Hands-on Cybersecurity Training","authors":"Matteo Benzi, Giovanni Lagorio, M. Ribaudo","doi":"10.1109/eurospw55150.2022.00059","DOIUrl":null,"url":null,"abstract":"Just reading the news is enough to understand how critical cybersecurity and cybersecurity-education have become. Many job positions remain unfilled due to a shortage of a skilled workforce, and universities have opened courses on cybersecurity-related topics to keep up with market demands. In turn, educators are reshaping their educational material and activities to cover both the standard theory of the field and the practice. However, organizing hands-on cybersecurity training is laborious and time consuming. We present Chad, a tool we developed to support instructors in the development and deployment of practical cybersecurity exercises. Chad, an open-source project written in Python, allows teachers to generate multiple different instances of an exercise, guaranteeing that they all share the same difficulty and require the same knowledge to be solved. Our tool also supports the testing of generated exercises, and their deployment, by leveraging technologies like Docker, Wireguard and iptables. Chad has been integrated with Github classroom and field-tested, during a.y. 2021/2022, in the context of a university course on binary analysis. However, its adoption is not limited to such topics or formal education. Indeed, the Github repository contains examples of reversing-engineering challenges for Linux and Windows, and a simple web challenge.","PeriodicalId":275840,"journal":{"name":"2022 IEEE European Symposium on Security and Privacy Workshops (EuroS&PW)","volume":"66 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2022-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2022 IEEE European Symposium on Security and Privacy Workshops (EuroS&PW)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/eurospw55150.2022.00059","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1
Abstract
Just reading the news is enough to understand how critical cybersecurity and cybersecurity-education have become. Many job positions remain unfilled due to a shortage of a skilled workforce, and universities have opened courses on cybersecurity-related topics to keep up with market demands. In turn, educators are reshaping their educational material and activities to cover both the standard theory of the field and the practice. However, organizing hands-on cybersecurity training is laborious and time consuming. We present Chad, a tool we developed to support instructors in the development and deployment of practical cybersecurity exercises. Chad, an open-source project written in Python, allows teachers to generate multiple different instances of an exercise, guaranteeing that they all share the same difficulty and require the same knowledge to be solved. Our tool also supports the testing of generated exercises, and their deployment, by leveraging technologies like Docker, Wireguard and iptables. Chad has been integrated with Github classroom and field-tested, during a.y. 2021/2022, in the context of a university course on binary analysis. However, its adoption is not limited to such topics or formal education. Indeed, the Github repository contains examples of reversing-engineering challenges for Linux and Windows, and a simple web challenge.