Application Security for Developers Training Course
Application security forms a vital component of contemporary software development, guaranteeing that applications are constructed to endure security threats and vulnerabilities.
This instructor-led, live training (available online or onsite) targets intermediate to advanced developers aiming to comprehend and implement secure coding practices, detect security risks within software, and establish defences against cyber threats.
Upon completing this training, participants will be capable of:
- Gaining insight into prevalent security vulnerabilities in web and software applications.
- Analyzing security threats and the exploit techniques employed by attackers.
- Implementing secure coding practices to mitigate security risks.
- Utilizing security testing tools to identify and resolve vulnerabilities.
Course Format
- Interactive lectures and discussions.
- Ample exercises and practical application.
- Hands-on implementation within a live lab environment.
Course Customisation Options
- To arrange a customised training session for this course, please contact us.
Course Outline
Introduction to Application Security
- The importance of application security in modern software development
- Overview of common cyber threats and attack vectors
- Understanding security risks in web and mobile applications
Secure Software Development Lifecycle (SDLC)
- Integrating security into each phase of development
- Threat modeling and risk assessment
- Automated security testing in CI/CD pipelines
Understanding Common Security Vulnerabilities
- Introduction to OWASP Top 10 security risks
- Common coding flaws that lead to vulnerabilities
- Exploiting insecure applications (hands-on exercises with DVWA/WebGoat)
Input Validation and Secure Coding Practices
- Preventing SQL injection, cross-site scripting (XSS), and command injection
- Best practices for input sanitization and validation
- Implementing secure authentication and authorization mechanisms
Session Management and Data Protection
- Handling session security: cookies, tokens, and JWT best practices
- Data encryption techniques and secure storage
- Secure API development and protection against API abuses
Security Testing and Vulnerability Assessment
- Using OWASP ZAP and Burp Suite for security testing
- Static and dynamic application security testing (SAST/DAST)
- Penetration testing fundamentals for developers
Implementing Secure DevOps (DevSecOps)
- Security automation in DevOps workflows
- Container security and securing cloud applications
- Incident response and security monitoring
Summary and Next Steps
- Key takeaways from the course
- Resources for further learning
- Q&A and closing remarks
Requirements
- Foundational knowledge of any programming language
- Experience in application development
Target Audience
- Software developers
- Application security engineers
- DevOps and security teams
Need help picking the right course?
southafrica@nobleprog.co.za or +27 (0)10 005 5793
Application Security for Developers Training Course - Enquiry
Testimonials (1)
Lot's of information explained very well. Good examples, interesting exercises. Trainer showed us his real world experience.
Gergely Batho - GE Medical Systems Polska Sp. Z O.O.
Course - Application Security for Developers
Upcoming Courses
Related Courses
ABAP Secure code
14 HoursUpon completion of this training, participants will be able to:
- Explain the concepts of application security and vulnerabilities
- Describe ABAP programming best practices and the handling of SY-SUBRC
- Understand injection vulnerabilities
- Describe security testing tools
- Explain ATC and CVA
Course Format
- Interactive lectures and discussions
- Extensive exercises and practice sessions
- Hands-on implementation in a live-lab environment
Applications Security Foundation
21 HoursThis programme equips web application developers with essential secure coding practices. Students will learn secure programming concepts by analysing specific code snippets to identify vulnerabilities and implement effective fixes.
Through demonstrations of real-world attacks and their prevention, participants will build confidence in enhancing the security of their applications.
Duration: 3 days
Target Audience: Developers seeking to deepen their expertise in secure coding.
Learning Outcomes
• Upon completion, students will gain knowledge in:
• Web Application Security.
• Common Web Application Risks.
• Demo Web Application Penetration Testing.
• Data Validation.
• Authentication.
• Session Management.
• Secure SDLC.
Network Security and Secure Communication
21 HoursImplementing a secure networked application can be challenging, even for developers who have previously worked with cryptographic building blocks such as encryption and digital signatures. To help participants grasp the role and application of these cryptographic primitives, the course begins by establishing a solid foundation on the core requirements of secure communication – including secure acknowledgment, integrity, confidentiality, remote identification, and anonymity. It also highlights common issues that can undermine these requirements, alongside practical real-world solutions.
Given that cryptography is a critical aspect of network security, the course covers the most important algorithms in symmetric cryptography, hashing, asymmetric cryptography, and key agreement. Rather than diving into deep mathematical theory, these concepts are presented from a developer’s perspective, featuring typical use-case examples and practical considerations such as public key infrastructures. Security protocols used across various areas of secure communication are introduced, with an in-depth focus on widely adopted protocol families like IPSEC and SSL/TLS.
The course examines typical crypto vulnerabilities related to specific cryptographic algorithms and protocols, such as BEAST, CRIME, TIME, BREACH, FREAK, Logjam, Padding oracle, Lucky Thirteen, POODLE, and the RSA timing attack. For each issue, the practical implications and potential consequences are clearly described, avoiding complex mathematical derivations.
Finally, since XML technology is central to data exchange for networked applications, the security aspects of XML are thoroughly explored. This includes the use of XML within web services and SOAP messages, alongside protection mechanisms like XML Signature and XML Encryption. The discussion also covers weaknesses in these protection measures and XML-specific security issues, such as XML injection, XML external entity (XXE) attacks, XML bombs, and XPath injection.
Participants attending this course will
- Understand fundamental concepts of security, IT security, and secure coding
- Grasp the requirements of secure communication
- Learn about network attacks and defences across different OSI layers
- Develop a practical understanding of cryptography
- Comprehend essential security protocols
- Gain insight into recent attacks targeting cryptosystems
- Learn about some recent related vulnerabilities
- Understand the security concepts underpinning web services
- Access resources and further reading materials on secure coding practices
Audience
Developers, Professionals
C/C++ Secure Coding
21 HoursDeveloping secure C and C++ code demands rigorous defence against malicious exploitation, memory corruption, and input validation bypasses. This programme explores vulnerability patterns such as buffer overflows, use-after-free errors, integer overflows, and type confusion. Participants apply secure coding guidelines, static analysis tools, and defensive programming techniques to eliminate weaknesses, enforce input sanitization, and deliver hardened software resilient against cyberattacks.
Advanced Java Security
21 HoursEven seasoned Java developers often do not fully master the array of security services provided by Java, nor are they always aware of the various vulnerabilities relevant to Java-based web applications.
In addition to introducing the security components of Standard Java Edition, this course addresses security challenges within Java Enterprise Edition (JEE) and web services. The discussion of specific services is grounded in the fundamentals of cryptography and secure communication. Through a series of practical exercises, participants explore declarative and programmatic security techniques in JEE, as well as transport-layer and end-to-end security for web services. This approach allows participants to apply the discussed APIs and tools hands-on.
The course also examines and explains the most common and severe programming flaws in the Java language and platform, alongside web-related vulnerabilities. Beyond typical errors made by Java programmers, the covered security vulnerabilities address both language-specific issues and problems arising from the runtime environment. These vulnerabilities and their associated attacks are demonstrated through accessible exercises, followed by recommended coding guidelines and mitigation strategies.
Participants attending this course will
- Grasp the fundamental concepts of security, IT security, and secure coding.
- Learn about web vulnerabilities beyond the OWASP Top Ten and understand how to prevent them.
- Comprehend the security concepts underlying web services.
- Gain proficiency in using the various security features of the Java development environment.
- Develop a practical understanding of cryptography.
- Understand the security solutions offered by Java EE.
- Learn about common coding mistakes and how to avoid them.
- Receive insights into recent vulnerabilities within the Java framework.
- Acquire practical experience with security testing tools.
- Access resources and further reading materials on secure coding practices.
Audience
Developers
Standard Java Security: Secure Coding & Development Practices
14 HoursDescription
The Java language and its Runtime Environment (JRE) were engineered to eliminate many of the critical security vulnerabilities commonly found in languages such as C and C++. However, software developers and architects must not only master the positive security features available within the Java ecosystem but also remain vigilant about the negative security aspects, understanding the numerous vulnerabilities that still pose risks to Java development.
The course introduces essential security services by first providing a concise overview of cryptographic foundations. This establishes a common baseline for understanding the purpose and operation of relevant components. Participants will engage in several practical exercises to actively explore and test these discussed APIs.
Furthermore, the curriculum thoroughly examines the most frequent and severe programming flaws associated with the Java language and platform. This includes typical errors made by Java programmers as well as issues specific to the language and its environment. All vulnerabilities and corresponding attacks are demonstrated through accessible exercises, followed by recommended coding guidelines and mitigation techniques.
Participants attending this course will
- Grasp the fundamental concepts of security, IT security, and secure coding
- Understand web vulnerabilities extending beyond the OWASP Top Ten and learn how to prevent them
- Acquire the skills to utilise various security features within the Java development environment
- Develop a practical understanding of cryptography
- Learn to identify typical coding mistakes and understand how to avoid them
- Gain insights into recent vulnerabilities affecting the Java framework
- Access sources and further reading materials on secure coding practices
Audience
Developers
.NET, C# and ASP.NET Security Development
14 HoursToday, developers have access to various programming languages capable of compiling code for the .NET and ASP.NET frameworks. While this environment offers robust tools for security development, it is crucial for developers to understand how to apply architectural and coding-level techniques to implement effective security measures, avoid vulnerabilities, and limit potential exploitation.
This course aims to equip developers with the skills to prevent untrusted code from executing privileged actions through numerous hands-on exercises. Participants will learn to protect resources via strong authentication and authorization, manage remote procedure calls, handle sessions, and explore various implementation strategies for specific functionalities.
The course introduces various vulnerabilities by highlighting typical programming errors made when using .NET. The discussion on ASP.NET vulnerabilities covers the impact of different environment settings. Furthermore, the section on ASP.NET-specific vulnerabilities addresses general web application security challenges alongside specialized issues and attack vectors, such as ViewState attacks and string termination exploits.
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 how to mitigate them
- Utilise the various security features available in the .NET development environment
- Acquire practical skills in using security testing tools
- Recognise common coding mistakes and understand how to prevent them
- Gain insights into recent vulnerabilities affecting .NET and ASP.NET
- Access sources 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 fortify their applications against modern internet-based threats. The curriculum explores web vulnerabilities through practical PHP 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. PHP-specific vulnerabilities are categorised 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 problems. For the latter, the course examines attacks like open_basedir circumvention, denial-of-service via magic floats, and hash table collision attacks. In every instance, participants will learn the critical techniques and functions required to mitigate these risks.
A significant focus is placed on client-side security, addressing vulnerabilities in JavaScript, Ajax, and HTML5. The course introduces key PHP security extensions, such as hash, mcrypt, and OpenSSL for cryptography, as well as Ctype, ext/filter, and HTML Purifier for input validation. Best practices for hardening are discussed in the context of PHP configuration (php.ini), Apache, and general server management. Finally, an overview of various security testing tools and techniques is provided, enabling developers and testers to utilise security scanners, penetration testing, exploit packs, sniffers, proxy servers, fuzzing tools, and static source code analyzers.
Both the introduction to vulnerabilities and the configuration practices are reinforced by a series of hands-on exercises. These demonstrations illustrate the impact of successful attacks, show how to apply mitigation techniques, and guide participants through the use of various extensions and tools.
Participants attending this course will
- Grasp the fundamental concepts of security, IT security, and secure coding
- Learn about web vulnerabilities beyond the OWASP Top Ten and understand how to avoid them
- Gain knowledge of client-side vulnerabilities and secure coding practices
- Develop a practical understanding of cryptography
- Learn to utilise various PHP security features
- Identify common coding mistakes and learn how to prevent them
- Stay informed about recent vulnerabilities affecting the PHP framework
- Acquire practical experience in using security testing tools
- Access sources and further reading on secure coding practices
Audience
Developers
Microsoft SDL Core
14 HoursThe Combined SDL Core training provides an in-depth look at secure software design, development, and testing via the Microsoft Secure Development Lifecycle (SDL). This course offers a level 100 overview of the fundamental building blocks of the SDL, followed by design techniques to help you detect and fix flaws in the early stages of the development process.
During the development phase, the course provides an overview of typical security-relevant programming bugs found in both managed and native code. Attack methods are presented for the discussed vulnerabilities, along with associated mitigation techniques, all explained through a number of hands-on exercises providing live hacking fun for the participants. The introduction of different security testing methods is followed by demonstrating the effectiveness of various testing tools. Participants can understand the operation of these tools through a number of practical exercises by applying the tools to the already discussed vulnerable code.
Participants attending this course will
Understand basic concepts of security, IT security and secure coding
Get known to the essential steps of Microsoft Secure Development Lifecycle
Learn secure design and development practices
Learn about secure implementation principles
Understand security testing methodology
- Get sources and further readings on secure coding practices
Audience
Developers, Managers
CYBERSECURE CODER (CSC)
21 HoursThis course caters to individuals such as software developers, testers, and architects involved in creating software using different programming languages and platforms like desktop, web, cloud, and mobile. It aims to enhance their capacity to produce software of superior quality, with a special focus on security and privacy aspects.
DevOps Security: Creating a DevOps Security Strategy
7 HoursIn this instructor-led, live course in South Africa, participants will learn how to formulate the proper security strategy to face the DevOps security challenge.
EC-Council Certified DevSecOps Engineer (ECDE)
28 HoursThe EC-Council Certified DevSecOps Engineer (ECDE) is a practical course designed to empower professionals with the expertise to embed security throughout the DevOps lifecycle, facilitating secure software development from the initial planning stages through to deployment.
This instructor-led live training, available either online or onsite, targets intermediate-level software and DevOps professionals aiming to integrate security practices into their CI/CD pipelines, thereby ensuring the delivery of secure and compliant code.
Upon completion of this training, participants will be equipped to:
- Grasp the core principles and practices of DevSecOps.
- Secure every stage of the CI/CD pipeline using automated tools.
- Implement secure coding standards and conduct vulnerability scanning.
- Prepare for the ECDE certification through practical labs and comprehensive review.
Course Format
- Interactive lectures and discussions.
- Hands-on application of DevSecOps tools within simulated pipelines.
- Guided exercises emphasising secure development and deployment techniques.
Course Customization Options
- To arrange customized training tailored to your team’s workflows or toolchain, please contact us.
How to Write Secure Code
35 HoursThis course aims to assist with the following:
- Enable developers to master secure coding techniques.
- Equip software testers to assess application security prior to deployment.
- Assist software architects in understanding application-related risks.
- Support team leaders in establishing security baselines for developers.
- Guide web masters in configuring servers to prevent misconfigurations.
Secure Developer Java (Inc OWASP)
21 HoursThis course explores secure coding principles and concepts for Java, applying the testing methodologies of the Open Web Application Security Project (OWASP). The Open Web Application Security Project is a global community dedicated to providing 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 using ASP.NET, grounded in the Open Web Application Security Project (OWASP) testing methodology. OWASP is an online community that develops freely available articles, methodologies, documentation, tools, and technologies focused on web application security.
This course examines the security features of the .NET Framework and illustrates how to protect web applications effectively.