Secure coding in PHP Training Course
This course equips PHP developers with the essential skills needed to protect their applications against contemporary internet-based threats. By utilizing PHP-specific examples that extend beyond the OWASP Top Ten, the curriculum covers a wide array of injection attacks, script injections, session handling vulnerabilities, insecure direct object references, file upload issues, and more. PHP vulnerabilities are categorized into standard types such as missing or inadequate input validation, flawed error and exception handling, misuse of security features, and time- or state-related problems. The latter section explores attacks like open_basedir circumvention, denial-of-service via magic floats, and hash table collision attacks. Throughout, participants will become familiar with the key techniques and functions required to mitigate these risks.
A significant focus is placed on client-side security, addressing issues related to JavaScript, Ajax, and HTML5. The course introduces several PHP security extensions, including hash, mcrypt, and OpenSSL for cryptography, as well as Ctype, ext/filter, and HTML Purifier for input validation. Best practices for hardening are discussed in the context of PHP configuration (php.ini), Apache, and general server settings. Additionally, the course provides an overview of various security testing tools and techniques available to developers and testers, such as security scanners, penetration testing kits, exploit packs, sniffers, proxy servers, fuzzing tools, and static source code analyzers.
Both the introduction of vulnerabilities and the configuration practices are reinforced through hands-on exercises. These practical sessions demonstrate the impact of successful attacks, show how to apply mitigation strategies, and introduce the usage of various extensions and tools.
Participants attending this course will
- Understand the fundamental concepts of security, IT security, and secure coding.
- Learn about web vulnerabilities beyond the OWASP Top Ten and know how to avoid them.
- Gain insight into client-side vulnerabilities and secure coding practices.
- Develop a practical understanding of cryptography.
- Learn how to utilize various PHP security features.
- Identify common coding mistakes and understand how to prevent them.
- Stay informed about recent vulnerabilities affecting the PHP framework.
- Acquire practical knowledge in using security testing tools.
- Access sources and further reading materials on secure coding practices.
Audience
Developers
This course is available as onsite live training in Italy 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 live, instructor-led training in Italy (offered online or on-site) is designed for data scientists and software engineers who aim to use AdaBoost to develop boosting algorithms for machine learning projects using Python.
By the end 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 HoursDeveloping a secure networked application can be challenging, even for developers who are already familiar with various cryptographic building blocks such as encryption and digital signatures. To help participants grasp the role and application of these cryptographic primitives, the course first establishes a solid foundation regarding the main requirements of secure communication—namely, secure acknowledgment, integrity, confidentiality, remote identification, and anonymity. It also addresses the typical problems that can compromise these requirements, alongside real-world solutions.
Since cryptography is a critical aspect of network security, the course discusses the most important cryptographic algorithms in symmetric cryptography, hashing, asymmetric cryptography, and key agreement. Rather than focusing on an in-depth mathematical background, these topics are explored from a developer's perspective, illustrating typical use-case examples and practical considerations related to crypto usage, such as public key infrastructures. The course also introduces security protocols used in various areas of secure communication, with an in-depth discussion on widely-used protocol families such as IPSEC and SSL/TLS.
Typical cryptographic vulnerabilities are discussed, both in relation to specific crypto algorithms and cryptographic protocols. Examples include BEAST, CRIME, TIME, BREACH, FREAK, Logjam, Padding oracle, Lucky Thirteen, POODLE, and similar issues, as well as the RSA timing attack. For each problem, the practical considerations and potential consequences are described, without delving into deep mathematical details.
Finally, since XML technology is central to data exchange for networked applications, the course covers the security aspects of XML. This includes the usage of XML within web services and SOAP messages, alongside protection measures such as XML signature and XML encryption. The course also addresses weaknesses in these protection measures 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 basic concepts of security, IT security, and secure coding
- Understand the requirements of secure communication
- Learn about network attacks and defenses at different OSI layers
- Gain a practical understanding of cryptography
- Understand essential security protocols
- Understand some recent attacks against cryptosystems
- Get information about some recent related vulnerabilities
- Understand security concepts of Web services
- Get sources and further readings on secure coding practices
Audience
Developers, Professionals
C/C++ Secure Coding
21 HoursThis three-day course provides a foundational understanding of safeguarding C/C++ code against malicious actors who may exploit vulnerabilities related to memory management and input handling. Participants will explore the core principles necessary for writing secure code.
Advanced Java Security
21 HoursEven seasoned Java developers do not always fully grasp the full spectrum of security services provided by Java, nor are they always cognizant of the diverse vulnerabilities pertinent to web applications built with Java.
Beyond introducing the security components of Standard Java Edition, this course addresses security concerns within Java Enterprise Edition (JEE) and web services. The discussion of specific services begins with the fundamental principles of cryptography and secure communication. Through a series of exercises, participants explore declarative and programmatic security techniques in JEE, while also examining both transport-layer and end-to-end security for web services. The practical application of all discussed components is demonstrated through hands-on exercises, allowing participants to experiment with the relevant APIs and tools firsthand.
The course also examines and explains the most common and critical programming flaws associated with the Java language, platform, and web technologies. In addition to typical errors made by Java programmers, the identified security vulnerabilities encompass both language-specific issues and problems arising from the runtime environment. All vulnerabilities and their corresponding attack vectors are illustrated through accessible exercises, followed by recommended coding guidelines and potential mitigation strategies.
Participants attending this course will
- Grasp the fundamental concepts of security, IT security, and secure coding
- Learn about web vulnerabilities beyond the OWASP Top Ten and understand how to prevent them
- Comprehend the security concepts underlying web services
- Gain proficiency in utilizing various security features of the Java development environment
- Develop a practical understanding of cryptography
- Understand the security solutions available in Java EE
- Learn to identify typical coding mistakes and how to avoid them
- Receive information regarding 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
Although the Java language and the Runtime Environment (JRE) were designed to eliminate many of the critical security vulnerabilities commonly found in other languages like C/C++, developers and architects must go beyond merely knowing how to leverage the built-in security features of Java (positive security). They must also maintain a clear awareness of the numerous vulnerabilities that remain relevant to Java development (negative security).
Before introducing security services, the course provides a concise overview of cryptography fundamentals, establishing a shared baseline for understanding the purpose and functionality of the relevant components. Participants will explore the practical application of these components through a series of hands-on exercises, allowing them to test the discussed APIs firsthand.
The curriculum also examines and explains the most frequent and severe programming flaws within the Java language and platform. This covers both typical errors made by Java developers and issues specific to the language and its environment. Each vulnerability and associated attack vector is 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 avoid them.
- Master the usage of various security features within the Java development environment.
- Develop a practical understanding of cryptography.
- Recognize typical coding mistakes and learn how to prevent them.
- Gain insights into recent vulnerabilities affecting the Java framework.
- Access sources and further reading materials on secure coding practices.
Audience
Developers
.NET, C# and ASP.NET Security Development
14 HoursToday, numerous programming languages are available for compiling code into the .NET and ASP.NET frameworks. While this environment offers robust tools for security development, it is essential for developers to understand how to apply architecture-level and code-level programming techniques. Doing so ensures the implementation of desired security features while preventing vulnerabilities or limiting their potential exploitation.
This course aims to instruct developers through extensive hands-on exercises on how to prevent untrusted code from executing privileged actions, secure resources via strong authentication and authorization, manage remote procedure calls, handle sessions, and implement diverse functionality patterns.
The introduction to various vulnerabilities begins by highlighting typical programming errors common in .NET development. The discussion on ASP.NET vulnerabilities further explores various environment configurations and their impact. Finally, the section on ASP.NET-specific issues addresses general web application security challenges as well as specific concerns and attack vectors, such as ViewState attacks and string termination exploits.
Participants attending this course will
- Grasp the fundamental concepts of security, IT security, and secure coding practices
- Identify web vulnerabilities extending beyond the OWASP Top Ten and learn strategies to avoid them
- Master the use of various security features within the .NET development environment
- Acquire practical expertise in utilizing security testing tools
- Recognize common coding mistakes and understand how to prevent them
- Stay informed about recent vulnerabilities affecting .NET and ASP.NET
- Access resources and additional readings on secure coding practices
Audience
Developers
Microsoft SDL Core
14 HoursThe Combined SDL Core training provides an in-depth look at secure software design, development, and testing, guided by the Microsoft Secure Development Lifecycle (SDL). This course offers a Level 100 overview of the fundamental building blocks of the SDL, followed by design techniques to identify and rectify vulnerabilities during the early stages of the development process.
During the development phase, the course covers typical security-related programming bugs found in both managed and native code. Attack vectors associated with these vulnerabilities are presented alongside mitigation strategies, all illustrated through practical, hands-on exercises that provide participants with live hacking experience. The introduction to various security testing methods is followed by a demonstration of the effectiveness of different testing tools. Participants gain insight into how these tools operate by applying them to previously discussed vulnerable code through several practical exercises.
Participants attending this course will
Understand the fundamental 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
Learn about secure implementation principles
Understand security testing methodology
- Access sources and further readings on secure coding practices
Audience
Developers, Managers
DevOps Security: Creating a DevOps Security Strategy
7 HoursIn this instructor-led live course held in Italy, participants will acquire the skills to formulate a comprehensive security strategy to tackle the challenges of DevOps security.
EC-Council Certified DevSecOps Engineer (ECDE)
28 HoursThe EC-Council Certified DevSecOps Engineer (ECDE) is a practical course designed to provide professionals with the skills necessary to embed security throughout the DevOps lifecycle, facilitating secure software development from the planning phase through to deployment.
This instructor-led, live training (available online or onsite) targets intermediate-level software and DevOps professionals who aim to integrate security practices into CI/CD pipelines, ensuring that code delivery is both secure and compliant.
Upon completion of this training, participants will be capable of:
- Grasping the core principles and practices of DevSecOps.
- Securing every stage of the CI/CD pipeline through the use of automated tools.
- Applying secure coding practices and conducting vulnerability scans.
- Preparing for the ECDE certification via practical labs and review sessions.
Course Format
- Interactive lectures and discussions.
- Hands-on experience with DevSecOps tools within simulated pipelines.
- Guided exercises centered on secure development and deployment processes.
Course Customization Options
- For customized training tailored to your team’s specific workflows or toolchains, please contact us to make arrangements.
Laravel PHP Framework
14 HoursThis instructor-led, live training in Italy introduces the fundamentals of Laravel and guides participants through the creation of a Laravel-based web application.
Laravel Livewire
7 HoursThis instructor-led, live training in Italy (online or on-site) is designed for developers who wish to learn and use Livewire to build modern and dynamic application interfaces.
Upon completion of this training, participants will be able to:
- Build and test Livewire components.
- Develop applications using the Livewire library.
- Construct dynamic components within PHP.
Laravel and Vue.js
14 HoursThis instructor-led, live training in Italy (online or onsite) is designed for web developers who wish to use Laravel and Vue.js for full-stack web development.
Upon completion of this training, participants will be able to:
- Build web applications using Laravel and Vue.js.
- Integrate the Laravel backend API with Vue.js.
- Deploy a Laravel application.
Laravel: Middleware Development
14 HoursThis instructor-led live training (online or onsite) is aimed at web developers who wish 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 assist with the following:
- Help developers master the techniques of writing secure code.
- Assist software testers in evaluating the application's security before it is published to the production environment.
- Help software architects understand the risks surrounding applications.
- Support team leaders in establishing security baselines for developers.
- Aid web masters in configuring servers to avoid misconfigurations.
Secure Developer Java (Inc OWASP)
21 HoursThis course explores secure coding concepts and principles for Java, leveraging the testing methodologies of the Open Web Application Security Project (OWASP). The OWASP is an online community that produces freely available articles, methodologies, documentation, tools, and technologies dedicated to web application security.