Course Outline
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: Detect Vulnerabilities in Your Software
Topic D: Collect Intelligence on Vulnerabilities and Exploits
Lesson 2: Managing Vulnerabilities
Topic A: Address Vulnerabilities Due to Software Defects and Misconfiguration
Topic B: Address Vulnerabilities Due to Human Factors
Topic C: Address Vulnerabilities Due to Process Shortcomings
Lesson 3: Designing for Security
Topic A: Apply General Principles for Secure Design
Topic B: Design Software to Mitigate 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: Restrict Access Using Login and User Roles
Topic B: Secure Data in Transit and At Rest
Topic C: Implement Error Handling and Logging
Topic D: Protect Sensitive Data and Functions
Topic E: Secure Database Access
Lesson 6: Testing Software Security
Topic A: Conduct Security Testing
Topic B: Analyze Code to Identify Security Issues
Topic C: Utilize Automated Testing Tools to Identify Security Issues
Lesson 7: Maintaining Security in Deployed Software
Topic A: Monitor and Log Applications to Enhance Security
Topic B: Maintain Security Post-Deployment
Appendix A: Mapping Course Content to Cyber Secure Coder (Exam CSC-110)
This course is designed to provide comprehensive training for government professionals, ensuring they are equipped with the necessary skills and knowledge to secure software projects effectively.
Requirements
This course provides an overview of secure programming concepts applicable to a wide range of software development projects. Although the course uses Python, HTML, and JavaScript to illustrate various programming principles, prior experience in these languages is not required to benefit from it. However, participants should have some programming background, whether in desktop, mobile, web, or cloud applications. The following courses can help prepare you for this course, enhancing your skills and knowledge for government projects:
- Developing Secure Universal Windows® Platform Apps in C# and XAML
- Developing Secure iOS® Apps for Business
- Developing Secure Android™ Apps for Business
- Python® Programming: Introduction
- Python® Programming: Advanced
- Programming Google App Engine™ Applications in Python®
- HTML5: Content Authoring with New and Advanced Features
- SQL Querying: Fundamentals
Testimonials (5)
General course information
Paulo Gouveia - EID
Course - C/C++ Secure Coding
Nothing it was perfect.
Zola Madolo - Vodacom
Course - Android Security
Trainer willing to answer questions and give bunch of examples for us to learn.
Eldrick Ricamara - Human Edge Software Philippines, Inc. (part of Tribal Group)
Course - Security Testing
It opens up a lot and gives lots of insight what security
Nolbabalo Tshotsho - Vodacom SA
Course - Advanced Java Security
I was benefit from the exercises (SQL injection, XSS, CRSF. .).