Secure coding in PHP Training Course
This course equips PHP developers with the essential skills required to harden their applications against contemporary internet-based threats. It explores web vulnerabilities through practical PHP examples, extending beyond the OWASP Top Ten to cover various injection attacks, script injections, session handling weaknesses, insecure direct object references, file upload issues, and more. PHP-related vulnerabilities are categorized into standard types such as missing or incorrect input validation, improper error and exception handling, misuse of security features, and time- and state-related problems. Specific attacks discussed include open_basedir circumvention, denial-of-service via magic floats, and hash table collision attacks. Participants will learn the key techniques and functions needed to mitigate these risks.
A significant emphasis is placed on client-side security, addressing vulnerabilities in JavaScript, Ajax, and HTML5. The course introduces several PHP security extensions, such as hash, mcrypt, and OpenSSL for cryptography, as well as Ctype, ext/filter, and HTML Purifier for input validation. Best practices for hardening are provided in the context of PHP configuration (php.ini), Apache, and server-level settings. Additionally, the course offers an overview of various security testing tools and techniques, including security scanners, penetration testing, exploit packs, sniffers, proxy servers, fuzzing tools, and static source code analyzers.
Both the introduction of vulnerability concepts and configuration practices are reinforced with hands-on exercises. These exercises demonstrate the impact of successful attacks, guide participants on applying mitigation strategies, and introduce the use of various extensions and tools.
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 how to prevent them
- Gain insight into client-side vulnerabilities and secure coding practices
- Develop a practical understanding of cryptography
- Learn to utilize various PHP security features
- Identify typical coding errors and learn how to avoid them
- Stay informed about recent vulnerabilities in the PHP framework
- Acquire practical experience using security testing tools
- Access resources and further reading on secure coding practices
Audience
Developers
This course is available as onsite live training in Uzbekistan 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?
uzbekistan@nobleprog.com or +919818060888
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
Related Courses
ABAP Secure code
14 HoursUpon completing this training, participants will be capable of:
- Explaining application security and potential vulnerabilities
- Describing ABAP programming best practices and the handling of SY-SUBRC
- Understanding injection vulnerabilities
- Describing security testing tools
- Explaining ATC and CVA
Course Format
- Interactive lectures and discussions
- Extensive exercises and practical work
- Hands-on implementation in a live-lab environment
AdaBoost Python for Machine Learning
14 HoursThis instructor-led, live training in Uzbekistan (available online or on-site) 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 using AdaBoost.
- Understand the ensemble learning approach and learn how to implement adaptive boosting.
- Learn how to build AdaBoost models to enhance machine learning algorithms in Python.
- Apply hyperparameter tuning to improve the accuracy and performance of AdaBoost models.
Applications Security Foundation
21 HoursThis course addresses the essential secure coding topics pertinent to a wide range of web application developers. It instructs students on the principles of secure programming by examining specific code snippets, identifying security vulnerabilities, and implementing corrective measures.
Participants will observe demonstrations of real-world attacks and learn effective prevention strategies, building confidence as they work to enhance their applications' security.
Duration: 3 days
Who Should Attend: Developers seeking to expand their expertise in secure coding.
Upon Completion
• Students will gain knowledge in:
• Web Application Security.
• Common Web Application Risks.
• Demo Web Application Penetration Testing.
• Data Validation.
• Authentication.
• Session Management.
• Secure SDLC.
Android Security
14 HoursAndroid serves as an open platform for mobile devices, including smartphones and tablets. While it offers a wide array of security features designed to facilitate the development of secure software, it also lacks certain security aspects found in other handheld platforms. This course provides a comprehensive overview of these features and highlights critical shortcomings related to the underlying Linux system, the file system, and the general environment, as well as those associated with permissions and other Android software development components.
Common security pitfalls and vulnerabilities are explained for both native code and Java applications, accompanied by recommendations and best practices to prevent and mitigate these issues. The topics discussed are often supported by real-life examples and case studies. Finally, the course briefly covers how to utilize security testing tools to identify security-related programming bugs.
Participants attending this course will
- Understand the fundamental concepts of security, IT security, and secure coding
- Learn about security solutions on Android
- Learn to use various security features of the Android platform
- Gain information about recent Java vulnerabilities on Android
- Learn about typical coding mistakes and how to avoid them
- Understand native code vulnerabilities on Android
- Recognize the severe consequences of insecure buffer handling in native code
- Understand architectural protection techniques and their weaknesses
- Access sources and further readings on secure coding practices
Audience
Professionals
Network Security and Secure Communication
21 HoursDeveloping a secure networked application is challenging, even for developers familiar with cryptographic building blocks like encryption and digital signatures. To help participants grasp the role and application of these cryptographic primitives, 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.
Given that cryptography is a critical component of network security, the course examines the most important cryptographic algorithms in symmetric cryptography, hashing, asymmetric cryptography, and key agreement. Rather than focusing on complex mathematical theories, these topics are approached from a developer’s perspective, featuring typical use-case examples and practical considerations such as public key infrastructures. The course introduces security protocols used in various areas of secure communication, with an in-depth exploration of widely adopted protocol families like IPSEC and SSL/TLS.
Typical cryptographic vulnerabilities are discussed, both concerning specific algorithms and protocols. Examples include BEAST, CRIME, TIME, BREACH, FREAK, Logjam, Padding oracle, Lucky Thirteen, POODLE, and RSA timing attacks. For each issue, practical implications and potential consequences are explained without delving into deep mathematical details.
Finally, as XML technology is central to data exchange in networked applications, the course covers XML security. This includes the use of XML in web services and SOAP messages, alongside protection mechanisms like 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 an overview of securing C/C++ code against malicious actors who may exploit vulnerabilities related to memory management and input handling. The course emphasizes the core principles of writing secure code.
Advanced Java Security
21 HoursEven seasoned Java developers often do not fully master the diverse security services provided by Java, and may remain unaware of the various vulnerabilities pertinent to web applications built with Java.
Beyond introducing the security components of Standard Java Edition, this course addresses security challenges in Java Enterprise Edition (JEE) and web services. Discussions on specific services are preceded by foundational knowledge of cryptography and secure communication. A range of hands-on exercises explores both declarative and programmatic security techniques within JEE, while also covering transport-layer and end-to-end security for web services. Participants will gain practical experience by applying the discussed APIs and tools through multiple real-world scenarios.
The course further examines the most common and critical programming flaws inherent to the Java language and platform, as well as web-related vulnerabilities. In addition to typical coding mistakes made by Java developers, the introduced security issues encompass language-specific problems and those arising from the runtime environment. Each vulnerability and associated attack vector is illustrated through clear, easy-to-follow exercises, followed by recommended coding practices and effective mitigation strategies.
Participants attending this course will
- Grasp 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 security concepts specific to web services
- Learn how to leverage various security features within the Java development environment
- Acquire practical knowledge of cryptography
- Understand security solutions available in Java EE
- Identify typical coding errors and learn how to avoid them
- Gain insight into recent vulnerabilities affecting the Java framework
- Develop practical skills in using security testing tools
- Access resources and further reading materials 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 engineered to avoid many of the common security vulnerabilities found in languages like C/C++, developers and architects must still master both the positive aspects (utilizing Java's built-in security features) and the negative aspects (recognizing and avoiding persistent vulnerabilities specific to Java).
The course begins with a concise overview of cryptographic foundations to establish a common understanding of how key security components work. This theoretical knowledge is reinforced through practical exercises, allowing participants to explore and apply the relevant APIs hands-on.
Additionally, the curriculum thoroughly examines the most frequent and critical programming flaws within the Java ecosystem. It addresses typical errors made by Java developers as well as issues unique to the language and its runtime environment. Each vulnerability and its corresponding attack vector are demonstrated via accessible exercises, followed by recommended coding guidelines and effective mitigation strategies.
Participants attending this course will
- Grasp fundamental concepts of IT security and secure coding principles
- Identify web vulnerabilities beyond the OWASP Top Ten and learn strategies to prevent them
- Master the utilization of various security features within the Java development environment
- Develop a practical understanding of cryptography
- Recognize common coding mistakes and acquire techniques to avoid them
- Gain insights into recent vulnerabilities affecting the Java framework
- Access valuable resources and further reading materials on secure coding practices
Audience
Software Developers
.NET, C# and ASP.NET Security Development
14 HoursToday, numerous programming languages support compiling code for 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 architectural and coding-level techniques to implement desired security measures, avoid vulnerabilities, and mitigate potential exploitation.
This course aims to equip developers with practical skills through extensive hands-on exercises. Participants will learn how to prevent untrusted code from executing privileged actions, safeguard resources via strong authentication and authorization mechanisms, manage remote procedure calls and sessions, and explore various implementation strategies for specific functionalities.
The course introduces various vulnerabilities by first addressing typical programming issues encountered when using .NET. The discussion on ASP.NET vulnerabilities covers different environment settings and their impacts. Furthermore, the section on ASP.NET-specific vulnerabilities addresses general web application security challenges as well as specialized issues and attack methods, such as ViewState attacks and string termination exploits.
Participants attending this course will
- Grasp fundamental concepts of security, IT security, and secure coding practices
- Identify web vulnerabilities beyond the OWASP Top Ten and learn how to prevent them
- Utilize various security features within the .NET development environment
- Gain practical experience with security testing tools
- Recognize common coding errors and learn strategies to avoid them
- Stay informed about recent vulnerabilities in .NET and ASP.NET
- Access resources and further reading materials on secure coding practices
Audience
Developers
The Secure Coding Landscape
14 HoursThis course introduces fundamental security concepts, provides an overview of the nature of vulnerabilities across different programming languages and platforms, and explains how to manage software security risks throughout the various phases of the software development lifecycle. Without delving too deeply into technical details, it highlights some of the most critical and pressing vulnerabilities found in diverse software development technologies. Additionally, it presents the challenges associated with security testing, along with practical techniques and tools that can be applied to identify existing issues within code.
Participants attending this course will
- Understand basic concepts of security, IT security, and secure coding
- Understand web vulnerabilities on both the server and client sides
- Recognize the severe consequences of insecure buffer handling
- Be informed about recent vulnerabilities in development environments and frameworks
- Learn about typical coding mistakes and how to avoid them
- Understand security testing approaches and methodologies
Audience
Managers
Microsoft SDL Core
14 HoursCombined SDL core training provides insight into secure software design, development, and testing through the Microsoft Secure Development Lifecycle (SDL). It offers a Level 100 overview of the fundamental building blocks of SDL, followed by design techniques to detect and resolve flaws in the early stages of the development process.
Focusing on the development phase, the course presents an overview of typical security-relevant programming bugs in both managed and native code. Attack methods for the discussed vulnerabilities are presented alongside associated mitigation techniques, all explained through a series of hands-on exercises that provide live hacking experiences for participants. An introduction to various security testing methods is followed by demonstrations of the effectiveness of different testing tools. Participants can understand the operation of these tools through practical exercises by applying them to the previously discussed vulnerable code.
Participants attending this course will
Understand 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
Learn about secure implementation principles
Understand security testing methodology
- Access sources and further readings on secure coding practices
Audience
Developers, Managers
Laravel PHP Framework
14 HoursThis instructor-led, live training in Uzbekistan introduces the fundamentals of Laravel and guides participants through building a Laravel-based web application.
Laravel Livewire
7 HoursThis instructor-led, live training in Uzbekistan (available online or on-site) is designed for developers who wish to learn and apply Livewire to create modern, dynamic application interfaces.
By the end of this training, participants will be able to:
- Build and test Livewire components.
- Develop applications using the Livewire library.
- Create dynamic components within PHP.
Laravel and Vue.js
14 HoursThis instructor-led, live training in Uzbekistan (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's 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.