This is a beginner Python cyber security project that creates a simple risk register.
The program allows the user to enter cyber threats, likelihood scores and impact scores. It then calculates a risk score, gives a risk level and recommends a basic security control.
I built this project as part of my software engineering portfolio while studying HND Digital Technologies Cyber Security.
The aim was to practise Python programming while applying cyber security risk assessment concepts such as likelihood, impact, risk scoring and security controls.
- Allows the user to enter multiple cyber threats
- Uses likelihood and impact scores from 1 to 5
- Calculates risk score using likelihood x impact
- Classifies risk as low, medium or high
- Recommends basic security controls
- Validates user input
- Creates a simple cyber security risk register
- Python
- Visual Studio Code
- GitHub
Threat: Ransomware
Likelihood: 4
Impact: 5
Result: High risk.
Recommended control: regular backups, antivirus protection, patching and staff awareness training.
Threat: Phishing
Likelihood: 3
Impact: 3
Result: Medium risk.
Recommended control: email filtering, multi-factor authentication and phishing awareness training.
The program can assess more than one cyber threat in the same run and display them together as a simple risk register.
From this project, I learned how to:
- Use Python input
- Use variables
- Use if statements
- Use functions
- Use loops
- Use lists
- Use dictionaries
- Validate user input
- Calculate cyber risk scores
- Build a simple risk register
- Connect Python programming with cyber security risk assessment
In the future, this project could be improved by:
- Saving the risk register to a CSV file
- Adding more threat categories
- Adding more detailed control recommendations
- Sorting risks by highest score
- Creating a graphical interface
- Turning it into a web application