Teaching Penetration Testing

Date:
Talk at Lancaster University, Lancaster, UK

At a Lancaster University education event, I presented work that I have been undertaking to improve the delivery of SCC.442 Penetration Testing.

There were three main problems that had been encountered in previous years:

  1. Students had unclear expectations in terms of what was expected from them
  2. Students struggled to approach technical problems in assessments
  3. Manual construction of lab and assessment material was time-consuming and unreliable

Issue 1 - Addressing Expectations

To identify clear expectations, the Revised Blooms Taxonomy has been mapped to the Cyber Kill Chain to provide details on what is expected from students at different levels of attainment.

Bloom's Taxonomy shown as a pyramid of six layers including: remember, understand, apply, analyse, evaluate and create Cyber Kill Chain showing the seven steps of: Reconnaissance, Weaponisation, Delivery, Exploitation, Installation, Command & Control, and Actions on Objectives
The Revised Bloom's Taxonomy and The Lockheed Martin Cyber Kill Chain.
ReconnaissanceWeaponizationDeliveryExploitationInstallationC&CAct
RememberKnow what the different commands and tools do.
UnderstandUnderstand what configuration to run the different commands and tools with.
ApplyAbility to execute commands and run tools.
AnalyseAttributing recon. to servicesIdentify the types and versions of system and softwareIdentify how a payload or exploit should be deliveredProcessing output from exploitDetermine if malware install is neededWhat new actions can possibly be performed?Determine next steps to achieve goal
Parse nmap scan and understand outputParse nmap scan to identify services & versionsUse webserver to deploy reverse shellExamine output from SQL injectionAnalyse if msfvenom should be usedIdentify if elevate privilege is possibleIdentify how to elevate privilege
EvaluateTesting recon. resultIdentify vulns. of system or softwareDid the delivery succed?Did the exploit succed?Did the installation succed?Can new actions be performed?Decide which steps are most effective
Test recon. by opening browser on port 80Search databases for vulns.Check if file transfer succeededCheck if exploit succeededCheck if reverse shell was successfulConsider pivotingConsider best approach to pivot
CreatePlanning next steps based on recon.Build malware or design exploitDeliver malware or exploitProduce an outcome from the malware or exploitMalware installed or exploit usableObtained controllable systemAchieve objectives
Decide to perform privilege elevationBuilt reverse shell using msfvenomReverse shell delivered to targetExploit target to elevate privilegeReverse shell installed on targetConnect reverse shell to MetasploitCapture the flag
Mapping the Revised Bloom's Taxonomy and the Cyber Kill Chain to SCC.442 Lab Exercises and Assessment with Examples

Issue 2 - Approach to Problem Solving

An issue encountered in the past is that students treat lab exercises as a set of instructions to compromise a system. When applying these instructions during assessment, they end up failing to exploit the system due to its configuration being different. So students need to be presented with content that clearly encourages them to think about why they are taking certain actions.

  • Encourage a scientific approach where students start a lab with a hypothesis and then reflect on this hypothesis at the end of the labs.
  • Prompt students to consider why they are taking specific actions.
  • Provide context as to why certain actions are appropriate.
  • Start with large amounts of guidance and then reduce the guidance over time.
  • Ensure students are exposed to appropriate sources throughout the labs, such as NVD, CWE, and CAPEC.