مع التطور السريع في التكنولوجيا وزيادة الاعتماد على الإنترنت في...
أعرف عن الثغرةلو عندك متجر ووكوميرس احذر أن تكون من +1000 متجر معرضين للخطر
- الكاتب: م. أحمد أسامة
- الدعم التقني, ثغرات
- لا توجد تعليقات
في 1 فبراير 2024، تم الإبلاغ عن ثغرة [Arbitrary File Upload] في إضافة [Management App for WooCommerce] المثبتة في أكثر من 100 ألف متجر تتيح هذه الثغرة الأمنية للمستخدمين المعتمدين مثل: المشتركين والعملاء تحميل ملفات عشوائية إلى متجر معرض للخطر وتنفيذ التعليمات البرمجية عن بعد.
المحتوى
ما هي إضافة Management App for WooCommerce؟
تطبيق الإدارة لـ WooCommerce - إشعارات الطلبات، وإدارة الطلبات، وإدارة العملاء المحتملين، والمكون الإضافي لمراقبة وقت التشغيل لـ WordPress والمعروف أيضًا باسم WEmanage App Worker.
عرضة لتحميلات الملفات التعسفية بسبب فقدان التحقق من صحة نوع الملف في دالة nouvello_upload_csv_file في جميع الإصدارات حتى الإصدار 1.2.2. وهذا يجعل من الممكن للمهاجمين المعتمدين، الذين لديهم وصول على مستوى المشترك وما فوق، تحميل ملفات عشوائية على خادم الموقع المتأثر مما قد يجعل تنفيذ التعليمات البرمجية عن بعد ممكنًا.
الإصدار المٌصاب
التحليل الفني للثغرة
لسوء الحظ، يسمح التنفيذ غير الآمن لوظيفة تحميل ملف CSV للمكون الإضافي بتحميلات عشوائية للملفات. يكشف فحص الكود أن التحقق من الإذن لتحميل ملف CSV وتسجيل نقطة نهاية REST API يتحقق فقط من تسجيل دخول المستخدم. وهذا يعني أن أي مستخدم قام بتسجيل الدخول، مثل: المشترك، يمكنه الوصول إلى نقطة نهاية REST API هذه.
register_rest_route(
$this->namespace,
'upload-csv-file',
array(
'methods' => 'POST',
'callback' => array( nouvello_wemanage_worker()->wc_api_functions, 'nouvello_upload_csv_file' ),
'permission_callback' => function( $request ) {
return is_user_logged_in();
},
)
);
يتم استخدام دالة nouvello_upload_csv_file() المقابلة لتحميل ومعالجة ملفات CSV.
public function nouvello_upload_csv_file($data)
{
$body = $data->get_body();
$body_array = json_decode($body, true);
$body_json_data = $body_array[0]['json_data'];
$body_array_data = json_decode($body_json_data, true);
$csv_data = $body_array_data['file_data'];
$csv_nm = $body_array_data['file_nm'];
$csv_label = $body_array_data['csv_label'];
$ext = end(explode('.', $csv_nm));
$fn_name = time() . '.' . $ext;
$wp_upload_dir = wp_upload_dir();
$filepath_nm = $wp_upload_dir['path'] . $fn_name;
$f = fopen($filepath_nm, 'a');
fputcsv($f, $csv_label);
foreach ($csv_data as $csv_inner) :
fputcsv($f, $csv_inner);
endforeach;
fclose($f);
$result = array(
'file_path' => $filepath_nm,
'file_nm' => $csv_nm,
);
return json_encode($result);
}
لسوء الحظ، لا يتم استخدام الباراميتر file_nm لتحديد اسم الملف فحسب، بل تسمح أيضًا بتحديد امتداد الملف الخاص به في الإصدارات الضعيفة. وهذا يعني أنه يمكن تحديد امتداد ملف PHP، ويمكن إضافة كود PHP في محتوى الملف. وهذا يجعل من الممكن للمهاجمين تحميل كود PHP ضار عشوائيًا ثم الوصول إلى الملف لبدء تنفيذ التعليمات البرمجية عن بعد على الخادم.
الجدول الزمني
01 فبراير 2024 – أُرسل تقرير بوجود الثغرة في الإضافة البرمجية.
- 2 فبراير 2024 – تم التحقق من صحة التقرير.
- 21 فبراير 2024 – بدء الاتصال مع مبرمجي الإضافة وطُلب منهم تأكيد البريد الوارد للتعامل مع المناقشة ولم يتم الرد على الفريق الأمني لوردفينس.
- 08 مارس 2024 – الإصدار 3.4.9.2 يعالج هذه المشكلة جزئيًا.
- 24 مارس 2024 – تم إصدار النسخة المصححة بالكامل من الإضافة، 1.2.3.
رساله لعملاءي
كافة عملاءي الذين اشتركوا بخدمة الدعم التقني بأمان ويتم تحديث مواقعهم ومشاريعهم على الفور ويتم إرسال التقارير لهم أولًا بأول، إذا لم تكن من عملاءي الذين استفادوا من خدمة الدعم التقني فيمكنك طلب فحص موقعك مجانًا دون أي مقابل وإبلاغك بالمشاكل والثغرات بموقعك وتفاصيل الباقات إذا كنت مهتمًا بتأمين وحماية مشروعك والخدمات التي ستحصل عليها تجدها بالمقالة.
الدعم التقني
أوصيك إذا لم تكن تقنيًا بتوظيف أحد المتخصصين لرعاية وفحص موقعك وتحديثه وصيانته أولًا بأول فلا يمكنك أبدًا الحصول على موقع آمن وينافس ويظهر بشكل احترافي للعملاء دون وجود دعم تقني دوري للموقع فلعلك لاحظت التحديثات والترقيات الدائمة لتطبيقات هواتفك أو نظام تشغيلك أو متصفحك وحتى برامح فحص الفيروسات نفسها.. إن التحديثات والتأمينات باتت ضرورة ملحة بعدما أصبحت الهجمات لا تبقي ولا تذر أحدًا حتى المنصات الكبيرة والمواقع المشهورة.
فلم يعد الدعم التقني ووجود متخصص معك أمر ترفيهي بل أصبح من البديهيات إذا كنت تخشى على كيانك الإلكتروني وتخشى على ما أنفقت فيه وتطمح للمنافسة والتوسع على شبكة التواصل الاجتماعي، ولأجل ذلك قمت بإعداد هذه الخدمة عبر باقات متنوعة وخدمة منفصلة شهد لها عملائي عبر تعليقاتهم بالموقع أو عبر حسابي على لينكدإن بكل إيجابية وترحاب.
الشهر الواحد
دعم الصيانة والتحديثات-
صيانة الأعطال التقنية
-
تحديث الأنظمة وحمايتها
-
تأمين المواقع والتطبيقات
-
ضبط وتأمين الاستضافات
-
تصحيح الأكواد البرمجية
-
حماية الملفات البرمجية
-
فحص الفيروسات الدوري
-
نسخ احتياطي آمن
ربع سنوي
دعم الصيانة والتحديثات-
صيانة الأعطال التقنية
-
تحديث الأنظمة وحمايتها
-
تأمين المواقع والتطبيقات
-
ضبط وتأمين الاستضافات
-
تصحيح الأكواد البرمجية
-
حماية الملفات البرمجية
-
فحص الفيروسات الدوري
-
نسخ احتياطي آمن
نصف سنوي
دعم الصيانة والتحديثات-
صيانة الأعطال التقنية
-
تحديث الأنظمة وحمايتها
-
تأمين المواقع والتطبيقات
-
ضبط وتأمين الاستضافات
-
تصحيح الأكواد البرمجية
-
حماية الملفات البرمجية
-
فحص الفيروسات الدوري
-
نسخ احتياطي آمن
العام الكامل
دعم الصيانة والتحديثات-
صيانة الأعطال التقنية
-
تحديث الأنظمة وحمايتها
-
تأمين المواقع والتطبيقات
-
ضبط وتأمين الاستضافات
-
تصحيح الأكواد البرمجية
-
حماية الملفات البرمجية
-
فحص الفيروسات الدوري
-
نسخ احتياطي آمن
ختام المقالة
أرجو أن أكون قد وفقت في إظهار أهمية وخطورة الدعم التقني وأن يكون سردي قد نال إعجابكم وأقبل تعليقاتكم بالأسفل ويسعدني كافة مشاركتكم.. هذه الخدمة لها صفحة منفصلة بها كافة التفاصيل في حالة احتياجك لهذه الخدمة من أجل موقعك الإلكتروني أو تطبيقك ولا تنسى زائري الكريم بتحديث الإضافة الآن لآخر نسخة لكي تكون بأمان حتى توظفني وأفحص موقعك بالكامل وأعطيك تقرير مفصل لكافة أجزاء كيانك البرمجي.
شارك المقالة للإفادة
نبذة عن الكاتب
لمعرفة المقالات الجديدة والتواصل معي تابعني عبر: