Toolset for Collecting Shell Commands and Its Application in Hands-on Cybersecurity Training

Investor logo

Warning

This publication doesn't include Faculty of Economics and Administration. It includes Institute of Computer Science. Official publication website can be found on muni.cz.
Authors

ŠVÁBENSKÝ Valdemar VYKOPAL Jan TOVARŇÁK Daniel ČELEDA Pavel

Year of publication 2021
Type Article in Proceedings
Conference 2021 IEEE Frontiers in Education Conference (FIE)
MU Faculty or unit

Institute of Computer Science

Citation
Web
Doi http://dx.doi.org/10.1109/FIE49875.2021.9637052
Keywords cybersecurity education; host-based monitoring; command-line history; Syslog; virtual machines; sandbox; educational data mining; learning analytics; learning technology
Attached files
Description This Full Paper in the Innovative Practice category presents and evaluates a technical innovation for hands-on classes. When learning cybersecurity, operating systems, or networking, students perform practical tasks using a broad range of command-line tools. Collecting and analyzing data about the command usage can reveal valuable insights into how students progress and where they make mistakes. However, few learning environments support recording and inspecting command-line inputs, and setting up an efficient infrastructure for this purpose is challenging. To aid engineering and computing educators, we share the design and implementation of an open-source toolset for logging commands that students execute on Linux machines. Compared to basic solutions, such as shell history files, the toolset's novelty and added value are threefold. First, its configuration is automated so that it can be easily used in classes on different topics. Second, it collects metadata about the command execution, such as a timestamp, hostname, and IP address. Third, all data are instantly forwarded to central storage in a unified, semi-structured format. This enables automated processing of the data, both in real-time and post hoc, to enhance the instructors' understanding of student actions. The toolset works independently of the teaching content, the training network's topology, or the number of students working in parallel. We demonstrated the toolset’s value in two learning environments at four training sessions. Over two semesters, 50 students played educational cybersecurity games using a Linux command-line interface. Each training session lasted approximately two hours, during which we recorded 4439 shell commands. The semi-automated data analysis revealed different solution patterns, used tools, and misconceptions of students. Our insights from creating the toolset and applying it in teaching practice are relevant for instructors, researchers, and developers of learning environments. We provide the software and data resulting from this work so that others can use them in their hands-on classes.
Related projects:

You are running an old browser version. We recommend updating your browser to its latest version.