virtual cyber exercises with moodle€¦ · virtual cyber exercises with moodle [distribution...

26
Adam Welle and Kimo Bumanglag Carnegie Mellon University Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution.

Upload: others

Post on 30-Jun-2020

12 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Adam Welle and Kimo BumanglagCarnegie Mellon University

Virtual Cyber Exercises with Moodle

[Distribution Statement A] Approved for public release and unlimited distribution.

Presenter
Presentation Notes
The Software Engineering Institute at Carnegie Mellon University has developed a number of open source software tools that can be combined with Moodle to enable dynamic cyber training in virtual environments. These environments can range in size from a single virtual machine to the largest events consisting of thousands of participants using thousands of virtual machines. The open source software presented enables virtual environments to be accessed from a Moodle instance and further seeks to enhance the training experience by increasing fidelity and realism with live networks. Further, the software presented works alongside Moodle and xAPI to deliver quantifiable learning assessments.
Page 2: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Copyright 2019 Carnegie Mellon University.

This material is based upon work funded and supported by the Department of Defense under Contract No. FA8702-15-D-0002 with Carnegie Mellon University for the operation of the Software Engineering Institute, a federally funded research and development center.

The view, opinions, and/or findings contained in this material are those of the author(s) and should not be construed as an official Government position, policy, or decision, unless designated by other documentation.References herein to any specific commercial product, process, or service by trade name, trade mark, manufacturer, or otherwise, does not necessarily constitute or imply its endorsement, recommendation, or favoring by Carnegie Mellon University or its Software Engineering Institute.

NO WARRANTY. THIS CARNEGIE MELLON UNIVERSITY AND SOFTWARE ENGINEERING INSTITUTE MATERIAL IS FURNISHED ON AN "AS-IS" BASIS. CARNEGIE MELLON UNIVERSITY MAKES NO WARRANTIES OF ANY KIND, EITHER EXPRESSED OR IMPLIED, AS TO ANY MATTER INCLUDING, BUT NOT LIMITED TO, WARRANTY OF FITNESS FOR PURPOSE OR MERCHANTABILITY, EXCLUSIVITY, OR RESULTS OBTAINED FROM USE OF THE MATERIAL. CARNEGIE MELLON UNIVERSITY DOES NOT MAKE ANY WARRANTY OF ANY KIND WITH RESPECT TO FREEDOM FROM PATENT, TRADEMARK, OR COPYRIGHT INFRINGEMENT.

[DISTRIBUTION STATEMENT A] This material has been approved for public release and unlimited distribution. Please see Copyright notice for non-US Government use and distribution.

This material may be reproduced in its entirety, without modification, and freely distributed in written or electronic form without requesting formal permission. Permission is required for any other use. Requests for permission should be directed to the Software Engineering Institute at [email protected].

CERT® is registered in the U.S. Patent and Trademark Office by Carnegie Mellon University.

DM19-1210 [Distribution Statement A] Approved for public release and unlimited distribution.

Page 3: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Agenda● Introduction● Cyber Exercise Overview● Range Technologies● Simulations ● Integrating with Moodle

[Distribution Statement A] Approved for public release and unlimited distribution.

Page 4: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Introduction● Who we are● What we do

[Distribution Statement A] Approved for public release and unlimited distribution.

Presenter
Presentation Notes
Software Engineering Institute Federally Funded Research and Development Center (FFRDC) Solving problems while training the Cyber Workforce Innovative ways to increase realism and provide assessment Develop targeted training content for challenging work roles Develop cyber exercise for team training
Page 5: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Cyber Exercise Overview

Event Size

Fide

lity

Basic Individual

Tasks

Advanced Individual

Tasks

Basic Team Tasks

Advanced Team Tasks

Certification&

Validation

[Distribution Statement A] Approved for public release and unlimited distribution.

Presenter
Presentation Notes
A cyber exercise is a training event that happens along a spectrum of size and fidelity. Exercises which are focused on individuals are the smallest events and require the least fidelity. We use technologies to automate the provisioning and deprovisioning of lab environments for these kinds of exercises. Team tasks are larger. The team size can range from a small group of people who perform the same actions in concert (threat hunting, network validation, etc) to a whole organizational unit which comprises the network defenders, management, and external partners. These events require higher fidelity, both from a technological perspective and from a simulated user perspective. Certification and validation events are the largest. These employ a whole team (or perhaps a team of teams). The highest levels of fidelity are required, with an increased emphasis on simulated command and control (management) layers.
Page 6: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Range Technologies

Deprecating Open Source Lab BuilderFull Scale Environment

BuilderComing soon

[Distribution Statement A] Approved for public release and unlimited distribution.

Presenter
Presentation Notes
Phasing out STEP TopoMojo is open source Crucible will be open source
Page 7: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

SimulationsGHOSTS

• for Non-Player Characters

GreyBox•for backbone routing

TopGen•for Simulated Internet websites and DNS

vTunnel•for out of band command and control

WELLE-D•for Wi-Fi simulation

StormBox•for low fidelity user simulation

[Distribution Statement A] Approved for public release and unlimited distribution.

Presenter
Presentation Notes
GHOSTS (and OPFOR) - Injects – realism – implements the MSEL StormBox GreyBox TopGen vTunnel – mention command and control as well as scoring WELLE-D
Page 8: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Assessing PerformanceAssessment● LMS – Moodle, of course!● LRS – Learning Locker● xAPI – from Moodle, H5P, and VMs● MELK – Moodle, Elasticsearch,

Logstash, Kibana to visualize performance

● NICE Cyber Security Workforce Framework

[Distribution Statement A] Approved for public release and unlimited distribution.

Presenter
Presentation Notes
These some of the open source technologies we are to assess performance
Page 9: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Assessment with MoodleActivities● Quiz● Feedback● Files

Features● Competencies

Plugins● H5P● Virtual Programming Lab● Course Format Board● Logstore xAPI● Local Metadata

[Distribution Statement A] Approved for public release and unlimited distribution.

Presenter
Presentation Notes
Moodle was very appealing to use because of its default support for these useful activities But then we discovered these additional plugins that gave us the opportunity to innovate
Page 10: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Moodle Competencies● Cyber Evaluator Tool Output

[Distribution Statement A] Approved for public release and unlimited distribution.

Presenter
Presentation Notes
Cyber Evaluator Tool is a Moodle course that gauges the learner’s knowledge of their Work Role as per the NIST NICE Cyber Security Workforce Framework
Page 11: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Custom Integrations with Moodle● Import courses from old STEP LMS● Match organizational branding● Display Moodle content on other systems● Provide access to VM consoles● Categorize training and identify skill gaps

[Distribution Statement A] Approved for public release and unlimited distribution.

Presenter
Presentation Notes
In order to expand further innovate our training and assessment, we wanted to do these additional things
Page 12: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Moodle Development● Content Sync Plugin● Purpose: Add Moodle content to the Foundry content discovery system● Type: admin tool● Leverages: OAUTH2, scheduled tasks● Communicates with the Foundry API to add content links and images

[Distribution Statement A] Approved for public release and unlimited distribution.

Page 13: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Moodle Development● Custom Theme Plugin● Purpose: Provide a dark theme to match other sites● Type: theme● Leverages: Boost theme, local metadata plugin● Automatically redirects users to OAUTH2 identity server● Renderer overrides H5P logo with activity logo● Renderer overrides and rearranges course listing display● Renderer uses local metadata plugin to override page layout for activities

[Distribution Statement A] Approved for public release and unlimited distribution.

Page 14: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Moodle Development● Custom Theme and course format board

[Distribution Statement A] Approved for public release and unlimited distribution.

Presenter
Presentation Notes
This screenshot shows both the custom theme and the format board layout that we chose in order to reduce whitespace.
Page 15: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Moodle Development● Local Metadata● Used to determine whether to sync content to Foundry● Used to determine whether to display activity as embedded

[Distribution Statement A] Approved for public release and unlimited distribution.

Presenter
Presentation Notes
These are the options we are using for each activity inside of Moodle. The first option tells the content sync plugin to add/update this content on Foundry.
Page 16: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Moodle Development● Crucible and Local Metadata

[Distribution Statement A] Approved for public release and unlimited distribution.

Presenter
Presentation Notes
The local metadata plugin allows the theme plugin to display activities in a manner that looks great when embedded inside other sites when the user may not need access to the full Moodle course.
Page 17: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Moodle Development● Crucible Plugin● Purpose: Deploy labs and access VM consoles● Type: activity● Leverages: OAUTH2● Allows course creators to add lab as a Moodle course activity● Communicates with the Crucible API● Pulls name and description of lab from Crucible● Pulls lab history from Crucible● Embeds Crucible VM consoles or links to the full Crucible Player

[Distribution Statement A] Approved for public release and unlimited distribution.

Page 18: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Moodle Development● Crucible

[Distribution Statement A] Approved for public release and unlimited distribution.

Presenter
Presentation Notes
The course creator can easily link the lab into Moodle whereas we previously used a generic HTML page to create a button. Here we also see the drop down and the display selection.
Page 19: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Moodle Development● Crucible

[Distribution Statement A] Approved for public release and unlimited distribution.

Presenter
Presentation Notes
This shows the name and description. The user has control of the lab and can click a button to start the lab and deploy the VMs
Page 20: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Moodle Development● Crucible

[Distribution Statement A] Approved for public release and unlimited distribution.

Presenter
Presentation Notes
The plugin uses JavaScript to poll the Crucible API and refresh the page when the VMs exist.
Page 21: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Moodle Development● Crucible

[Distribution Statement A] Approved for public release and unlimited distribution.

Presenter
Presentation Notes
The user may have access to one or more VMs
Page 22: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Moodle Development● Crucible

[Distribution Statement A] Approved for public release and unlimited distribution.

Presenter
Presentation Notes
Once the user open the VM, it is embedded inside an iframe within the activity. As this point the user has a button that will end the lab and destroy the VMs.
Page 23: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Moodle Layout● Quiz

[Distribution Statement A] Approved for public release and unlimited distribution.

Page 24: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Moodle Layout● VPL

[Distribution Statement A] Approved for public release and unlimited distribution.

Page 25: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

Future Moodle Development● Further integration with Crucible● Moodle events and xAPI● Grading of lab tasks automatically● Release Crucible and mod_crucible on Github in 2020

[Distribution Statement A] Approved for public release and unlimited distribution.

Presenter
Presentation Notes
We will eventually update the plugin to communicate with a new Crucible component that will allow for the automated grading of lab tasks. The lab creator will define tasks that will check the state of the VMs to determine the user’s progress and these results will be displayed within the Moodle activity.
Page 26: Virtual Cyber Exercises with Moodle€¦ · Virtual Cyber Exercises with Moodle [Distribution Statement A] Approved for public release and unlimited distribution. The Software Engineering

http://cmu-sei.github.io

[Distribution Statement A] Approved for public release and unlimited distribution.