
OWASP
يتبع Spurtcommerce مبادئ OWASP لأمانه المدمج.
قام فريق Spurtcommerce بتنفيذ مجموعة واسعة من قواعد الأمان التي أنشأتها أبحاث ومعايير الصناعة الرائدة حول الثغرات الأمنية - OWASP (مشروع أمان تطبيقات الويب المفتوح).
اختبار إدارة الهوية
في منصات التجارة الإلكترونية والتجزئة عبر الإنترنت، تلعب إدارة الهوية دورًا حيويًا ويجب أن تكون سلسة وآمنة لتحديد المستخدم ودوره وضمان أنه يمكنه الوصول فقط إلى بيانات العملاء أو المعلومات التي يحتاجها أو يحق له الوصول إليها.
في Spurtcommerce، عندما يظهر مستخدم جديد، يتم اتباع جميع البروتوكولات والقواعد المطلوبة. يمكنك الاطلاع على آليات الاختبار المختلفة المتعلقة بإدارة الهوية التي تم اتباعها وتم اجتيازها.
اختبار تعريف الأدوار - WSTG-IDNT-01
يمكن للبائعين الآن تحديد المنطقة الزمنية المفضلة لديهم، مما يضمن عرض الطوابع الزمنية للطلبات والتقارير والمواعيد النهائية للتنفيذ والإشعارات في وقتهم المحلي. تسهل هذه الميزة العمليات للبائعين الذين يديرون أعمالًا عبر مناطق متعددة. .
اختبار عملية تسجيل المستخدم - WSTG-IDNT-02
استخدمنا البريد الإلكتروني كهوية للمستخدمين. يمكن للمستخدمين التسجيل بإدخالات أساسية وسيكون البريد الإلكتروني فريدًا لكل مستخدم. لا يمكن استخدام نفس البريد الإلكتروني لحسابات مستخدمين متعددة.
اختبار عملية توفير الحساب - WSTG-IDNT-03
يمكن للمسؤول فقط اتخاذ إجراء لتوفير الوصول للمستخدمين ويمكنه أيضًا إلغاء توفير المستخدم.
اختبار تعداد الحسابات وحسابات المستخدمين القابلة للتخمين - WSTG-IDNT-04
يقوم نظام Spurtcommerce بقفل حساب المستخدم على فترات معينة. في هذه الحالة، لا يمكن للمهاجم تخمين أسماء المستخدمين وكلمات المرور.
اختبار سياسة أسماء المستخدمين الضعيفة أو غير المفروضة - WSTG-IDNT-05
في هذا المشروع للتجارة الإلكترونية، لا نقدم أي رسالة خطأ تتعلق بأسماء الحسابات القابلة للتخمين ونستخدم فقط البريد الإلكتروني الفريد كاسم المستخدم.
اختبار المصادقة
المصادقة على المستخدم هي جانب مهم في التجارة الإلكترونية.
أحد الأسباب الأكثر إقناعًا لاختبار من منظور المستخدم المصادق عليه هو أن بعض الثغرات يمكن استغلالها بدون بيانات اعتماد ولكن يمكن اكتشافها فقط باستخدام بيانات اعتماد. بدون اختبار المصادقة، قد تمر ضعف خارجي خطير يسمح بانتحال هوية المستخدم دون أن يلاحظ.
يمكنك الاطلاع على تفاصيل المبادئ والقواعد التي تصادق على المستخدمين لشرعيتهم في مشروع Spurtcommerce الخاص بنا.
اختبار نقل بيانات الاعتماد عبر قناة مشفرة - WSTG-ATHN-01
يتم حماية البيانات الحساسة عند نقلها عبر الشبكة وقد استخدمنا HTTPS للمنصة وقمنا بإعادة توجيه أي طلبات HTTP إلى HTTPS.
اختبار بيانات الاعتماد الافتراضية - WSTG-ATHN-02
قمنا بتكوين المنصة بحيث تكون كلمات مرور المستخدم غير قابلة للتخمين. لا يمكن للمستخدم إعطاء كلمة مرور تكرر بالكامل أو جزئيًا أسماء المستخدمين ويجب أن تحتوي كلمات المرور على أحرف خاصة وأرقام وحروف كبيرة.
اختبار آلية القفل الضعيفة - WSTG-ATHN-03
يقيم قدرة آلية قفل الحساب على التخفيف من تخمين كلمات المرور بالقوة الغاشمة. ثم يقيم مقاومة آلية الفتح لفتح الحساب غير المصرح به. بعد 5 محاولات ناجحة، قمنا بتكوين قفل حساب المستخدم لبعض الوقت وقد تم ذلك لمنع المهاجمين من تخمين كلمات المرور.
اختبار تجاوز مخطط المصادقة - WSTG-ATHN-04
يضمن تطبيق المصادقة عبر جميع الخدمات التي تتطلبها. تقوم منصتنا بمصادقة المستخدم في كل طلب باستخدام وسيط. لن يتمكن أي شخص غير مصرح له من الوصول إلى أي طلب دون المرور عبر المصادقة.
اختبار كلمة المرور الضعيفة - WSTG-ATHN-05
يتحقق من أن الجلسة التي تم إنشاؤها تُدار بشكل آمن ولا تعرض بيانات اعتماد المستخدم للخطر. ولا يتم حفظ كلمة المرور في المتصفح.
اختبار ضعف ذاكرة التخزين المؤقت للمتصفح - WSTG-ATHN-06
يراجع ما إذا كانت المنصة تخزن معلومات حساسة على جانب العميل. ثم يراجع ما إذا كان الوصول يمكن أن يحدث بدون تفويض.
اختبار سياسة كلمة المرور الضعيفة - WSTG-ATHN-07
يحدد مقاومة المنصة ضد تخمين كلمات المرور بالقوة الغاشمة باستخدام قواميس كلمات المرور المتاحة من خلال تقييم طول كلمات المرور وتعقيدها وإعادة استخدامها ومتطلبات عمرها. قمنا بحماية المنصة بكلمات مرور غير قابلة للتخمين.
اختبار تغيير كلمة المرور أو وظائف إعادة التعيين الضعيفة - WSTG-ATHN-09
اختبار تغيير كلمة المرور أو وظائف إعادة التعيين الضعيفة - WSTG-ATHN-09
اختبار التفويض
تفويض المستخدم هو جانب آخر ذو أهمية كبيرة في بوابات التجارة الإلكترونية.
في Spurtcommerce، قمنا بتنفيذ الآليات الصحيحة، حيث يمكن للمستخدمين الوصول فقط إلى الوحدات التي لديهم الإذن بها.
يتم رفض الأذونات إذا حاولوا الوصول إلى وحدة عن طريق عنوان URL. لذلك، لا يمكن للمهاجمين استرداد أي سجلات مستخدم ليس لديهم الحق في الوصول إليها.
اختبار تجاوز مخطط التفويض -
يمكن للمستخدم الوصول فقط إلى الوحدات التي يمكنه الوصول إليها. لا يمكنهم الوصول إلى وحدات أخرى حتى إذا كانوا يعرفون عناوين URL التي يمكن من خلالها الوصول إلى الوحدة. تم ذلك باستخدام وسيط يتحقق من صحة المستخدم والأذونات التي لديه.
اختبار تصعيد الامتيازات -
لا يمكن للمستخدم منح الوصول إلى وحدة بنفسه ولأي مستخدم، يمكن توفير الوصول فقط من قبل المستخدمين الإداريين الأعلى رتبة.
message. Security_one_40_1
يحدد النقاط التي قد تحدث فيها مراجع الكائنات. كما يقيم تدابير التحكم في الوصول وما إذا كانت عرضة لـ IDOR. تقوم المنصة بالتحقق من الطلب وتفحص قاعدة البيانات وتتحقق من البيانات مع المستخدم. لذلك، لا يمكن للمهاجمين أو القراصنة استرداد سجلات المستخدمين الآخرين.
اختبار إدارة الجلسة
تنفيذ رموز الجلسة لمستخدمي بوابة التجارة الإلكترونية أمر بالغ الأهمية.
في Spurtcommerce، قمنا بتنفيذ إدارة الجلسة، حيث تصادق الرموز على المستخدمين ويتم تشفير هذه الرموز.
يمكنك الاطلاع على تفاصيل العملية التي اتبعناها في هذا الصدد.
اختبار مخطط إدارة الجلسة -
تجمع المنصة رموز الجلسة لنفس المستخدم وللمستخدمين المختلفين حيثما أمكن ذلك. في هذا المشروع للتجارة الإلكترونية، قمنا بإدخال رموز للمصادقة وستكون الرموز التي يتم إنشاؤها فريدة لكل مستخدم وستكون الرموز التي يتم إنشاؤها مشفرة أيضًا.
اختبار وظيفة تسجيل الخروج -
يقيم واجهة تسجيل الخروج. ثم يحلل انتهاء صلاحية الجلسة وما إذا كانت الجلسة تُقتل بشكل صحيح بعد تسجيل الخروج. تحفظ المنصة الرمز الذي تم إنشاؤه في قاعدة البيانات وفي كل طلب، يتحقق النظام مما إذا كان الرمز موجودًا في قاعدة البيانات. إذا لم يكن كذلك، يتم إرجاع الطلب متبوعًا برسالة خطأ. ثم أثناء تسجيل الخروج، يتم حذف الرمز من قاعدة البيانات. .
اختبار التحقق من البيانات
التحقق الشامل من البيانات هو ضرورة مطلقة في مشاريع التجارة الإلكترونية.
في Spurtcommerce، اتبعنا المعايير المهمة للتحقق من البيانات من خلال تنفيذ عملية للقضاء على البيانات أو الرموز غير المناسبة ومعلمات الطلب. هذا مهم جدًا لمنع أي ثغرات وأي إدخال غير ضروري للبيانات غير ذات الصلة.
يمكنك عرض تفاصيل العملية التي قمنا بتنفيذها للتحقق من البيانات في Spurtcommerce.
اختبار تلوث معلمات HTTP -
في مشروع Spurtcommerce، استخدمنا ملفات الطلب لكل طلب وفي الطلب، يمكنهم استخدام المعلمات الخاصة فقط.
اختبار حقن SQL -
تتحقق المنصة من كل قيمة معلمة وتطهر أي مدخلات من هجوم XSS.
اختبار حقن SSI -
لا تسمح المنصة ببعض الأحرف لبعض المعلمات وقد تم ذلك لتقييد المهاجمين.
اختبار حقن IMAP SMTP -
تتحقق المنصة من معلمة نص البريد الإلكتروني مع أي هجمات القوة الغاشمة حتى لا يتمكن المهاجم من تضمين علامات html أو أي نوع من النصوص البرمجية.
اختبار حقن الأكواد -
تتحقق المنصة أيضًا من معلمة الطلب، وتتحقق مما إذا كان لديها رمز في المعلمات. إذا كان الرمز موجودًا، فإنه يعيد رسالة خطأ.
اختبار حقن الأوامر -
تتحقق المنصة من معلمة الطلب، وتتحقق مما إذا كان لديها رمز سطر الأوامر في المعلمات. إذا كان موجودًا، فإنه يعيد رسالة خطأ.
اختبار حقن سلسلة التنسيق -
تقييد المنصة السلسلة التي تسبب أي سلوك غير مرغوب فيه من المنصة.
اختبار حقن القوالب من جانب الخادم -
في المنصة، استخدمنا قالب ejs في جانب الخادم. هذا يقيد بناء الجملة الأصلي للقالب في معلمات الطلب.
التشفير
في التجارة الإلكترونية، لتجنب التخلي عن العربة، من المهم أن يكون لدينا ميزة الدفع بنقرة واحدة وميزات أخرى مشابهة. ومع ذلك، فإن هذه الميزات تحمل خطر اختراق البيانات والوصول السهل إلى البيانات المالية للعملاء. .
أحد الأسباب الأكثر إقناعًا لاختبار من منظور المستخدم المصادق عليه هو أن بعض الثغرات يمكن استغلالها بدون بيانات اعتماد ولكن يمكن اكتشافها فقط باستخدام بيانات اعتماد. بدون اختبار المصادقة، قد تمر ضعف خارجي خطير يسمح بانتحال هوية المستخدم دون أن يلاحظ.
لذلك، يلعب تشفير رموز المستخدم دورًا مهمًا للغاية. في Spurtcommerce، استخدمنا HTTPS لتجنب نقل البيانات الحساسة ولأي معلومات من هذا القبيل يتم فرض التشفير لمنع جميع الهجمات والثغرات المحتملة.
اختبار ضعف طبقة النقل الآمنة -
استخدمنا HTTPS لمراجعة قوة وصلاحية الشهادة الرقمية.
اختبار إرسال المعلومات الحساسة عبر قنوات غير مشفرة -
استخدمنا HTTPS لتجنب تمامًا نقل أي معلومات حساسة عبر القنوات ويقوم النظام بتقييم الخصوصية والأمان للقنوات المستخدمة في صيغة التشفير.
اختبار ضعف التشفير -
لأي معلومات حساسة، يقوم النظام بإنشاء تشفير AES. هذا مفتاح سري مكون من 64 حرفًا وهو آمن للغاية ويمنع أي هجمات.
اختبار منطق الأعمال
في Spurtcommerce، يتم تنفيذ جميع التحقق من منطق الأعمال فقط في واجهة برمجة التطبيقات من جانب الخادم.
باستخدام ACL، يتم تسجيل كل إجراء على النظام وقد تأكدنا من أن كل إجراء رئيسي يتبع تدفق خطوة بخطوة في النظام.
أيضًا، قمنا بتكوين النظام لعدم قبول الملفات ذات الامتدادات التي يمكن أن تمرر بيانات أو رموز غير ذات صلة إلى النظام.
اختبار التحقق من بيانات منطق الأعمال -
تأكدنا من أن جميع التحقق من منطق الأعمال سيتم تنفيذه من الخلفية وأن نظامنا لا يثق أبدًا ببيانات المستخدم.
اختبار القدرة على تزوير الطلبات -
تأكدنا من أن التحقق من البيانات المخفية يتم أيضًا في الخلفية وأن النظام سيتم منعه من الطلبات المزورة.
اختبار فحوصات النزاهة -
استخدمنا ACL وقمنا أيضًا بتدقيق كل إجراء يتم تنفيذه في نظامنا. يمكن رؤية ذلك من قبل المسؤول ويمكن للمسؤول رؤية تقرير كامل عن الإجراءات التي قام بها كل مستخدم ومتى (الوقت المحدد) تم تنفيذ هذا الإجراء.
اختبار تجاوز تدفقات العمل -
قمنا أيضًا بتنفيذ تدفق خطوة بخطوة في النظام. فقط بعد الانتهاء بنجاح من التدفقات الرئيسية، يمكن تنفيذ التدفقات اللاحقة.
اختبار تحميل أنواع الملفات غير المتوقعة -
سمحنا ببعض أنواع الملفات المتوقعة فقط لتحميل المستندات ويقوم النظام بتقييد الملفات ذات الامتدادات .php، .jsp و .aspx.
اختبار تحميل الملفات الضارة -
فقط هذه الملفات ذات الامتدادات - pdf، xlsx، doc و docx سيتم السماح بتحميلها والباقي جميع الملفات ذات الامتدادات الأخرى يتم تقييدها. .
اختبار من جانب العميل
في Spurtcommerce، قمنا بتنفيذ الحلول لجميع الثغرات المحتملة التي يمكن أن تحدث من جانب العميل وقد تؤدي إلى تسرب أي معلومات حساسة.
في التجارة الإلكترونية، هذا مهم حيث توجد فرص كبيرة للمستخدمين الذين يحاولون تقليد عناوين URL لجلب البيانات التي ليس لديهم الحق في الوصول إليها.
مع وجود وسيط للتحقق من الرمز، لا يثق النظام بأي بيانات من جانب العميل.
اختبار إعادة توجيه عنوان URL من جانب العميل -
اختبار حقن CSS -
عرض أسماء ملفات CSS من عرض مصدر الصفحة هو أحد الثغرات. واجهتنا الأمامية التي تم بناؤها على Angular تغير اسم CSS وتستبدل الأسماء بأسماء فريدة غير قابلة للتخمين.
اختبار النقر -
عرض نظامنا في iframe هو أحد الثغرات. نحن نمنع عرض نظامنا في iframes.
اختبار تخزين المتصفح -
نخزن الرمز في التخزين المحلي وفي جانب الخادم، نستخدم وسيط للتحقق من الرمز. لن يثق ببيانات العميل.
اختبار تضمين النصوص عبر المواقع -
نمنع تسرب أي معلومات حساسة من النظام. .
اختبار واجهة برمجة التطبيقات
نظام التجارة الإلكترونية الخاص بنا يتحقق من أن جميع معايير الأمان والاختبار قد تم تلبيتها ومن خلال استخدام Swagger مع التزامن المناسب بين جانب الخادم وجانب العميل مع توثيق REST API.
اختبار GraphQL -
قمنا بتأمين تكوين جاهز للإنتاج في النشر والتحقق من أن جميع المدخلات من هجوم XSS.