How to Write Secure Code Training Course
In the wake of major attacks on national infrastructures, security professionals have identified that the root cause of most incidents is poor and vulnerable code written by developers.
Developers must now master secure coding techniques, as the current landscape allows anyone to use available tools to create scripts that can effectively disable a large organization's systems if the underlying code is flawed.
This course aims to achieve the following objectives:
- Enable developers to master secure coding techniques.
- Assist software testers in verifying application security before it is deployed to the production environment.
- Help software architects understand the risks associated with their applications.
- Guide team leaders in establishing security baselines for their development teams.
- Support webmasters in configuring servers to avoid misconfigurations.
Participants will also examine details of recent cyber attacks, including the countermeasures employed to stop and prevent them.
By observing how developer errors can lead to catastrophic breaches and by participating in hands-on labs, you will put security controls into practice, gaining the experience and knowledge needed to produce secure code.
Who Should Attend This Course?
This Secure Code Training is ideal for professionals in roles such as, but not limited to:
- Web Developers
- Mobile Developers
- Java Developers
- .NET Developers
- Software Architects
- Software Testers
- Security Professionals
- Webmasters
Course Outline
Module 1: Introduction to Secure Coding
- Overview of secure coding practices
- Common vulnerabilities in software
- Importance of secure development life cycle
Module 2: Web, Windows, and Mobile Application Basics
- Introduction to application platforms
- Security implications for each platform
- Best practices for secure development
Module 3: Application Attacks and Exploits
- Cross-Site Scripting (XSS)
- SQL Injection
- Cross-Site Request Forgery (CSRF)
Module 4: Server Attacks and Exploits
- Denial of Service (DoS) attacks
- Buffer Overflow (BOF)
- Common server vulnerabilities
Module 5: Validation and Verification
- Input validation techniques
- Data sanitization and output encoding
- Verifying security measures
Module 6: Security Controls and Countermeasures
- Implementing access control
- Using encryption for data security
- Protecting against common threats
Module 7: Mobile Application Secure Coding
- Security concerns in mobile development
- Implementing secure mobile app architectures
- Handling mobile data securely
Module 8: Security Standards and Testing
- Overview of security standards (e.g., OWASP)
- Testing for security vulnerabilities
- Best practices for security testing
Requirements
- Basic knowledge of any programming language
- Basic knowledge of the software development life cycle
Audience
- Developers
- Software architects
- Security professionals
Open Training Courses require 5+ participants.
How to Write Secure Code Training Course - Booking
How to Write Secure Code Training Course - Enquiry
How to Write Secure Code - Consultancy Enquiry
Testimonials (3)
The labs practice
Angel - Vodacom
Course - How to Write Secure Code
seeing the security threats in action
kesh - Vodacom
Course - How to Write Secure Code
Module3 Applications Attacks and Exploits, XSS, SQL injection Module4 Servers Attacks and Exploits, DOS, BOF
Tshifhiwa - Vodacom
Course - How to Write Secure Code
Upcoming Courses
Related Courses
Network Security and Secure Communication
21 HoursBuilding a secure networked application presents challenges even for developers experienced with cryptographic primitives like encryption and digital signatures. To help participants grasp the role and application of these tools, the course establishes a solid foundation on the core requirements of secure communication: secure acknowledgment, integrity, confidentiality, remote identification, and anonymity. It also highlights common threats to these requirements and presents real-world solutions.
Since cryptography is fundamental to network security, the course examines key algorithms in symmetric cryptography, hashing, asymmetric cryptography, and key agreement. Rather than focusing on deep mathematical theory, the content takes a developer-centric approach, illustrating typical use cases and practical considerations such as public key infrastructures (PKI). The course introduces security protocols across various domains, with a detailed exploration of widely used families like IPSEC and SSL/TLS.
Common cryptographic vulnerabilities are analyzed in relation to specific algorithms and protocols. This includes well-known issues such as BEAST, CRIME, TIME, BREACH, FREAK, Logjam, Padding oracle, Lucky Thirteen, POODLE, and RSA timing attacks. For each, the course outlines practical implications and potential consequences without diving into complex mathematical details.
Given that XML technology is central to data exchange for networked applications, the course also covers XML security. This includes the use of XML in web services and SOAP messages, along with protective measures like XML Signature and XML Encryption. Additionally, it addresses weaknesses in these measures and XML-specific threats such as XML injection, XML External Entity (XXE) attacks, XML bombs, and XPath injection.
Participants attending this course will
- Grasp the fundamental concepts of security, IT security, and secure coding
- Understand the requirements for secure communication
- Learn about network attacks and defenses across different OSI layers
- Gain a practical understanding of cryptography
- Comprehend essential security protocols
- Understand recent attacks targeting cryptosystems
- Receive information on recent related vulnerabilities
- Understand the security concepts underlying web services
- Access resources and further reading on secure coding practices
Audience
Developers, Professionals
C/C++ Secure Coding
21 HoursOver the course of three days, this program introduces the fundamental principles of protecting C and C++ code from malicious exploitation. Participants will learn how to mitigate vulnerabilities arising from memory management and input handling, thereby mastering the core practices necessary for writing secure software.
Advanced Java Security
21 HoursEven seasoned Java developers do not automatically master all the security services provided by Java, nor are they fully aware of the various vulnerabilities that impact Java-based web applications.
This course introduces the security components of Java Standard Edition (Java SE) and addresses security challenges within Java Enterprise Edition (Java EE) and web services. Before exploring specific services, the course covers the fundamentals of cryptography and secure communication. Through practical exercises, participants learn about declarative and programmatic security techniques in Java EE, as well as transport-layer and end-to-end security for web services. All concepts are reinforced through hands-on exercises where participants can experiment with the discussed APIs and tools.
The course also examines and explains the most common and severe programming flaws in the Java language and platform, along with web-related vulnerabilities. Beyond typical errors made by Java developers, the discussed security vulnerabilities encompass both language-specific issues and problems arising from the runtime environment. Each vulnerability and corresponding attack is demonstrated through easy-to-follow exercises, followed by recommended coding guidelines and mitigation strategies.
Participants attending this course will
- Understand fundamental concepts of security, IT security, and secure coding
- Learn about web vulnerabilities beyond the OWASP Top Ten and know how to prevent them
- Comprehend the security concepts underlying web services
- Gain proficiency in using various security features of the Java development environment
- Develop a practical understanding of cryptography
- Understand the security solutions available in Java EE
- Identify typical coding mistakes and learn how to avoid them
- Receive information on recent vulnerabilities affecting the Java framework
- Acquire practical knowledge of security testing tools
- Access resources and further readings on secure coding practices
Audience
Developers
Standard Java Security: Secure Coding & Development Practices
14 HoursDescription
While the Java language and its Runtime Environment (JRE) were designed to minimize the most common and severe security vulnerabilities found in languages like C/C++, developers and architects must look beyond simple usage. It is crucial to master the positive security features of the Java environment while remaining vigilant against the numerous vulnerabilities that still affect Java development (negative security).
The course begins by establishing a solid foundation in cryptography, providing participants with the necessary context to understand the purpose and operation of applicable security components. This theoretical knowledge is reinforced through practical exercises, allowing participants to gain hands-on experience with the discussed APIs.
Furthermore, the curriculum explores frequent and severe programming flaws specific to the Java language and platform. By demonstrating vulnerabilities and associated attacks through accessible exercises, followed by recommended coding guidelines and mitigation techniques, the course equips developers with the knowledge to identify and neutralize typical bugs and environment-specific issues.
Participants attending this course will
- Grasp fundamental concepts of security, IT security, and secure coding principles.
- Identify web vulnerabilities beyond the OWASP Top Ten and learn strategies to prevent them.
- Master the use of various security features available within the Java development environment.
- Develop a practical understanding of cryptographic principles and applications.
- Recognize typical coding mistakes and learn how to avoid them.
- Gain insights into recent vulnerabilities affecting the Java framework.
- Access curated sources and further reading materials on secure coding practices.
Audience
Developers
.NET, C# and ASP.NET Security Development
14 HoursToday, numerous programming languages allow code compilation for the .NET and ASP.NET frameworks. While this environment offers robust tools for security development, developers must understand how to apply architectural and coding-level techniques to implement desired security features, avoid vulnerabilities, and limit their exploitation.
This course aims to teach developers, through extensive hands-on exercises, how to prevent untrusted code from executing privileged actions, secure resources via strong authentication and authorization, manage remote procedure calls and sessions, and explore various implementation strategies for different functionalities.
The course introduces various vulnerabilities by first presenting common programming pitfalls in .NET. The discussion on ASP.NET vulnerabilities covers the impact of different environment settings. Furthermore, the section on ASP.NET-specific vulnerabilities addresses both general web application security challenges and specialized issues such as ViewState attacks and string termination attacks.
Participants attending this course will
- Comprehend fundamental concepts of security, IT security, and secure coding
- Understand web vulnerabilities beyond the OWASP Top Ten and learn how to mitigate them
- Utilize various security features available in the .NET development environment
- Gain practical experience with security testing tools
- Recognize common coding errors and learn how to avoid them
- Stay informed about recent vulnerabilities affecting .NET and ASP.NET
- Access resources and further reading materials on secure coding practices
Audience
Developers
Secure coding in PHP
21 HoursThis course equips PHP developers with the essential skills needed to build applications that are resilient against modern internet-based threats. The curriculum explores web vulnerabilities through PHP-centric examples, extending beyond the OWASP Top Ten to cover a wide range of injection attacks, script injections, session handling weaknesses, insecure direct object references, file upload issues, and more. These PHP-specific vulnerabilities are categorized into standard vulnerability types, such as missing or flawed input validation, incorrect error and exception handling, misuse of security features, and time- and state-related issues. For the latter category, the course examines attacks like open_basedir circumvention, denial-of-service via magic float, and hash table collision attacks. In each scenario, participants learn the critical techniques and functions required to mitigate these risks.
A significant emphasis is placed on client-side security, addressing issues related to JavaScript, Ajax, and HTML5. The course introduces several PHP extensions, including hash, mcrypt, and OpenSSL for cryptographic purposes, as well as Ctype, ext/filter, and HTML Purifier for robust input validation. Best practices for hardening are provided in the context of PHP configuration (php.ini), Apache settings, and general server security. Additionally, the course offers a comprehensive overview of security testing tools and techniques available to developers and testers, such as security scanners, penetration testing methodologies, exploit packs, packet sniffers, proxy servers, fuzzing tools, and static source code analyzers.
The introduction of vulnerabilities and configuration practices is reinforced by numerous hands-on exercises. These exercises demonstrate the impact of successful attacks, illustrate how to implement mitigation strategies, and guide participants in utilizing various extensions and tools effectively.
By the end of this course, participants will
- Grasp the fundamental concepts of security, IT security, and secure coding
- Identify web vulnerabilities beyond the OWASP Top Ten and understand how to prevent them
- Comprehend client-side vulnerabilities and secure coding methodologies
- Develop a practical understanding of cryptography
- Master the use of various PHP security features
- Recognize common coding errors and learn how to avoid them
- Stay informed about recent vulnerabilities within the PHP framework
- Gain practical experience with security testing tools
- Access resources and further reading materials on secure coding practices
Audience
Developers
Microsoft SDL Core
14 HoursThis consolidated SDL core training provides a comprehensive look at secure software design, development, and testing through the lens of Microsoft's Secure Development Lifecycle (SDL). It offers a level 100 overview of the fundamental building blocks of SDL, followed by design techniques to help identify and resolve flaws in the early stages of the development process.
Focusing on the development phase, the course outlines common security-related programming bugs found in both managed and native code. The curriculum presents attack vectors for discussed vulnerabilities alongside their mitigation techniques, all illustrated through hands-on exercises that offer participants practical, live hacking experiences. The introduction to various security testing methods is followed by demonstrations of the effectiveness of different testing tools. Participants can grasp the operation of these tools through practical exercises, applying them to previously discussed vulnerable code.
Participants attending this course will
Understand the basic concepts of security, IT security, and secure coding
Become familiar with the essential steps of the Microsoft Secure Development Lifecycle
Learn secure design and development practices
Gain knowledge of secure implementation principles
Understand security testing methodology
- Obtain sources and further reading materials on secure coding practices
Audience
Developers, Managers
DevOps Security: Creating a DevOps Security Strategy
7 HoursIn this instructor-led, live course in Czech Republic, participants will learn how to develop an effective security strategy to address DevOps security challenges.
DevSecOps Firefight: Breach, Fix & Fortify
7 HoursThis premium, state-of-the-art, practical workshop immerses participants in the essential challenges of securing modern CI/CD pipelines. Tailored for security specialists, DevOps engineers, and developers keen to master advanced breach defense, the program combines live attack simulations with top-tier industry tools and actionable defense strategies.
EC-Council Certified DevSecOps Engineer (ECDE)
28 HoursThe EC-Council Certified DevSecOps Engineer (ECDE) course is a practical program designed to empower professionals with the expertise needed to integrate security throughout the DevOps lifecycle, ensuring secure software development from initial planning through to deployment.
This instructor-led training, available online or on-site, targets intermediate-level software developers and DevOps practitioners looking to embed security practices into their CI/CD pipelines, thereby guaranteeing the delivery of secure and compliant code.
Upon completion of this training, participants will be able to:
- Comprehend the core principles and practices of DevSecOps.
- Secure all stages of the CI/CD pipeline using automated tools.
- Apply secure coding standards and execute vulnerability scanning.
- Prepare for the ECDE certification through practical labs and comprehensive reviews.
Course Format
- Interactive lectures and discussions.
- Hands-on experience with DevSecOps tools within simulated pipelines.
- Guided exercises centered on secure development and deployment processes.
Customization Options
- For teams seeking customized training tailored to their specific workflows or toolchains, please contact us to arrange.
OWASP GenAI Security
14 HoursBased on the latest OWASP GenAI Security Project guidance, participants will learn to identify, assess, and mitigate AI-specific threats through hands-on exercises and real-world scenarios.
OWASP Mobile Security Testing Guide
21 HoursThis instructor-led live training in Czech Republic (online or onsite) is designed for developers, engineers, and architects who wish to apply MSTG testing principles, processes, techniques, and tools to secure their mobile applications and services.
Upon completion of this training, participants will be able to:
- Evaluate testing techniques to strategically plan effective security testing implementation within the development lifecycle.
- Execute testing techniques to identify and assess common vulnerabilities and risks in mobile applications.
- Conduct various security testing processes to protect their Android and iOS mobile applications.
OWASP Top 10 2025
14 HoursThis instructor-led live training in Czech Republic (online or on-site) is aimed at web developers and leaders who wish to explore and implement the OWASP Top 10 reference standard to secure their web applications.
By the end of this training, participants will be able to strategize, implement, secure, and monitor their web applications and services using the OWASP Top 10 document.
Secure Developer Java (Inc OWASP)
21 HoursThis course explores secure coding principles and practices for Java, utilizing the testing methodologies of the Open Web Application Security Project (OWASP). The Open Web Application Security Project is a global community dedicated to producing freely accessible articles, methodologies, documentation, tools, and technologies focused on web application security.
Secure Developer .NET (Inc OWASP)
21 HoursThis course delves into secure coding concepts and principles for ASP.NET, utilizing the testing methodology of the Open Web Application Security Project (OWASP). OWASP is an online community that provides freely accessible articles, methodologies, documentation, tools, and technologies focused on web application security.
The course explores the security features of the .NET Framework and demonstrates how to secure web applications.