Secure coding in PHP Training Course
This course equips PHP developers with the essential skills needed to build applications that are resilient against modern internet-based threats. The curriculum explores web vulnerabilities through PHP-centric 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. These PHP-specific vulnerabilities are categorized 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 issues. For the latter category, the course examines attacks like open_basedir circumvention, denial-of-service via magic float, and hash table collision attacks. In each scenario, participants learn the critical 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 several PHP extensions, including 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 in the context of PHP configuration (php.ini), Apache settings, and general server security. Additionally, the course offers a comprehensive overview of security testing tools and techniques available to developers and testers, such as security scanners, penetration testing methodologies, exploit packs, packet sniffers, proxy servers, fuzzing tools, and static source code analyzers.
The introduction of vulnerabilities and configuration practices is reinforced by numerous hands-on exercises. These exercises demonstrate the impact of successful attacks, illustrate how to implement mitigation strategies, and guide participants in utilizing various extensions and tools effectively.
By the end of this course, participants will
- Grasp the fundamental concepts of security, IT security, and secure coding
- Identify web vulnerabilities beyond the OWASP Top Ten and understand how to prevent them
- Comprehend client-side vulnerabilities and secure coding methodologies
- 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 with security testing tools
- Access resources and further reading materials on secure coding practices
Audience
Developers
This course is available as onsite live training in Czech Republic or online live training.Course Outline
- IT Security and Secure Coding
- Web Application Security
- Web Application Vulnerabilities
- Client-Side Security
- Client-Side Security
- Practical Cryptography
- PHP Security Services
- PHP Environment
- Principles of Security and Secure Coding
- Common Coding Errors and Vulnerabilities
- Security Testing Techniques and Tools
- Knowledge Sources
Open Training Courses require 5+ participants.
Secure coding in PHP Training Course - Booking
Secure coding in PHP Training Course - Enquiry
Secure coding in PHP - Consultancy Enquiry
Testimonials (3)
I genuinely enjoyed the real life examples.
Marios Prokopiou
Course - Secure coding in PHP
All topics were well covered and presented with a lot of examples. Ahmed was very efficient and managed to keep us focused and attracted at all times.
Kostas Bastas
Course - Secure coding in PHP
The subject of the course was very interesting and gave us many ideas.
Anastasios Manios
Course - Secure coding in PHP
Upcoming Courses
Related Courses
AdaBoost Python for Machine Learning
14 HoursThis instructor-led, live training in Czech Republic (online or onsite) is designed for data scientists and software engineers who want to utilize AdaBoost to build boosting algorithms for machine learning using Python.
Upon completion of this training, participants will be able to:
- Set up the necessary development environment to start building machine learning models with AdaBoost.
- Understand the ensemble learning approach and how to implement adaptive boosting.
- Learn how to build AdaBoost models to boost machine learning algorithms in Python.
- Use hyperparameter tuning to increase the accuracy and performance of AdaBoost models.
Network Security and Secure Communication
21 HoursBuilding a secure networked application presents challenges even for developers experienced with cryptographic primitives like encryption and digital signatures. To help participants grasp the role and application of these tools, the course establishes a solid foundation on the core requirements of secure communication: secure acknowledgment, integrity, confidentiality, remote identification, and anonymity. It also highlights common threats to these requirements and presents real-world solutions.
Since cryptography is fundamental to network security, the course examines key algorithms in symmetric cryptography, hashing, asymmetric cryptography, and key agreement. Rather than focusing on deep mathematical theory, the content takes a developer-centric approach, illustrating typical use cases and practical considerations such as public key infrastructures (PKI). The course introduces security protocols across various domains, with a detailed exploration of widely used families like IPSEC and SSL/TLS.
Common cryptographic vulnerabilities are analyzed in relation to specific algorithms and protocols. This includes well-known issues such as BEAST, CRIME, TIME, BREACH, FREAK, Logjam, Padding oracle, Lucky Thirteen, POODLE, and RSA timing attacks. For each, the course outlines practical implications and potential consequences without diving into complex mathematical details.
Given that XML technology is central to data exchange for networked applications, the course also covers XML security. This includes the use of XML in web services and SOAP messages, along with protective measures like XML Signature and XML Encryption. Additionally, it addresses weaknesses in these measures and XML-specific threats such as XML injection, XML External Entity (XXE) attacks, XML bombs, and XPath injection.
Participants attending this course will
- Grasp the fundamental concepts of security, IT security, and secure coding
- Understand the requirements for secure communication
- Learn about network attacks and defenses across different OSI layers
- Gain a practical understanding of cryptography
- Comprehend essential security protocols
- Understand recent attacks targeting cryptosystems
- Receive information on recent related vulnerabilities
- Understand the security concepts underlying web services
- Access resources and further reading on secure coding practices
Audience
Developers, Professionals
C/C++ Secure Coding
21 HoursOver the course of three days, this program introduces the fundamental principles of protecting C and C++ code from malicious exploitation. Participants will learn how to mitigate vulnerabilities arising from memory management and input handling, thereby mastering the core practices necessary for writing secure software.
Advanced Java Security
21 HoursEven seasoned Java developers do not automatically master all the security services provided by Java, nor are they fully aware of the various vulnerabilities that impact Java-based web applications.
This course introduces the security components of Java Standard Edition (Java SE) and addresses security challenges within Java Enterprise Edition (Java EE) and web services. Before exploring specific services, the course covers the fundamentals of cryptography and secure communication. Through practical exercises, participants learn about declarative and programmatic security techniques in Java EE, as well as transport-layer and end-to-end security for web services. All concepts are reinforced through hands-on exercises where participants can experiment with the discussed APIs and tools.
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 errors made by Java developers, the discussed security vulnerabilities encompass both language-specific issues and problems arising from the runtime environment. Each vulnerability and corresponding attack is demonstrated through easy-to-follow exercises, followed by recommended coding guidelines and mitigation strategies.
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 know how to prevent them
- Comprehend the security concepts underlying web services
- Gain proficiency in using various security features of the Java development environment
- Develop a practical understanding of cryptography
- Understand the security solutions available in Java EE
- Identify typical coding mistakes and learn how to avoid them
- Receive information on recent vulnerabilities affecting the Java framework
- Acquire practical knowledge of security testing tools
- Access resources and further readings on secure coding practices
Audience
Developers
Standard Java Security: Secure Coding & Development Practices
14 HoursDescription
While the Java language and its Runtime Environment (JRE) were designed to minimize the most common and severe security vulnerabilities found in languages like C/C++, developers and architects must look beyond simple usage. It is crucial to master the positive security features of the Java environment while remaining vigilant against the numerous vulnerabilities that still affect Java development (negative security).
The course begins by establishing a solid foundation in cryptography, providing participants with the necessary context to understand the purpose and operation of applicable security components. This theoretical knowledge is reinforced through practical exercises, allowing participants to gain hands-on experience with the discussed APIs.
Furthermore, the curriculum explores frequent and severe programming flaws specific to the Java language and platform. By demonstrating vulnerabilities and associated attacks through accessible exercises, followed by recommended coding guidelines and mitigation techniques, the course equips developers with the knowledge to identify and neutralize typical bugs and environment-specific issues.
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 strategies to prevent them.
- Master the use of various security features available within the Java development environment.
- Develop a practical understanding of cryptographic principles and applications.
- Recognize typical coding mistakes and learn how to avoid them.
- Gain insights into recent vulnerabilities affecting the Java framework.
- Access curated sources and further reading materials on secure coding practices.
Audience
Developers
.NET, C# and ASP.NET Security Development
14 HoursToday, numerous programming languages allow code compilation for the .NET and ASP.NET frameworks. While this environment offers robust tools for security development, developers must understand how to apply architectural and coding-level techniques to implement desired security features, avoid vulnerabilities, and limit their exploitation.
This course aims to teach developers, through extensive hands-on exercises, how to prevent untrusted code from executing privileged actions, secure resources via strong authentication and authorization, manage remote procedure calls and sessions, and explore various implementation strategies for different functionalities.
The course introduces various vulnerabilities by first presenting common programming pitfalls in .NET. The discussion on ASP.NET vulnerabilities covers the impact of different environment settings. Furthermore, the section on ASP.NET-specific vulnerabilities addresses both general web application security challenges and specialized issues such as ViewState attacks and string termination attacks.
Participants attending this course will
- Comprehend fundamental concepts of security, IT security, and secure coding
- Understand web vulnerabilities beyond the OWASP Top Ten and learn how to mitigate them
- Utilize various security features available in the .NET development environment
- Gain practical experience with security testing tools
- Recognize common coding errors and learn how to avoid them
- Stay informed about recent vulnerabilities affecting .NET and ASP.NET
- Access resources and further reading materials on secure coding practices
Audience
Developers
Microsoft SDL Core
14 HoursThis consolidated SDL core training provides a comprehensive look at secure software design, development, and testing through the lens of Microsoft's Secure Development Lifecycle (SDL). It offers a level 100 overview of the fundamental building blocks of SDL, followed by design techniques to help identify and resolve flaws in the early stages of the development process.
Focusing on the development phase, the course outlines common security-related programming bugs found in both managed and native code. The curriculum presents attack vectors for discussed vulnerabilities alongside their mitigation techniques, all illustrated through hands-on exercises that offer participants practical, live hacking experiences. The introduction to various security testing methods is followed by demonstrations of the effectiveness of different testing tools. Participants can grasp the operation of these tools through practical exercises, applying them to previously discussed vulnerable code.
Participants attending this course will
Understand the basic concepts of security, IT security, and secure coding
Become familiar with the essential steps of the Microsoft Secure Development Lifecycle
Learn secure design and development practices
Gain knowledge of secure implementation principles
Understand security testing methodology
- Obtain sources and further reading materials on secure coding practices
Audience
Developers, Managers
DevOps Security: Creating a DevOps Security Strategy
7 HoursIn this instructor-led, live course in Czech Republic, participants will learn how to develop an effective security strategy to address DevOps security challenges.
EC-Council Certified DevSecOps Engineer (ECDE)
28 HoursThe EC-Council Certified DevSecOps Engineer (ECDE) course is a practical program designed to empower professionals with the expertise needed to integrate security throughout the DevOps lifecycle, ensuring secure software development from initial planning through to deployment.
This instructor-led training, available online or on-site, targets intermediate-level software developers and DevOps practitioners looking to embed security practices into their CI/CD pipelines, thereby guaranteeing the delivery of secure and compliant code.
Upon completion of this training, participants will be able to:
- Comprehend the core principles and practices of DevSecOps.
- Secure all stages of the CI/CD pipeline using automated tools.
- Apply secure coding standards and execute vulnerability scanning.
- Prepare for the ECDE certification through practical labs and comprehensive reviews.
Course Format
- Interactive lectures and discussions.
- Hands-on experience with DevSecOps tools within simulated pipelines.
- Guided exercises centered on secure development and deployment processes.
Customization Options
- For teams seeking customized training tailored to their specific workflows or toolchains, please contact us to arrange.
Laravel PHP Framework
14 HoursThis instructor-led, live training in Czech Republic introduces the fundamentals of Laravel and walks participants through the creation of a Laravel-based web application.
Laravel Livewire
7 HoursThis instructor-led live training in Czech Republic (online or onsite) is aimed at developers who wish to learn and use Livewire to build modern and dynamic application interfaces.
By the end of this training, participants will be able to:
- Build and test livewire components.
- Build applications using the Livewire library.
- Create dynamic components within PHP.
Laravel and Vue.js
14 HoursThis instructor-led, live training in Czech Republic (online or onsite) is aimed at web developers who wish to use Laravel and Vue.js for fullstack web development.
By the end of this training, participants will be able to:
- Develop web applications with Laravel and Vue.js.
- Integrate the Laravel backend API into Vue.js.
- Deploy a Laravel application.
Laravel: Middleware Development
14 HoursThis instructor-led live training (available online or on-site) is designed for web developers seeking to build middleware and web services in Laravel.
By the end of this training, participants will be able to:
- Use Laravel PHP Artisan to generate code and components.
- Build RESTful APIs in Laravel that can browse, read, edit, add, and delete.
- Filter and sort results based on URL parameters using RESTful APIs.
How to Write Secure Code
35 HoursThis course aims to achieve the following:
- Enable developers to master secure coding techniques.
- Assist software testers in verifying application security before it is deployed to the production environment.
- Help software architects understand the risks associated with their applications.
- Guide team leaders in establishing security baselines for their development teams.
- Support webmasters in configuring servers to avoid misconfigurations.
Secure Developer Java (Inc OWASP)
21 HoursThis course explores secure coding principles and practices for Java, utilizing the testing methodologies of the Open Web Application Security Project (OWASP). The Open Web Application Security Project is a global community dedicated to producing freely accessible articles, methodologies, documentation, tools, and technologies focused on web application security.