Java, JEE and Web application security

Intra-company training

Who is the training for?

All public

Level reached

Advanced

Duration

3,00 day(s)

Language(s) of service

EN

Prerequisites

Advanced Java and Web application

Goals

Beyond a solid knowledge in using Java components, even for experienced Java programmers it is essential to have a deep knowledge in Web-related vulnerabilities both on server and client side, the different vulnerabilities that are relevant for Web applications written in Java, and the consequences of the various risks.

General web-based vulnerabilities are demonstrated through presenting the relevant attacks, while the recommended coding techniques and mitigation methods are explained in the context of Java with the most important aim to avoid the associated problems. In addition, a special focus is given to client-side security tackling security issues of JavaScript, Ajax and HTML5.

The course introduces security components of Standard Java Edition, which is preceded with the foundations of cryptography, providing a common baseline for understanding the purpose and the operation of the applicable components. Security issues of Java Enterprise Edition are presented through various exercises explaining both declarative and programmatic security techniques in JEE.

Finally, the course explains the most frequent and severe programming flaws of the Java language and platform. Besides the typical bugs committed by Java programmers, the introduced security vulnerabilities cover both language-specific issues and problems stemming from the runtime environment. All vulnerabilities and the relevant attacks are demonstrated through easy-to-understand exercises, followed by the recommended coding guidelines and the possible mitigation techniques.

Contents

Web vulnerabilities:

  • OWASP top 10 and beyond: SQL Injection and other injection flaws
  • Cross-Site Scripting: persistent and reflected XSS, Cross-Site Request Forgery (CSRF), malicious file execution, Insecure Direct Object Reference, uploading executable files.

Client-side security:

  • JavaScript same origin policy, authentication and password management in JavaScript, obfuscating JavaScript code, ClickJacking
  • Ajax security, XSS and CSRF in Ajax
  • HTML5 ClickJacking, form tampering, cross-origin requests, client-side include

Java security technologies and services:

  • Java language security solutions, Java Virtual Machine (JVM) and Java Runtime Environment (JRE)
  • ByteCode Verifier and Classloader
  • Security Manager and Access Controller, managing permissions with the PolicyTool; Java Cryptography Architecture (JCA) and Java

These courses might interest you