Threat modeling is the primary security analysis task performed during the software design stage. Threat modeling is a structured activity for identifying and evaluating application threats and vulnerabilities. The security objectives, threats, and attacks modeling activities during the threat modeling are designed to help you find vulnerabilities in your application and the supporting architecture. You can use the identified vulnerabilities to help shape your design and direct and scope your security testing.
Threat modeling allows you to consider, document, and discuss the security implications of designs in the context of their planned operational environment and in a structured fashion. It also allows consideration of security issues at the component or application level. The threat modeling course will teach you to perform threat modeling through a series of workshops, where our trainer will guide you through the different stages of a practical threat model.
This course is aimed at software developers, architects, system managers or security professionals. Before attending this course, students should be familiar with basic knowledge of web and mobile Applications, databases & Single sign on (SSO) principles.
Delegates will learn how to
- The why, what, how, and when of threat modelling
- How to create and update a threat model
- How to create an actionable threat model with your stakeholders
- How to organise and prepare efficient threat modelling workshops
- How to explain the methodology and need for threat modelling to others
- Diagramming techniques, including Data Flow Diagramming
- Threat identification techniques, including STRIDE and attack trees
- How to carry out technical risk rating using the OWASP risk rating methodology
- How to mitigate security and privacy threats with standard mitigations
- The soft skills that will make you a better threat modeler
Threat modeling introduction
- Threat modeling in a secure development lifecycle
- What is threat modeling?
- Why perform threat modeling?
- Threat modeling stages
- Different threat modeling methodologies
- Document a threat model
Diagrams – what are you building?
- Understanding context
- Doomsday scenarios
- Data flow diagrams
- Trust boundaries
- Sequence and state diagrams
- Advanced diagrams
- Hands-on: diagramming web and mobile applications, sharing the same REST backend
Identifying threats – what can go wrong?
- STRIDE introduction
- Spoofing threats
- Tampering threats
- Repudiation threats
- Information disclosure threats
- Denial of service threats
- Elevation of privilege threats
- Attack trees
- Attack libraries
- Hands-on: STRIDE analysis of an Internet of Things (IoT) gateway and cloud update service
Addressing each threat
- Mitigation patterns
- Authentication: mitigating spoofing
- Integrity: mitigating tampering
- Non-repudiation: mitigating repudiation
- Confidentiality: mitigating information disclosure
- Availability: mitigating denial of service
- Authorization: mitigating elevation of privilege
- Specialist mitigations
- Hands-on: AWS threat mitigations for a travel booking system build on microservices
Threat modeling and compliance
- How to marry threat modeling with compliance
- GDPR and Privacy by design
- Privacy threats
- LINDUNN and Mitigating privacy threats
- Threat modeling medical devices (FDA pre- and post-market guidance)
- Threat modeling Industrial Control Systems (IEC 62443)
- Threat Assessment and Remediation Analysis for automotive (TARA, SAE 21434)
- Mapping threat modeling on compliance frameworks
- Hands-on: privacy threat modeling of a face recognition system in an airport
Penetration testing based on offensive threat models
- Create pentest cases for threat mitigation features
- Pentest planning to exploit security design flaws
- Vulnerabilities as input to plan and scope security testing
- Prioritization of pentesting based on risk rating
- Hands-on: get into the defender's head – modeling points of attack of a nuclear facility.
Advanced threat modeling
- Typical steps and variations
- Validation threat models
- Effective threat model workshops
- Communicating threat models
- Agile and DevOps threat modeling
- Improving your practice with the Threat Modeling Playbook
- Scaling up threat modeling
- Threat modeling and compliance: ISO14971 (medical devices), IEC 62443 (industrial cybersecurity), SAE 21434 (automotive)
- Threat models examples: medical devices, automotive, industrial control systems, IoT and Cloud
Threat modeling resources
- Open-Source tools
- Commercial tools
- General tools
- Threat modeling tools compared
- Battle for control over 'Zwarte Wind', an offshore wind turbine park
- Hands-on examination
- Grading and certification
Your bonus training package includes:
- Following a successful exam (passing grade defined at 70%): Threat Modeling Practitioner certificate
- One year of access to our threat modeling e-learning platform
- Presentation handouts
- Tailored use case worksheets
- Detailed use case solution descriptions
- Threat model documentation template
- Template for calculating identified threat risk severity
- Threat modeling playbook
- STRIDE mapped on compliance standards
Cyber Security learning paths
Want to boost your career in cyber security? Click on the roles below to see QA's learning pathways, specially designed to give you the skills to succeed.
Software Engineering learning paths
Want to boost your career in software engineering? Click on the roles below to see QA's learning pathways, specially designed to give you the skills to succeed.
Secure Engineering learning paths
Want to boost your career in Secure Engineering? View QA's learning pathway below, specially designed to give you the skills to succeed.
Frequently asked questionsSee all of our FAQs
How can I create an account on myQA.com?
There are a number of ways to create an account. If you are a self-funder, simply select the "Create account" option on the login page.
If you have been booked onto a course by your company, you will receive a confirmation email. From this email, select "Sign into myQA" and you will be taken to the "Create account" page. Complete all of the details and select "Create account".
If you have the booking number you can also go here and select the "I have a booking number" option. Enter the booking reference and your surname. If the details match, you will be taken to the "Create account" page from where you can enter your details and confirm your account.
Find more answers to frequently asked questions in our FAQs: Bookings & Cancellations page.
How do QA’s virtual classroom courses work?
Our virtual classroom courses allow you to access award-winning classroom training, without leaving your home or office. Our learning professionals are specially trained on how to interact with remote attendees and our remote labs ensure all participants can take part in hands-on exercises wherever they are.
We use the WebEx video conferencing platform by Cisco. Before you book, check that you meet the WebEx system requirements and run a test meeting (more details in the link below) to ensure the software is compatible with your firewall settings. If it doesn’t work, try adjusting your settings or contact your IT department about permitting the website.
Learn more about our Virtual Classrooms.
How do QA’s online courses work?
QA online courses, also commonly known as distance learning courses or elearning courses, take the form of interactive software designed for individual learning, but you will also have access to full support from our subject-matter experts for the duration of your course. When you book a QA online learning course you will receive immediate access to it through our e-learning platform and you can start to learn straight away, from any compatible device. Access to the online learning platform is valid for one year from the booking date.
All courses are built around case studies and presented in an engaging format, which includes storytelling elements, video, audio and humour. Every case study is supported by sample documents and a collection of Knowledge Nuggets that provide more in-depth detail on the wider processes.
Learn more about QA’s online courses.
When will I receive my joining instructions?
Joining instructions for QA courses are sent two weeks prior to the course start date, or immediately if the booking is confirmed within this timeframe. For course bookings made via QA but delivered by a third-party supplier, joining instructions are sent to attendees prior to the training course, but timescales vary depending on each supplier’s terms. Read more FAQs.
When will I receive my certificate?
Certificates of Achievement are issued at the end the course, either as a hard copy or via email. Read more here.