Secure coding in PHP Training Course
This course equips PHP developers with the essential skills required to harden applications against modern internet-based threats. It explores web vulnerabilities through practical PHP examples that extend beyond the OWASP Top Ten, addressing issues such as injection attacks, script injection, session handling weaknesses, insecure direct object references, file upload flaws, and more. The curriculum categorizes PHP-related vulnerabilities into standard types, including inadequate or missing input validation, improper error and exception handling, misused security features, and time- or state-related defects. Specific attack vectors discussed include open_basedir circumvention, denial-of-service attacks via magic floats, and hash table collision exploits. Participants will master the critical techniques and functions needed to mitigate these risks.
A significant emphasis is placed on client-side security, covering vulnerabilities in JavaScript, Ajax, and HTML5. The course introduces key PHP extensions for cryptography, such as hash, mcrypt, and OpenSSL, as well as those for input validation, including Ctype, ext/filter, and HTML Purifier. Best practices for hardening are provided regarding PHP configuration (php.ini), Apache server settings, and general server administration. Additionally, the course offers an overview of various security testing tools and techniques available to developers and testers, including security scanners, penetration testing utilities, exploit kits, sniffers, proxy servers, fuzzing tools, and static source code analyzers.
Both the vulnerability concepts and configuration guidelines are reinforced through hands-on exercises. These practical sessions demonstrate the impact of successful attacks, illustrate how to implement mitigation strategies, and guide the use of various extensions and tools.
Participants attending this course will
- Grasp the fundamental concepts of security, IT security, and secure coding
- Understand web vulnerabilities beyond the OWASP Top Ten and learn how to prevent them
- Gain insight into client-side vulnerabilities and secure coding methodologies
- Develop a practical understanding of cryptography
- Learn to effectively utilise various PHP security features
- Identify common coding mistakes and discover how to avoid them
- Stay informed about recent vulnerabilities within the PHP framework
- Acquire hands-on 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 Malaysia 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 Malaysia (online or onsite) is designed for data scientists and software engineers who wish to use AdaBoost to build boosting algorithms for machine learning with 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 secure networked applications can be challenging, even for developers who have previously utilized various cryptographic building blocks, such as encryption and digital signatures. To help participants grasp the role and application of these cryptographic primitives, the course begins by establishing a solid foundation regarding the core requirements of secure communication: secure acknowledgement, integrity, confidentiality, remote identification, and anonymity. It also addresses typical threats that may compromise these requirements, alongside real-world solutions.
As cryptography is a critical aspect of network security, the course covers the most important algorithms in symmetric cryptography, hashing, asymmetric cryptography, and key agreement. Rather than focusing on complex mathematical theory, these topics are presented from a developer's perspective, illustrating typical use-case examples and practical considerations, such as the implementation of public key infrastructures. Additionally, security protocols used in various areas of secure communication are introduced, with an in-depth discussion on widely-used protocol families like IPSEC and SSL/TLS.
Common cryptographic vulnerabilities are examined, covering issues related to specific algorithms and protocols such as BEAST, CRIME, TIME, BREACH, FREAK, Logjam, Padding oracle, Lucky Thirteen, POODLE, and RSA timing attacks. For each problem, 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 security aspects of XML are detailed. This includes the use of XML in web services and SOAP messages, along with protection mechanisms like XML Signature and XML Encryption. The course also covers 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
- Grasp the requirements of secure communication
- Learn about network attacks and defenses across different OSI layers
- Develop a practical understanding of cryptography
- Understand essential security protocols
- Comprehend recent attacks against cryptosystems
- Gain information on recent related vulnerabilities
- Understand security concepts of Web services
- Access sources and further readings on secure coding practices
Audience
Developers, Professionals
C/C++ Secure Coding
21 HoursSpanning three days, this course explores the foundational principles of securing C/C++ code. Participants will learn how to protect against malicious exploitation of common vulnerabilities, particularly those arising from memory management and input handling.
Advanced Java Security
21 HoursEven experienced Java programmers do not necessarily master all the security services provided by Java, nor are they always aware of the different vulnerabilities relevant to web applications written in Java.
Besides introducing the security components of Standard Java Edition, this course addresses security issues concerning Java Enterprise Edition (JEE) and web services. The discussion of specific services is preceded by the foundations of cryptography and secure communication. Various exercises cover declarative and programmatic security techniques in JEE, while both transport-layer and end-to-end security of web services are discussed. The use of all components is presented through several practical exercises, allowing participants to try out the discussed APIs and tools themselves.
The course also covers and explains the most frequent and severe programming flaws of the Java language and platform, as well as web-related vulnerabilities. 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 recommended coding guidelines and possible mitigation techniques.
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
- Understand security concepts of web services
- Learn to use various security features of the Java development environment
- Have a practical understanding of cryptography
- Understand security solutions of Java EE
- Learn about typical coding mistakes and how to avoid them
- Get information about some recent vulnerabilities in the Java framework
- Get practical knowledge in using security testing tools
- Get sources and further readings on secure coding practices
Audience
Developers
Standard Java Security: Secure Coding & Development Practices
14 HoursDescription
While the Java language and Java Runtime Environment (JRE) were engineered to be free from many of the common, severe security vulnerabilities often found in languages like C/C++, developers and architects must possess more than just a knowledge of Java's positive security features. They must also be vigilant about the numerous vulnerabilities that remain pertinent to Java development, a concept referred to as 'negative security'.
The course introduces security services by first providing a concise overview of cryptography foundations, establishing a shared baseline for understanding the purpose and function of the relevant components. Participants will engage in several practical exercises to apply these concepts using the discussed APIs.
Additionally, the course examines and explains the most frequent and critical programming flaws within the Java language and platform. This includes both common errors made by Java programmers and issues specific to the language and its environment. All vulnerabilities and associated attacks are demonstrated through clear, understandable exercises, followed by recommended coding guidelines and 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
- Gain the skills to utilize various security features within the Java development environment
- Develop a practical understanding of cryptography
- Identify typical coding mistakes and learn how to avoid them
- Receive information regarding recent vulnerabilities within 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 can compile code for the .NET and ASP.NET frameworks. While this environment offers robust capabilities for security development, it is essential for developers to understand how to apply programming techniques at both the architecture and coding levels. This knowledge allows them to implement necessary security functions while avoiding vulnerabilities or minimizing their potential impact.
This course aims to equip developers with practical skills through extensive hands-on exercises. Participants will learn to prevent untrusted code from executing privileged actions, safeguard resources via strong authentication and authorization mechanisms, facilitate remote procedure calls, manage sessions effectively, and explore various implementations for specific functionalities.
The discussion on vulnerabilities begins by highlighting typical programming errors associated with .NET. The analysis of ASP.NET vulnerabilities further examines various environment settings and their implications. Additionally, the section on ASP.NET-specific vulnerabilities addresses general web application security challenges as well as unique issues and attack vectors, such as ViewState attacks and string termination exploits.
Participants attending this course will
- Grasp fundamental concepts of security, IT security, and secure coding practices
- Understand web vulnerabilities beyond the OWASP Top Ten and learn how to mitigate them
- Master the use of various security features within the .NET development environment
- Gain practical expertise in utilizing security testing tools
- Identify common coding mistakes and learn strategies to avoid them
- Stay informed about recent vulnerabilities affecting .NET and ASP.NET
- Access resources and recommended reading materials on secure coding practices
Audience
Developers
Microsoft SDL Core
14 HoursThe Combined SDL core training offers an in-depth look at secure software design, development, and testing through the Microsoft Secure Development Lifecycle (SDL). It provides a foundational overview (Level 100) of the core components of SDL, followed by design strategies aimed at detecting and remedying flaws early in the development cycle.
Addressing the development phase, the course surveys common security-related programming vulnerabilities in both managed and native code. It presents attack vectors for these vulnerabilities alongside corresponding mitigation techniques, illustrated through numerous hands-on exercises that offer participants engaging, practical hacking experiences. The introduction to various security testing methods is complemented by demonstrations of the effectiveness of different testing tools. Participants will gain a clear understanding of how these tools operate through practical exercises, applying them to the vulnerable code scenarios discussed throughout the course.
Participants attending this course will
Grasp fundamental concepts of security, IT security, and secure coding
Become familiar with the essential steps of the Microsoft Secure Development Lifecycle
Acquire knowledge of 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 in Malaysia, participants will learn how to formulate an effective security strategy to address 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 equip professionals with the skills to embed security throughout the DevOps lifecycle, facilitating secure software development from initial planning 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 the delivery of secure and compliant code.
Upon completion of this training, participants will be able to:
- Grasp the core principles and practices of DevSecOps.
- Secure every stage of the CI/CD pipeline using automated tools.
- Implement secure coding practices and conduct vulnerability scanning.
- Prepare for the ECDE certification through practical labs and review sessions.
Course Format
- Interactive lectures and discussions.
- Hands-on application of DevSecOps tools within simulated pipelines.
- Guided exercises focused on secure development and deployment processes.
Course Customization Options
- To arrange customized training tailored to your team’s specific workflows or toolchain, please contact us.
Laravel PHP Framework
14 HoursThis instructor-led, live training in Malaysia 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, offered in Malaysia (online or onsite), is tailored for developers who want to learn and utilize Livewire to build modern and dynamic application interfaces.
By the end of this training, participants will be able to:
- Develop and test Livewire components.
- Create applications using the Livewire library.
- Build dynamic components within PHP.
Laravel and Vue.js
14 HoursThis instructor-led live training in Malaysia (online or onsite) is designed for 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 onsite, is designed for 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 achieve the following:
- Assist developers in mastering the techniques of writing secure code.
- Enable software testers to assess application security before deployment to the production environment.
- Help software architects understand the risks surrounding applications.
- Assist team leaders in establishing security baselines for developers.
- Support webmasters in configuring servers to avoid misconfigurations.
Secure Developer Java (Inc OWASP)
21 HoursThis course explores the fundamental concepts and principles of secure coding in Java, utilizing the testing methodology 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.