Node.JS and Web Application Security Training Course
As a developer, your responsibility is to craft code that is virtually impenetrable.
Imagine this: despite your best efforts, the code you have written throughout your career is riddled with vulnerabilities you were unaware of. While you are reading these words, hackers might be actively trying to breach your systems. How likely are they to succeed? What if they were able to steal your database and sell it on the dark web?
This web application security course will transform your perspective on coding. Through hands-on training, we will reveal all the tactics used by attackers and teach you how to counter them, leaving you with an insatiable desire to learn more.
You have the power to stay ahead of the curve and establish yourself as a key player in the battle against cybercrime.
Participants will:
- Grasp the fundamental concepts of security, IT security, and secure coding.
- Explore web vulnerabilities beyond the OWASP Top Ten and learn how to prevent them.
- Understand client-side vulnerabilities and secure coding practices.
- Gain insights into Node.js security.
- Learn about MongoDB security.
- Develop a practical understanding of cryptography.
- Comprehend essential security protocols.
- Understand the security concepts of web services.
- Study JSON security.
- Acquire practical skills in using security testing techniques and tools.
- Learn how to address vulnerabilities in the platforms, frameworks, and libraries used.
- Receive resources and further reading materials on secure coding practices.
Course Outline
- IT security and secure coding
- Web application security
- Client-side security
- Node.js security
- Practical cryptography
- Security protocols
- Denial of service
- Security of web services
- JSON security
- Other common programming mistakes
- Security testing
- Deployment environment
- Knowledge sources
Requirements
Basic web application development knowledge
Open Training Courses require 5+ participants.
Node.JS and Web Application Security Training Course - Booking
Node.JS and Web Application Security Training Course - Enquiry
Node.JS and Web Application Security - Consultancy Enquiry
Testimonials (3)
Experience sharing, it's teacher's know-how and valuable.
Carey Fan - Logitech
Course - C/C++ Secure Coding
the knowledge of the trainer was very high - he knew what he was talking about, and knew the answers to our questions
Adam - Fireup.PRO
Course - Advanced Java Security
The topic is current and I needed to be updated
Damilano Marco - SIAP s.r.l.
Course - Secure Developer Java (Inc OWASP)
Upcoming Courses
Related Courses
Android Security
14 HoursAndroid serves as an open platform for mobile devices, including smartphones and tablets. While it offers a wide array of security features to facilitate the development of secure software, it also lacks certain security aspects found in other mobile platforms. This course provides a thorough examination of these features, highlighting critical shortcomings associated with the underlying Linux system, the file system, and the general environment, as well as the use of permissions and other Android software development components.
Typical security pitfalls and vulnerabilities are explained for both native code and Java applications, accompanied by recommendations and best practices to prevent and mitigate them. Many of the discussed issues are illustrated with real-life examples and case studies. Finally, we provide a brief overview of how to utilize security testing tools to identify security-related programming bugs.
Participants attending this course will
- Understand fundamental concepts of security, IT security, and secure coding
- Learn about security solutions on Android
- Learn to utilize various security features of the Android platform
- Gain information about recent vulnerabilities in Java on Android
- Learn about common coding mistakes and how to avoid them
- Understand native code vulnerabilities on Android
- Realize the severe consequences of insecure buffer handling in native code
- Understand architectural protection techniques and their weaknesses
- Access sources and further readings on secure coding practices
Audience
Professionals
Network Security and Secure Communication
21 HoursBuilding a secure networked application presents challenges even for developers familiar with cryptographic building blocks like encryption and digital signatures. To help participants grasp the role and application of these primitives, the course begins by establishing a strong foundation in the core requirements of secure communication—specifically secure acknowledgment, integrity, confidentiality, remote identification, and anonymity. It also highlights common threats to these requirements alongside practical, real-world solutions.
Given that cryptography is central to network security, the curriculum covers key algorithms in symmetric cryptography, hashing, asymmetric cryptography, and key agreement. Rather than focusing on complex mathematics, these topics are explored from a developer's perspective, featuring typical use-case examples and practical considerations such as the implementation of public key infrastructures. The course introduces security protocols used across various domains of secure communication, with a detailed examination of widely adopted protocol families like IPSEC and SSL/TLS.
Typical cryptographic vulnerabilities are examined, covering both specific algorithms and protocols. Topics include the BEAST, CRIME, TIME, BREACH, FREAK, Logjam, Padding oracle, Lucky Thirteen, and POODLE attacks, as well as the RSA timing attack. For each issue, the practical implications and potential consequences are described without delving into deep mathematical theory.
Finally, since XML technology is pivotal for data exchange in networked applications, the course addresses XML security. This includes the use of XML in web services and SOAP messages, along with protective measures like XML signature and XML encryption. It also covers weaknesses in these protection mechanisms 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
- Comprehend the requirements of secure communication
- Learn about network attacks and defenses across different OSI layers
- Gain practical knowledge of cryptography
- Understand essential security protocols
- Recognize recent attacks targeting cryptosystems
- Learn about relevant recent vulnerabilities
- Understand security concepts in Web services
- Access sources and further reading on secure coding practices
Audience
Developers, Professionals
C/C++ Secure Coding
21 HoursSpanning three days, this course provides a foundational understanding of how to protect C/C++ code from malicious exploitation, particularly focusing on vulnerabilities related to memory management and input handling. Participants will learn the core principles essential for writing robust and secure code.
Advanced Java Security
21 HoursEven seasoned Java developers often do not fully master the full range of security services provided by Java, nor are they always aware of the various vulnerabilities relevant to Java-based web applications.
This course not only introduces the security components of the Standard Java Edition but also addresses security challenges within Java Enterprise Edition (JEE) and web services. Before diving into specific services, it establishes a foundation in cryptography and secure communication. Through various exercises, the course covers both declarative and programmatic security techniques in JEE, as well as transport-layer and end-to-end security for web services. Participants gain hands-on experience with the discussed APIs and tools through practical exercises.
The course also examines and explains the most common and severe programming flaws in the Java language and platform, as well as web-related vulnerabilities. Beyond typical errors made by Java developers, the covered security vulnerabilities include both language-specific issues and problems arising from the runtime environment. Each vulnerability and corresponding attack vector is demonstrated through clear, easy-to-understand exercises, followed by recommended coding guidelines and possible mitigation strategies.
Participants attending this course will
- Grasp fundamental concepts of security, IT security, and secure coding
- Identify web vulnerabilities beyond the OWASP Top Ten and learn how to avoid them
- Understand the security concepts underlying web services
- Learn to utilize various security features within the Java development environment
- Gain a practical understanding of cryptography
- Comprehend the security solutions offered by Java EE
- Recognize typical coding mistakes and learn how to prevent them
- Receive information on recent vulnerabilities affecting the Java framework
- Acquire practical knowledge of security testing tools
- Access sources and further readings on secure coding practices
Audience
Developers
Standard Java Security
14 HoursDescription
The Java programming language and the Java Runtime Environment (JRE) were engineered to eliminate many of the critical security vulnerabilities commonly found in other 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 numerous residual vulnerabilities that still impact Java development (negative security).
This course begins with a concise overview of cryptography fundamentals, establishing a common baseline for understanding the purpose and functionality of relevant components. Participants will then apply these concepts through practical exercises, allowing them to experiment with the discussed APIs firsthand.
The curriculum also examines the most frequent and severe programming flaws inherent to the Java language and platform. It covers both typical errors made by Java developers and issues specific to the language and its environment. Each vulnerability and associated attack vector is illustrated through clear, accessible exercises, followed by recommended coding guidelines and effective mitigation strategies.
Participants attending this course will
- Comprehend the fundamental concepts of security, IT security, and secure coding
- Gain insights into web vulnerabilities beyond the OWASP Top Ten and learn how to prevent them
- Acquire the skills to utilize various security features within the Java development environment
- Develop a practical understanding of cryptography
- Identify typical coding mistakes and learn strategies to avoid them
- Stay informed about recent vulnerabilities within the Java framework
- Access resources and further reading materials on secure coding practices
Audience
Developers
.NET, C# and ASP.NET Security Development
14 HoursToday, numerous programming languages enable the compilation of code for the .NET and ASP.NET frameworks. While this environment offers robust tools for security development, developers must understand how to apply architecture-level and coding-level techniques to implement effective security measures, prevent vulnerabilities, and limit their potential exploitation.
This course aims to equip developers with practical skills through extensive hands-on exercises. Participants will learn to prevent untrusted code from executing privileged actions, safeguard resources via strong authentication and authorization, manage remote procedure calls and sessions, explore various functional implementations, and much more.
The introduction of vulnerabilities begins by highlighting typical programming errors made when using .NET. The discussion on ASP.NET vulnerabilities covers diverse environment settings and their impacts. Furthermore, the course addresses ASP.NET-specific vulnerabilities, not only tackling general web application security challenges but also specialized issues and attack methods, such as ViewState attacks and string termination attacks.
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 how to avoid them
- Master the use of various security features within the .NET development environment
- Gain practical experience with security testing tools
- Identify typical coding mistakes and learn how to avoid them
- Stay informed about recent vulnerabilities in .NET and ASP.NET
- Access resources and further readings on secure coding practices
Audience
Developers
The Secure Coding Landscape
14 HoursThis course provides an overview of fundamental security concepts, illustrating the nature of vulnerabilities independent of specific programming languages or platforms. It explains how to manage risks related to software security throughout the various stages of the software development lifecycle. Without delving into deep technical specifics, it highlights some of the most prevalent and critical vulnerabilities across different development technologies. Furthermore, it outlines the challenges associated with security testing and introduces techniques and tools that participants can use to identify potential issues in their code.
Participants attending this course will
- Grasp the basic concepts of security, IT security, and secure coding
- Understand web vulnerabilities on both server and client sides
- Recognize the severe consequences of insecure buffer handling
- Gain insights into recent vulnerabilities affecting development environments and frameworks
- Learn about common coding mistakes and strategies to avoid them
- Comprehend security testing approaches and methodologies
Audience
Managers
Secure coding in PHP
21 HoursThis course equips PHP developers with the vital skills needed to shield their applications from modern Internet-based threats. It explores web vulnerabilities through practical PHP examples, extending beyond the OWASP Top Ten to cover a wide array of risks including various injection attacks, script injections, weaknesses in PHP session handling, insecure direct object references, file upload issues, and more. PHP-specific vulnerabilities are categorized into standard vulnerability types such as inadequate or incorrect input validation, flawed error and exception handling, misuse of security features, and time- or state-related problems. Specific attack vectors discussed include open_basedir circumvention, denial-of-service via magic floats, and hash table collision attacks. In each scenario, participants will learn the key 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 essential PHP security extensions, such as 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 with respect to PHP configuration (php.ini settings), Apache, and general server administration. Additionally, the course offers an overview of various security testing tools and methodologies available to developers and testers, including security scanners, penetration testing frameworks, exploit packs, sniffers, proxy servers, fuzzing tools, and static source code analyzers.
Both the explanation of vulnerabilities and the discussion of configuration practices are reinforced by hands-on exercises. These activities demonstrate the impact of successful attacks, illustrate how to implement mitigation strategies, and guide participants through the use of various extensions and tools.
Participants attending this course will
- Grasp fundamental concepts of security, IT security, and secure coding
- Identify web vulnerabilities beyond the OWASP Top Ten and learn how to prevent them
- Understand client-side vulnerabilities and adhere to secure coding practices
- 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 using security testing tools
- Access resources and further reading materials on secure coding practices
Audience
Developers
Microsoft SDL Core
14 HoursThis comprehensive Core training introduces the principles of secure software design, development, and testing via the Microsoft Secure Development Lifecycle (SDL). It offers a Level 100 overview of the SDL's foundational elements, followed by design strategies to identify and rectify flaws during the early phases of the development process.
Focusing on the development phase, the course surveys common security-related programming errors in both managed and native code. It presents attack vectors for the discussed vulnerabilities alongside corresponding mitigation techniques, all illustrated through hands-on exercises that offer participants engaging, live hacking experiences. The introduction to various security testing methods is complemented by demonstrations of the effectiveness of different testing tools. Participants gain insight into the operation of these tools by applying them to previously discussed vulnerable code through practical exercises.
Upon completion of this course, participants will
Grasp fundamental concepts of security, IT security, and secure coding
Become familiar with the essential steps of the Microsoft Secure Development Lifecycle
Acquire skills in secure design and development practices
Learn the principles of secure implementation
Understand security testing methodologies
- Access resources and further reading on secure coding practices
Target Audience
Developers, Managers
Security Testing
14 HoursOnce participants have gained an understanding of various vulnerabilities and attack vectors, they will explore the overarching approach and methodology for conducting security tests, alongside the techniques used to uncover specific weaknesses. Effective security testing begins with comprehensive information gathering regarding the system under evaluation (Target of Evaluation), followed by thorough threat modeling to identify and prioritize all potential threats. This process leads to the development of a risk analysis-driven test plan tailored to the most critical areas.
Security evaluations are integrated into multiple stages of the Software Development Life Cycle (SDLC). Consequently, the course covers design reviews, code reviews, reconnaissance, and information gathering, as well as testing implementation and hardening the environment for secure deployment. Detailed insights are provided into numerous security testing techniques, including taint analysis, heuristic-based code review, static code analysis, dynamic web vulnerability testing, and fuzzing. A variety of tools designed to automate the security evaluation of software products are introduced, complemented by hands-on exercises where these tools are applied to analyze previously discussed vulnerable code. Additionally, real-life case studies are utilized to deepen the understanding of various security flaws.
This course equips testers and QA professionals with the ability to effectively plan and precisely execute security tests, select and utilize the most suitable tools and techniques to uncover even concealed security flaws. It provides essential practical skills that can be immediately applied in daily work scenarios.
Participants attending this course will
- Grasp the fundamental concepts of security, IT security, and secure coding
- Acquire knowledge of Web vulnerabilities beyond the OWASP Top Ten and learn how to prevent them
- Understand client-side vulnerabilities and secure coding practices
- Comprehend security testing approaches and methodologies
- Gain practical expertise in applying security testing techniques and tools
- Access valuable resources and further reading materials on secure coding practices
Audience
Developers, Testers
Secure Web Application Development and Testing
21 HoursProtecting web-accessible applications requires security professionals who are consistently informed about current attack vectors and trends. Numerous technologies and environments facilitate the comfortable development of web applications. Professionals must not only be aware of security issues specific to these platforms but also understand general vulnerabilities that exist regardless of the development tools used.
This course provides an overview of security solutions applicable to web applications, with a special focus on understanding the most critical cryptographic mechanisms. It presents various web application vulnerabilities, covering both server-side aspects (following the OWASP Top Ten) and client-side risks, demonstrated through relevant attacks. This is followed by recommended coding techniques and mitigation strategies to prevent associated issues. The topic of secure coding concludes with a discussion of typical security-related programming errors in the areas of input validation, improper use of security features, and code quality.
Testing plays a vital role in ensuring the security and robustness of web applications. Various approaches—ranging from high-level auditing and penetration testing to ethical hacking—can be employed to uncover diverse types of vulnerabilities. However, to look beyond easily identifiable 'low-hanging fruits,' security testing must be well-planned and properly executed. Remember: while security testers ideally need to find all bugs to protect a system, adversaries only need to discover one exploitable vulnerability to gain access.
Practical exercises will aid in understanding web application vulnerabilities, programming mistakes, and, most importantly, mitigation techniques. Through hands-on trials with various testing tools—including security scanners, sniffers, proxy servers, fuzzing tools, and static source code analyzers—this course equips participants with essential practical skills that can be immediately applied in the workplace.
Participants attending this course will
- Understand basic concepts of security, IT security, and secure coding
- Learn about web vulnerabilities beyond the OWASP Top Ten and how to avoid them
- Learn about client-side vulnerabilities and secure coding practices
- Gain a practical understanding of cryptography
- Understand security testing approaches and methodologies
- Acquire practical knowledge in using security testing techniques and tools
- Stay informed about recent vulnerabilities in various platforms, frameworks, and libraries
- Receive sources and further reading recommendations on secure coding practices
Audience
Developers, Testers
DevOps Security: Creating a DevOps Security Strategy
7 HoursIn this instructor-led live course in Bulgaria, participants will learn to formulate a robust security strategy to tackle DevOps security challenges.
EC-Council Certified DevSecOps Engineer (ECDE)
28 HoursThe EC-Council Certified DevSecOps Engineer (ECDE) program is a practical course aimed at providing professionals with the expertise needed to integrate security measures throughout the entire DevOps lifecycle, thereby facilitating secure software development from the initial planning stages through to final deployment.
Delivered as an instructor-led live training session, available either online or on-site, this course targets intermediate-level software engineers and DevOps practitioners who aim to incorporate robust security protocols into their CI/CD pipelines, ensuring the delivery of secure and compliant code.
Upon completion of this training, participants will be capable of:
- Grasping the core principles and operational practices of DevSecOps.
- Securing each phase of the CI/CD pipeline using automated security tools.
- Applying secure coding methodologies and conducting vulnerability assessments.
- Preparing for the ECDE certification through practical laboratory exercises and comprehensive review.
Course Delivery Format
- Engaging lectures and interactive discussions.
- Practical application of DevSecOps tools within simulated pipeline environments.
- Supervised exercises focused on secure development and deployment strategies.
Customization Options
- For personalized training tailored to your team’s specific workflows or toolchain, please reach out to us to make arrangements.
How to Write Secure Code
35 HoursThis course aims to assist with the following:
- Enabling developers to master secure coding techniques.
- Assisting software testers in assessing application security before production deployment.
- Helping software architects understand application-related risks.
- Guiding team leaders in setting security baselines for developers.
- Assisting web masters in configuring servers to avoid misconfigurations.
Secure Developer Java (Inc OWASP)
21 HoursThis course explores secure coding concepts and principles for Java, utilizing the Open Web Application Security Project (OWASP) testing methodology. OWASP is a global online community dedicated to producing freely available articles, methodologies, documentation, tools, and technologies aimed at enhancing web application security.