Secure coding in PHP Training Course
This course equips PHP developers with critical skills to fortify their applications against modern internet-based threats. It delves into web vulnerabilities using PHP examples that extend beyond the OWASP top ten, covering a range of injection attacks, script injections, session handling weaknesses in PHP, insecure direct object references, file upload issues, and more. The course categorizes PHP-related vulnerabilities according to standard vulnerability types such as missing or improper input validation, incorrect error and exception handling, misuse of security features, and time- and state-related problems. It also discusses specific attacks like open_basedir circumvention, denial-of-service through magic float, and hash table collision attacks. Participants will learn key techniques and functions for mitigating these risks.
Special emphasis is placed on client-side security, addressing JavaScript, Ajax, and HTML5 security concerns. The course introduces several PHP extensions for security purposes, such as hash, mcrypt, and OpenSSL for cryptography, and Ctype, ext/filter, and HTML Purifier for input validation. It also covers best practices for hardening configurations through php.ini settings, Apache, and the server in general. Additionally, an overview of various security testing tools and techniques is provided, including security scanners, penetration testing, exploit packs, sniffers, proxy servers, fuzzing tools, and static source code analyzers.
The introduction to vulnerabilities and configuration practices includes practical exercises that demonstrate the impact of successful attacks, illustrate how to implement mitigation strategies, and introduce the use of various extensions and tools.
Participants attending this course will
- Grasp fundamental security concepts, IT security, and secure coding principles
- Acquire knowledge on web vulnerabilities beyond OWASP Top Ten and learn how to prevent them
- Understand client-side vulnerabilities and adopt secure coding practices
- Gain practical insights into cryptography
- Master the use of various security features in PHP
- Be aware of common coding errors and know how to avoid them
- Stay informed about recent PHP framework vulnerabilities
- Aquire hands-on experience with security testing tools
- Receive resources and further readings on secure coding practices
Audience
Developers
This course is available as onsite live training in United Arab Emirates 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
Need help picking the right course?
Secure coding in PHP Training Course - 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
Test Driven Development
21 HoursThis instructor-led, live training in the UAE (online or onsite) is aimed at intermediate-level software developers and QA engineers who wish to adopt and master TDD principles and practices to improve code quality and development efficiency.
By the end of this training, participants will be able to:
- Understand the principles and workflow of Test-Driven Development (TDD).
- Write effective and maintainable unit tests.
- Utilize mocking frameworks to create comprehensive test scenarios.
- Apply TDD as a design tool to create robust and flexible code.
C/C++ Secure Coding
21 HoursThis three-day course delves into the fundamentals of safeguarding C/C++ code from malicious users who could exploit various vulnerabilities related to memory management and input handling. It also emphasizes the principles of developing secure code.
Advanced Java Security
21 HoursEven seasoned Java developers may not fully grasp the diverse security features provided by Java, nor are they always informed about the various vulnerabilities pertinent to web applications developed in Java.
This course – while introducing the security aspects of Standard Java Edition – also addresses the security concerns related to Java Enterprise Edition (JEE) and web services. It begins with an overview of cryptography and secure communication before delving into specific security services. Exercises focus on both declarative and programmatic security methods in JEE, as well as transport-layer and end-to-end security for web services. Participants will engage in practical exercises to explore the discussed APIs and tools firsthand.
The course also examines and elucidates common and critical programming errors associated with the Java language and platform, along with web-related vulnerabilities. It covers both typical mistakes made by Java developers and broader issues related to the runtime environment. Each vulnerability and its corresponding attacks are illustrated through straightforward exercises, followed by recommended coding practices and mitigation strategies.
Participants in this course will
- Gain a foundational understanding of security principles, IT security, and secure coding
- Learn about web vulnerabilities beyond the OWASP Top Ten list and how to prevent them
- Acquire knowledge on the security aspects of Web services
- Master various security features within the Java development environment
- Develop a practical understanding of cryptography
- Understand security solutions in Java EE
- Be informed about typical coding errors and how to avoid them
- Stay updated on recent vulnerabilities in the Java framework
- Aquire hands-on experience with security testing tools
- Receive resources for further reading on secure coding practices
Audience
Developers
Standard Java Security
14 HoursDescription
The Java language and its Runtime Environment (JRE) were crafted to avoid the most common security issues found in other languages, such as C/C++. However, software developers and architects must not only be proficient with the various security features of the Java environment (positive security), but also be knowledgeable about the vulnerabilities that still affect Java development (negative security).
Before delving into security services, a brief overview of cryptography fundamentals is provided to establish a common understanding of the purpose and operation of relevant components. Participants will have hands-on experience with these components through several practical exercises where they can test out the discussed APIs.
The course also examines and explains the most frequent and serious programming flaws in Java language and platform, covering both typical errors made by Java programmers and issues specific to the language and environment. All vulnerabilities and related attacks are demonstrated through straightforward exercises, followed by recommended coding guidelines and mitigation techniques.
Participants attending this course will
- Grasp fundamental concepts of security, IT security, and secure coding practices
- Acquire knowledge of Web vulnerabilities beyond the OWASP Top Ten and learn how to prevent them
- Master the use of various security features in the Java development environment
- Gain practical insights into cryptography
- Be informed about common coding mistakes and how to avoid them
- Stay updated on recent vulnerabilities within the Java framework
- Receive resources and additional readings for secure coding practices
Audience
Developers
Microsoft SDL Core
14 HoursThe integrated SDL core training offers an in-depth look into the principles of secure software design, development, and testing using Microsoft's Secure Development Lifecycle (SDL). It begins with a foundational overview of SDL components at level 100, followed by practical techniques for identifying and resolving issues early in the development process.
During the development phase, the course covers common security-related programming errors in both managed and native code. Attack methods are demonstrated alongside mitigation strategies, all illustrated through interactive exercises that provide a hands-on hacking experience for participants. The training also introduces various security testing approaches and showcases the effectiveness of different testing tools. Participants will gain an understanding of these tools through practical applications to previously discussed vulnerable code.
Participants in this course will
- Grasp fundamental concepts of security, IT security, and secure coding practices
- Become familiar with the key stages of Microsoft's Secure Development Lifecycle
- Acquire knowledge on secure design and development methodologies
- Learn about principles for secure implementation
- Understand security testing methods
- Receive resources and additional reading materials on secure coding practices
Audience
Developers, Managers
PHP CodeIgniter
14 HoursThis instructor-led, live training in the UAE (online or onsite) is aimed at web developers who wish to build web applications with CodeIgniter.
By the end of this training, participants will be able to:
- Use CRUD in CodeIgniter for refactoring API code.
- Extend CodeIgniter to consume dependencies.
- Load CodeIgniter models and views from containers.
Laravel PHP Framework
14 HoursThis instructor-led, live training in the UAE 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 the UAE (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 the UAE (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.
Unit Testing with PHPUnit
14 HoursThis instructor-led, live training in the UAE teaches participants how to write testable code in the form of testing units to facilitate the diagnosis, isolation, and resolution of bugs. The training walks participants through the creation of a work-ready, testing environment using the PHPUnit testing framework.
By the end of this training, participants will be able to:
- Distinguish between good and bad testing units.
- Read and interpret test results.
- Proactively manage and diagnose their code base to reduce bugs.
- Ensure that their code base is fit for continuous integration and deployment.
Laravel: Middleware Development
14 HoursThis instructor-led, live training in (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 Aritisan 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.
Symfony2 - Enterprise Web Framework
21 HoursThis instructor-led, live training in the UAE (online or onsite) is aimed at intermediate-level developers and software engineers who wish to use Symfony2 to create structured, maintainable, and scalable web applications.
By the end of this training, participants will be able to:
- Understand the philosophy and structure of the Symfony2 framework.
- Use Symfony2 components such as Doctrine, Twig, and Routing effectively.
- Build secure and testable web applications using custom bundles and REST APIs.
- Integrate Symfony2 into enterprise environments and estimate project implementation costs.
Web Development with Symfony3
28 HoursThis instructor-led, live training in the UAE (online or onsite) is aimed at intermediate-level developers who wish to develop robust web applications using Symfony3.
By the end of this training, participants will be able to:
- Set up and configure a Symfony3 development environment.
- Build dynamic web applications using Symfony3 features and tools.
- Utilize built-in and custom services, templates, forms, and security mechanisms.
- Access databases using Doctrine ORM.
- Write automated tests and apply performance optimization techniques.
Symfony 4 for Web Application Development
28 HoursSymfony 4 is a PHP software development framework that includes reusable libraries to streamline the creation and testing of new applications, whether they are web apps or APIs. It operates via command-line interface with built-in commands designed to enhance PHP code development efficiency.
During this instructor-led live training session, participants will learn how to utilize the Symfony framework and PHP language as they progress through building a PHP application.
By the conclusion of this training, attendees will be able to:
- Utilize Symfony 4 for coding and testing in PHP
- Develop basic PHP code that interacts with databases by reading from and writing to them
Audience
- Programmers and web developers familiar with PHP and HTML
- Advanced developers seeking more efficient tools for rapid development cycles
- Software designers aiming to stay current with development tools that align with user requirements
Course Format
- A blend of lectures, discussions, exercises, and extensive hands-on practice
Develop Web Applications with PHP and Yii 2
14 HoursThis instructor-led, live training in the UAE (online or onsite) is aimed at beginner-level developers who wish to build robust and maintainable web applications using Yii 2.
By the end of this training, participants will be able to:
- Install and configure Yii 2.
- Understand Yii’s MVC architecture and project structure.
- Build secure and scalable web applications using Yii 2 components.
- Work with databases, forms, and REST APIs.