Even seasoned programmers do not necessarily master all the security services provided by their development platforms, nor are they always aware of the vulnerabilities relevant to their specific projects. This course is designed for developers working with both Java and PHP, equipping them with the essential skills needed to make their applications resilient against modern internet-based attacks.
The course explores the levels of Java security architecture by addressing access control, authentication, authorization, secure communication, and various cryptographic functions. It also introduces key APIs for securing PHP code, such as OpenSSL for cryptography and HTML Purifier for input validation. Server-side best practices are provided for hardening and configuring the operating system, web container, file system, SQL server, and PHP itself, with a special emphasis on client-side security issues related to JavaScript, Ajax, and HTML5.
General web vulnerabilities are discussed through examples aligned with the OWASP Top Ten, covering injection attacks, script injections, session handling attacks, insecure direct object references, file upload issues, and more. The course introduces Java- and PHP-specific language problems and issues arising from the runtime environment, grouped into standard vulnerability types such as missing or improper input validation, incorrect use of security features, flawed error and exception handling, time- and state-related problems, code quality issues, and mobile code-related vulnerabilities.
Participants will have the opportunity to experiment with the discussed APIs, tools, and configuration effects firsthand. Each introduction to vulnerabilities is supported by hands-on exercises that demonstrate the consequences of successful attacks, show how to correct bugs and apply mitigation techniques, and introduce the use of various extensions and tools.
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 know how to avoid them
- Gain knowledge of client-side vulnerabilities and secure coding practices
- Learn to utilize various security features of the Java development environment
- Develop a practical understanding of cryptography
- Learn to use various security features of PHP
- Understand security concepts of web services
- Acquire practical knowledge in using security testing tools
- Learn about typical coding mistakes and how to avoid them
- Stay informed about recent vulnerabilities in Java and PHP frameworks and libraries
- Receive resources and further reading on secure coding practices
Audience
Developers
Read more...