Advanced Java, JEE and Web Application Security Training Course
For experienced Java developers, moving beyond basic proficiency in Java components requires a comprehensive understanding of web-related vulnerabilities affecting both server and client sides. This includes mastering the specific risks inherent in Java-written web applications and comprehending the implications of these threats.
The course demonstrates general web-based vulnerabilities through relevant attack vectors, while simultaneously explaining recommended coding techniques and mitigation strategies within the context of Java. The primary goal is to help developers avoid associated problems. Additionally, special emphasis is placed on client-side security, addressing security challenges related to JavaScript, Ajax, and HTML5.
Participants will explore the security components of Standard Java Edition, starting with the foundations of cryptography to establish a common baseline for understanding the purpose and operation of applicable components. Security issues within Java Enterprise Edition (JEE) are illustrated through various exercises that explain both declarative and programmatic security techniques.
Finally, the course addresses the most frequent and severe programming flaws in the Java language and platform. In addition to typical errors made by Java programmers, the discussed vulnerabilities cover both language-specific issues and problems arising from the runtime environment. All vulnerabilities and corresponding attacks are demonstrated through accessible exercises, followed by recommended coding guidelines and potential mitigation techniques.
Participants attending this course will
- Understand fundamental concepts of security, IT security, and secure coding.
- Learn about web vulnerabilities extending beyond the OWASP Top Ten and understand how to prevent them.
- Acquire knowledge of client-side vulnerabilities and secure coding practices.
- Learn to utilize various security features available in the Java development environment.
- Gain a practical understanding of cryptography.
- Understand the security concepts underlying web services.
- Comprehend the security solutions provided by Java EE.
- Learn about common coding mistakes and strategies to avoid them.
- Receive information regarding recent vulnerabilities within the Java framework.
- Acquire practical skills in using security testing tools.
- Access sources and further reading materials on secure coding practices.
Course Outline
- IT security and secure coding
- Web application security
- Client-side security
- Client-side security
- Foundations of Java security
- Practical cryptography
- Java security services
- Security of web services
- XML security
- JSON security
- Java EE security
- Common coding errors and vulnerabilities
- Principles of security and secure coding
- Knowledge sources
Requirements
Audience
- Developers
Open Training Courses require 5+ participants.
Advanced Java, JEE and Web Application Security Training Course - Booking
Advanced Java, JEE and Web Application Security Training Course - Enquiry
Advanced Java, JEE 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
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 lack a comprehensive grasp of the security services provided by Java and the various vulnerabilities that affect web applications built with it.
This course not only introduces the security components of the Standard Java Edition but also addresses security concerns within Java Enterprise Edition (JEE) and web services. The discussion begins with the fundamentals of cryptography and secure communication before diving into specific services. Various exercises cover both declarative and programmatic security techniques in JEE, as well as transport-layer and end-to-end security for web services. Participants engage in practical exercises to explore and apply the discussed APIs and tools firsthand.
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 bugs made by Java programmers, the security vulnerabilities covered include language-specific issues and problems arising from the runtime environment. All vulnerabilities and associated attacks are demonstrated through accessible exercises, followed by recommended coding guidelines and mitigation techniques.
Participants attending this course will
- Comprehend the core concepts of security, IT security, and secure coding.
- Learn about web vulnerabilities beyond the OWASP Top Ten and understand 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.
- Understand the security solutions offered by Java EE.
- Learn about typical coding mistakes and how to prevent them.
- Gain insights into recent vulnerabilities within the Java framework.
- Acquire practical knowledge in using security testing tools.
- Access resources and further readings on secure coding practices.
Audience
Developers
Standard Java Security: Secure Coding & Development Practices
14 HoursDescription
The Java programming language and its Runtime Environment (JRE) were engineered to eliminate many of the common, critical security vulnerabilities found in other languages, such as C and C++. However, software developers and architects must do more than simply utilize Java's security features (positive security); they must also recognize and mitigate the numerous vulnerabilities that remain relevant to Java development (negative security).
Before introducing security services, the course provides a concise overview of cryptographic foundations, establishing a shared baseline for understanding the purpose and functionality of the relevant components. Participants will apply their knowledge through several practical exercises, allowing them to experiment with the discussed APIs firsthand.
The curriculum also examines and explains the most frequent and severe programming flaws inherent to the Java language and platform. This includes both typical errors made by Java developers and issues specific to the language and its environment. Each vulnerability and its associated attack vectors are demonstrated through accessible exercises, followed by recommended coding guidelines and effective mitigation strategies.
Participants attending this course will
- Grasp the fundamental concepts of security, IT security, and secure coding.
- Identify 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.
- Gain a practical understanding of cryptography.
- Recognize typical coding mistakes and learn how to avoid them.
- Stay informed about recent vulnerabilities affecting the Java framework.
- Receive sources and further reading materials on secure coding practices.
Audience
Developers
.NET, C# and ASP.NET Security Development
14 HoursToday, numerous programming languages can compile code for the .NET and ASP.NET frameworks. This environment offers robust tools for security development; however, developers must understand how to apply architectural and coding-level techniques to implement the desired security measures, prevent vulnerabilities, or mitigate their exploitation.
This course aims to equip developers with the skills to prevent untrusted code from executing privileged actions, protect resources via strong authentication and authorization, facilitate remote procedure calls, manage sessions, and explore various implementation options through extensive hands-on exercises.
The introduction of vulnerabilities begins by highlighting common programming errors specific to .NET. The discussion on ASP.NET vulnerabilities also covers various environment settings and their impact. Furthermore, the topic of ASP.NET-specific vulnerabilities addresses general web application security challenges as well as 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
- Learn about web vulnerabilities beyond the OWASP Top Ten and understand 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 reading materials on secure coding practices
Audience
Developers
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
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.
Quarkus for Developers
14 HoursThis instructor-led live training in Bulgaria (online or onsite) is aimed at developers who wish to use Quarkus to build, test, and deploy applications, fully-powered with Java, but with less resource utilization.
By the end of this training, participants will be able to:
- Set up the necessary development environment to start developing applications with Quarkus.
- Build, compile, and run applications in native mode using GraalVM.
- Utilize Quarkus tooling and extensions for building native applications using Maven.
- Containerize, execute, and deploy applications with Docker.
Quarkus for Java Native and Microservice Development
40 HoursThis instructor-led, live training in Bulgaria (online or onsite) is aimed at intermediate-level to advanced-level developers and architects who wish to develop Java native applications and microservices using Quarkus with optimized memory usage and startup time.
By the end of this training, participants will be able to:
- Develop high-performance, lightweight Java native applications using Quarkus.
- Build and deploy RESTful services and microservices architectures.
- Use GraalVM for native compilation and optimize startup and memory efficiency.
- Package and containerize applications for Kubernetes and OpenShift environments.
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.
Secure Developer .NET (Inc OWASP)
21 HoursThis course delves into secure coding principles and best practices using ASP.NET, guided by the Open Web Application Security Project (OWASP) testing methodology. OWASP is a vibrant online community dedicated to producing freely accessible articles, methodologies, documentation, tools, and technologies focused on web application security.
The course explores the security features of the .NET Framework and provides strategies for securing web applications.