resource header

Canadian Cyber Defence Challenge

Student Resources

Student Preparation Package

A high level overview of what the students will encounter during the challenge.

What is Virtualization?

Today's computers have tons of processing power, but are those resources being used efficiently? Not really, if only a single computer is run on a single set of computer hardware. With computer virtualization multiple virtual machines can be run on a single host computer this leads to increased efficiency and multitasking while improving manageability, sustainability, availability, and security.

Virtual Machines

How to create and use virtual machines with VirtualBox


Installation of VirtualBox and setting up a Linux Ubuntu virtual machine on your host computer.

Microsoft Virtual Machine Downloads

Download VM's from Microsoft for Windows 7 and 10.

Hardening a Windows Server - PT 1

Introduction into Windows Firewall, differences between public, private and domain profiles. Some general do's and dont's to secure your Windows Server.

Hardening a Windows Server - PT 2

Introduction into Windows Firewall, differences between public, private and domain profiles. Some general do's and dont's to secure your Windows Server.

Configuring Windows Firewall

The Windows Firewall is a security application created by Microsoft and built into Windows, designed to filter network data transmissions to and from your Windows system and block harmful communications and/or the programs that are initiating them.

Introduction to Active Directory

Active Directory (AD) is a Microsoft product that consists of several services that run on Windows Server to manage permissions and access to networked resources.

Group Policy Objects and Organizational Units

Organizational Units are used to Group Users and Computers together so that you can assign Security to them easily. GPO's or Group Policy Objects are the actual Security Policies that will be assigned.

Introduction to Remote Desktop

Remote Desktop Protocol (RDP) is a tool inside Windows that lets you connect to computers via a remote connection.

Task Scheduler

Understand the ins and outs of Windows Task Scheduler

Linux Command Line

Learn linux command line with Code Academy lessons. Great for students who have never used Linux or Bash before

Over The Wire

Learn and practice security concepts in the form of fun-filled games.

SSH - Introduction

Installation of SSH; how to connect to a remote computer on your LAN using SSH.

SSH - Key Based Authentication

How to configure ssh keys so that we can login to our servers without a password.

Firewall - IPTables

Introduction to IPTables and IPTables syntax, firewall policies, and attacks: SYN flood & ping flood (smurf attack).

Introduction to Bash

A beginners guide to the bash terminal covering the most basic of topics including: navigation, getting help, working with files, text files, users, changing file permissions, etc.

Binary Hacking

Playlist of short ~10min videos about binary exploitation. From beginner to advanced.

Basics of Routing

The forwarding of IP packets by routers is called IP routing. In this lesson, you will learn the steps a router has to perform to forward an IP packet.

Subnetting and CIDR

A video series is intended to help you gain an understanding of fundamental network concepts. It includes IP addressing, binary math, address classes., CIDR notation, what a subnet is, how to subnet, and supernetting.

VPN - Virtual Private Network

A virtual private network (VPN) extends a private network across a public network, and enables users to send and receive data across shared or public networks as if their computing devices were directly connected to the private network.


A video series introducing Nmap, an open-source security scanner used to discover hosts and services on a computer network, thus building a "map" of the network.


The Swiss Army Knife of Network Tools


In this beginner tutorial, we demonstrate capturing packets with Wireshark. Protocols that are analyzed are Telnet, SSH, FTP, and HTTP web traffic.

TCP Ports

The transmission control protocol (TCP) provides an additional level of naming that helps organize data transfer between computers connected to the internet.

Walkthrough of a TCP connection

What is a three-way handshake in TCP? What is flow control? What is a syn and an ack as part of the three-way handshake?

UDP and TCP: Comparison of Transport Protocols

Explains the basics of transport protocols and compares the two major options: UDP and TCP.

Introduction to DNS - Domain Name System

A series of videos about DNS, the Domain Name System. We'll start from the basics (terminology and how DNS is structured), take you step-by-step through actual DNS queries using common tools such as nslookup and dig, and finish with setting up a DNS server.

Public Key Cryptography

Explanation of asymmetric encryption, the principle of Public/Private Key Cryptography.

Introduction to Cryptography

There are lots of different ways to encrypt a message, from early, simple ciphers to the famous Enigma machine. But it’s tough to make a code truly unbreakable.

Hash Algorithms

Hashing Algorithms are used to ensure file authenticity

SHA: Secure Hashing Algorithm

Secure Hashing Algorithm (SHA1) explained.


How SSL/TLS ensure confidentiality, integrity, and authenticity to secure communications over a network. This video explains Certificates of Authority (CA), public and private keys, the recent POODLE Attack of October 2014, and the common exploits of SSL.

Secret Key Exchange (Diffie-Hellman)

How do we exchange a secret key in the clear? Spoiler: We don't

End to End Encryption (E2EE)

End to end encryption, government ministers are again talking about stopping it. What is it and why might that be a bad idea?

Hack this Site

Hack This Site is a free, safe and legal training ground for hackers to test and expand their hacking skills.

Cracking Websites with Cross Site Scripting

Explanation of cross site scripting and the importance of sanitizing user input on a website.

Introduction to the Document Object Model

The the key to all those cool Javascript and AJAX affects is found in understanding what the document object model is - in short, we call this the DOM.

SQL Injection

SQL Injection (SQLi) refers to an injection attack wherein an attacker can execute malicious SQL statements (also commonly referred to as a malicious payload) that control a web application’s database server.