The importance of well-secured applications is significant, yet there are still development teams that only consider software security after the code has been developed and the software is being prepared for delivery.
As with any aspect of software quality, to ensure a successful implementation, security and privacy issues must be managed throughout the entire software development lifecycle. This course offers a practical approach to dealing with security and privacy at every stage of the development cycle. You will learn about many common and less common vulnerabilities that threaten security and how to identify and address these in your own projects.
Furthermore, you will learn general strategies that help you deal with security flaws and misconfigurations, how to design software that can handle the human element of security, and how to integrate security into all development phases.
Each part of the training is made practical through hands-on labs. The goal of these activities is to demonstrate concepts using two universal languages: Python and Java Script. Developers using alternative languages will be able to apply the essence of the labs to all coding languages. Our labs are designed to minimize the amount of code typing to an absolute minimum. The activities do not require a 'deep-dive' into the code to understand the principles being covered.
Globale inhoud
Lesson 1: Identifying the Need for Security in Your Software Projects
Topic A: Identify Security Requirements and Expectations
Topic B: Identify Factors That Undermine Software Security
Topic C: Find Vulnerabilities in Your Software
Topic D: Gather Intelligence on Vulnerabilities and Exploits
Lesson 2: Handling Vulnerabilities
Topic A: Handle Vulnerabilities Due to Software Defects and Misconfiguration
Topic B: Handle Vulnerabilities Due to Human Factors
Topic C: Handle Vulnerabilities Due to Process Shortcomings
Lesson 3: Designing for Security
Topic A: Apply General Principles for Secure Design
Topic B: Design Software to Counter Specific Threats
Lesson 4: Developing Secure Code
Topic A: Follow Best Practices for Secure Coding
Topic B: Prevent Platform Vulnerabilities
Topic C: Prevent Privacy Vulnerabilities
Lesson 5: Implementing Common Protections
Topic A: Limit Access Using Login and User Roles
Topic B: Protect Data in Transit and At Rest
Topic C: Implement Error Handling and Logging
Topic D: Protect Sensitive Data and Functions
Topic E: Protect Database Access
Lesson 6: Testing Software Security
Topic A: Perform Security Testing
Topic B: Analyze Code to find Security Problems
Topic C: Use Automated Testing Tools to Find Security Problems
Lesson 7: Maintaining Security in Deployed Software
Topic A: Monitor and Log Applications to Support Security
Topic B: Maintain Security after Deployment
Appendix A: Mapping Course Content to Cyber Secure Coder (Exam CSC-210)
The importance of well-secured applications is significant, yet there are still development teams that only consider software security after the code has been developed and the software is being prepared for delivery.
As with any aspect of software quality, to ensure a successful implementation, security and privacy issues must be managed throughout the entire software development lifecycle. This course offers a practical approach to dealing with security and privacy at every stage of the development cycle. You will learn about many common and less common vulnerabilities that threaten security and how to identify and address these in your own projects.
Furthermore, you will learn general strategies that help you deal with security flaws and misconfigurations, how to design software that can handle the human element of security, and how to integrate security into all development phases.
Each part of the training is made practical through hands-on labs. The goal of these activities is to demonstrate concepts using two universal languages: Python and Java Script. Developers using alternative languages will be able to apply the essence of the labs to all coding languages. Our labs are designed to minimize the amount of code typing to an absolute minimum. The activities do not require a 'deep-dive' into the code to understand the principles being covered.
Globale inhoud
Lesson 1: Identifying the Need for Security in Your Software Projects
Topic A: Identify Security Requirements and Expectations
Topic B: Identify Factors That Undermine Software Security
Topic C: Find Vulnerabilities in Your Software
Topic D: Gather Intelligence on Vulnerabilities and Exploits
Lesson 2: Handling Vulnerabilities
Topic A: Handle Vulnerabilities Due to Software Defects and Misconfiguration
Topic B: Handle Vulnerabilities Due to Human Factors
Topic C: Handle Vulnerabilities Due to Process Shortcomings
Lesson 3: Designing for Security
Topic A: Apply General Principles for Secure Design
Topic B: Design Software to Counter Specific Threats
Lesson 4: Developing Secure Code
Topic A: Follow Best Practices for Secure Coding
Topic B: Prevent Platform Vulnerabilities
Topic C: Prevent Privacy Vulnerabilities
Lesson 5: Implementing Common Protections
Topic A: Limit Access Using Login and User Roles
Topic B: Protect Data in Transit and At Rest
Topic C: Implement Error Handling and Logging
Topic D: Protect Sensitive Data and Functions
Topic E: Protect Database Access
Lesson 6: Testing Software Security
Topic A: Perform Security Testing
Topic B: Analyze Code to find Security Problems
Topic C: Use Automated Testing Tools to Find Security Problems
Lesson 7: Maintaining Security in Deployed Software
Topic A: Monitor and Log Applications to Support Security
Topic B: Maintain Security after Deployment
Appendix A: Mapping Course Content to Cyber Secure Coder (Exam CSC-210)
This training is scheduled as follows in the coming period. Missing a date? Feel free to contact us.
Location: TSTC Veenendaal
Train smarter, not harder. TSTC's unique approach guarantees the effective acquisition of skills and the greatest chance of success.
Learn more about TSTC