تاريخ التعديل: 29/03/2023
تماشيًا مع اتجاهات المجال وأفضل الممارسات، أجرت مجموعة عمل تحالف الدفاع عن التطبيقات جلسات مراجعة في الربع الأول من عام 2023 لتعديل إجراءات اختبار CASA وتبسيطها وتوحيدها. وبناءً على جلسات العمل هذه، تم تعديل متطلبات CASA والإجراءات الخاصة بها كما يلي:
-
تم تعديل متطلبات CASA من 134 إلى 73 متطلبات (راجع التفاصيل أدناه).
-
لاجتياز تقييم CASA، يجب أن يجتاز التطبيق جميع متطلبات CASA البالغ عددها 73 أو يزيلها بغض النظر عن تقييم CWE.
-
تمّ تعديل أوصاف المستويات المعدّلة لتتضمن الدرس التطبيقي الثاني.
-
تمت إضافة معلومات تأكيد لكل مستوى.
-
تعديل بسيط لتبسيط عملية المسح الذاتي من الفئة 2
تحديث متطلبات CASA
-
يمكن العثور على القائمة المحدّثة للمتطلبات الحالية هنا
-
تمت إزالة المتطلبات التالية
معرّف الطلب |
تعليقات على مجموعة العمل |
8.1.6 |
هل سيعيد النظر في هذا الشرط اعتباره شيئًا أكثر قابلية للتنفيذ (على سبيل المثال، يجب الاحتفاظ بالنُسخ الاحتياطية فقط لمدة X من الوقت، كما يجب مراقبة النُسخ الاحتياطية للتأكد من عدم تعرضها للسرقة/التلف، ويجب تدقيق النُسخ الاحتياطية بانتظام للتأكد من إمكانية نقلها مرة أخرى إلى مرحلة الإنتاج). الافتراض الحالي واسع جدًا ويحتاج إلى المزيد من التعريف. |
5.1.4 |
تكرار حالات الاختبار الأخرى. هذه تجربة اختبارية ذات قيمة منخفضة بجهد مرتفع. يوصى بالإزالة. |
7.3.3 |
تكرار حالات الاختبار الأخرى. هذه تجربة اختبارية ذات قيمة منخفضة بجهد مرتفع. يوصى بالإزالة. |
1,2.2 |
الإزالة بسبب التغطية في طلب آخر مثل 4.1.1 |
2.2.4 |
إزالة الطلب كما هو مشمول في الإصدار 4.3.1 (4.3.1 التحقّق من أن الواجهات الإدارية تستخدم مصادقة مناسبة متعدّدة العوامل من أجل منع الاستخدام غير المصرح به). والذي يشمل مقاومة انتحال الهوية ضد التصيّد الاحتيالي في واجهات المشرفين ومسارات الوصول الداخلية الأخرى |
2.2.5 |
لا تتيح معظم CSP الإزالة لأنّ mTLS غير متوافقة مع معظم مقدمي خدمة الضبط (CSP)، كما أنّ غالبية مطوّري البرامج الذين تم اختبارهم لاستخدام CASA سيستخدمون المصادقة المستندة إلى كلمة المرور. |
2.4.3 |
المعيار كما هو مكتوب ليس محددًا بما يكفي ليكون قابلاً للتنفيذ |
2,4.5 |
لا يمكن للمتطلبات التي تمت إزالتها في الإصدار V5 من ASVS وخوارزميات التجزئة المقترَحة في الإصدار 2.4.1 استيفاء هذا المطلب. |
2,7.5 |
لا يمكن إجراء الاختبار لأنه قد يتطلب تحليلاً لمقدّمي خدمة OOB من جهات خارجية، ولكن المخاطرة هنا منخفضة لأن رمز المصادقة قصير الأجل. |
2.8.2 |
لا ينطبق إلا على حلول "التطبيقات المصممة بغرض الإعلانات" المخصّصة، والتي تشملها الإصدارات 6.4.2 و6.4.1 أيضًا |
2.8.5 |
يُرجى إزالة المطلب الذي تغطيه 2.7.6 بالإضافة إلى أن محاولات التسجيل الفاشلة مشمولة بمتطلبات التسجيل في ASVS |
2.8.6 |
لا يُعد استخدام كلمة المرور لمرة واحدة (OTP) على مستوى التطبيق حالة استخدام شائعة، ولكن هذا الطلب مطلوب لواجهات المشرفين. ومع ذلك يتطلّب الإصدار 4.3.1 (التحقّق من أنّ الواجهات الإدارية تستخدم مصادقة مناسبة متعدّدة العوامل لمنع الاستخدام غير المصرّح به.) تغطي هذه الواجهة واجهات برمجة التطبيقات للمشرف وستغطي هذه المخاطر. |
2,9.1 |
ويشمل هذا الشرط الأجهزة الفعلية وفقًا لـ ASVS (مفاتيح الأمان المشفّرة هي بطاقات ذكية أو مفاتيح FIDO، حيث يتعيّن على المستخدم توصيل أو إقران جهاز تشفير إلى جهاز الكمبيوتر لإكمال المصادقة. ترسل الجهات المعتمدة لإجراء اختبار التحقّق تحديًا إلى أو أجهزة التشفير، ويحسب الجهاز أو البرنامج الاستجابة استنادًا إلى المخزّن بواسطة مفتاح تشفير.) وهو ما يجعل هذا الشرط خارج نطاق CASA نظرًا لأن مخاطر مصادقة الأجهزة الفعلية مشمولة في 4.3.1 لغرض MFA (فعلي أو برنامجي) |
2,9.3 |
ويشمل هذا الشرط الأجهزة الفعلية وفقًا لـ ASVS (مفاتيح الأمان المشفّرة هي بطاقات ذكية أو مفاتيح FIDO، حيث يتعيّن على المستخدم توصيل أو إقران جهاز تشفير إلى جهاز الكمبيوتر لإكمال المصادقة. ترسل الجهات المعتمدة لإجراء اختبار التحقّق تحديًا إلى أو أجهزة التشفير، ويحسب الجهاز أو البرنامج الاستجابة استنادًا إلى المخزّن بواسطة مفتاح تشفير.) وهو ما يجعل هذا الشرط خارج نطاق CASA نظرًا لأن مخاطر مصادقة الأجهزة الفعلية مشمولة في 4.3.1 لغرض MFA (فعلي أو برنامجي) |
2.10.1 |
المتطلب هو تناقض بين 2.10.2 |
2.10.3 |
مشمولة في الإصدار 2.4.1 (تحقّق من استخدام إحدى وظائف تجزئة كلمة المرور التالية عند تخزين كلمة مرور المستخدم للتطبيق: argon2id أو scrypt أو bcrypt أو PBKDF2) التي تغطي خطر الهجمات بلا اتصال بالإنترنت وتخزين كلمات المرور. |
2.10.4 |
مشمولة في الإصدار 6.4.2 تحقَّق من أنّ المادة الأساسية غير معرّضة للتطبيق، بل تستخدم وحدة أمان معزولة، مثل تخزين بيانات لعمليات التشفير. |
3.2.3 |
مشمول في الإصدارات 3.4.1 و3.4.2 و3.4.3 |
3.5.1 |
يمكن للمستخدم إبطال الرموز المميزة عبر موفر OAuth |
4.3.3 |
يغطي الترخيص "MFA" طلب المشرف لواجهات المشرفين والوصول المميّز. |
5.1.3 |
وتشمل متطلبات التحقق الأخرى للإدخال هذا الطلب، وفي حال عدم تقديم التحقّق من الصحة لا يمثل ثغرة أمنية فعلية في النشاط التجاري، قد تكون درجة الخطورة أقل. على سبيل المثال، يؤدي عدم التحقّق من صحة رقم الهاتف بشكل صحيح إلى عرض رقم الهاتف بشكل غير صحيح على صفحة المعلومات فقط، وهو ما لا يؤثر في الأمان بشكل مباشر. |
5.1.4 |
وتشمل متطلبات التحقق الأخرى للإدخال هذا الطلب، وفي حال عدم تقديم التحقّق من الصحة لا يمثل ثغرة أمنية فعلية في النشاط التجاري، قد تكون درجة الخطورة أقل. على سبيل المثال، يؤدي عدم التحقّق من صحة رقم الهاتف بشكل صحيح إلى عرض رقم الهاتف بشكل غير صحيح على صفحة المعلومات فقط، وهو ما لا يؤثر في الأمان بشكل مباشر. |
5.3.2 |
إنّ الجزء من هذا المطلب الذي يحدّد صلاحية كل حرف يونيكود صالح قد يجعل من الصعب اختباره. لن يتضمّن كل تطبيق نموذجًا نصيًا كبيرًا بما يكفي ليناسب كل حرف Unicode. هناك أيضًا نقص في الدعم لأنظمة تشغيل معيّنة وأدوات لاختراق مساحة unicode بأكملها مما يجعلك غير قادر على اختبار هذا حتى إذا كان الخادم يدعمه. قيمة الأمان المشكوك فيها بشكل عام. كان الإصدار مضمّنًا في الأصل ولكن تمت إزالته بسبب مشاكل في الاختبار. |
6.2.5 |
مشمولة في 6.2.4 و6.2.3 |
6.2.6 |
مشمولة في 6.2.4 و6.2.3 |
6.3.1 |
مشمولة في 6.2.4 و6.2.3 |
6.3.3 |
مشمولة في متطلبات إنشاء أرقام عشوائية أخرى. |
7.1.2 |
مشمول في الإصدار 7.1.1 |
7.1.3 |
مشمول في الإصدار 7.1.1 |
7.3.1 |
مشمول في الإصدار 7.1.1 |
7.3.3 |
مشمول في الإصدار 7.1.1 |
8.1.3 |
من الصعب وصف المعلَمة المقبولة أو الضرورية. الحالة ليست قابلة للاختبار. ما الذي يشكل ضرورة؟ كيف سنحدد ما إذا كان هناك استثناء صالح؟ تم اعتبارها خارج نطاق CASA |
8.3.3 |
ليس شرطًا قابلاً للاختبار، يتعلق بسياسة الخصوصية وبنود الخدمة وليس أمان التطبيق. هذه المراجعة قانونية وملتزِمة بالسياسات، ولا يندرج ضمن نطاق CASA. |
8.3.6 |
يكون عنصر التحكُّم خاصًا بالنظام (في نظام التشغيل Windows/Linux) وفي الأجهزة تحديدًا، وفي معظم الحالات، لا يتم التحكم في التطبيق. |
8.3.8 |
مشمول في الإصدارات 1.8.1 و1.8.2 و1.1.4 |
9.2.5 |
مشمولة في الإصدار 8.3.5 ومراجعات عن سياسات التسجيل للتطبيق. |
10,1.1 |
تتم مراجعة هذا القسم من خلال مراجعة الهندسة المعمارية، ويُعد ذلك من أفضل الممارسات المقترَحة. المطلب غير قابل للاختبار |
10.2.3 |
لا يمكن القيام بذلك في فترة زمنية معقولة. يجب توثيق أي رمز غريب ومراجعته، إلا أنّ ضبط مهمة محدّدة لضمان عدم توفُّر الأبواب الخلفية قد يتطلب إجراء مراجعة تفصيلية لكل رمز على حدة وضمان عدم وجود أبواب خلفية. من الصعب اختبار الوظائف الضارة المصممة جيدًا |
10,2.4 |
لا توجد طريقة ممكنة للاختبار. لا يمكن القيام بذلك في فترة زمنية معقولة. يجب توثيق أي رمز غريب ومراجعته، ولكن تحديد مهمة معيّنة للتأكّد من عدم توفّر الأبواب الخلفية، يتطلّب إجراء مراجعة تفصيلية لكل رمز ولا يضمن عدم وجود أبواب خلفية. من الصعب اختبار الوظائف الضارة المصممة جيدًا |
10,2.5 |
لا توجد طريقة ممكنة للاختبار. لا يمكن القيام بذلك في فترة زمنية معقولة. يجب توثيق أي رمز غريب ومراجعته، ولكن تحديد مهمة معيّنة للتأكّد من عدم توفّر الأبواب الخلفية، يتطلّب إجراء مراجعة تفصيلية لكل رمز ولا يضمن عدم وجود أبواب خلفية. من الصعب اختبار الوظائف الضارة المصممة جيدًا |
13,1 |
مشمول في الإصدارَين 5.2.6 و5.3.9 |
12.3.1 |
مخاطر اجتياز المسار التي تخضع لها متطلبات حالية أخرى من الفصل 5 (التحقّق من الصحة والصحّية والترميز) لخدمة ASVS وCASA |
12.3.3 |
مشمول في الإصدارَين 5.2.6 و5.3.9 |
12.3.6 |
مشمولة في 10.3.2 12.4.1 و12.4.2 |
12.5.1 |
مشمولة في 10.3.2 و12.4.2 |
12.5.2 |
مشمولة في 10.3.2 12.4.1 و12.4.2 |
13.1.5 |
وتشمل متطلبات التحقق الأخرى للإدخال هذا الطلب، وفي حال عدم تقديم التحقّق من الصحة لا يمثل ثغرة أمنية فعلية في النشاط التجاري، قد تكون درجة الخطورة أقل. على سبيل المثال، يؤدي عدم التحقّق من صحة رقم الهاتف بشكل صحيح إلى عرض رقم الهاتف بشكل غير صحيح على صفحة المعلومات فقط، وهو ما لا يؤثر في الأمان بشكل مباشر. |
13.2.2 |
وتشمل متطلبات التحقق الأخرى للإدخال هذا الطلب، وفي حال عدم تقديم التحقّق من الصحة لا يمثل ثغرة أمنية فعلية في النشاط التجاري، قد تكون درجة الخطورة أقل. على سبيل المثال، يؤدي عدم التحقّق من صحة رقم الهاتف بشكل صحيح إلى عرض رقم الهاتف بشكل غير صحيح على صفحة المعلومات فقط، وهو ما لا يؤثر في الأمان بشكل مباشر. |
13.2.3 |
مشمول في الإصدار 4.2.2 |
13.2.5 |
وتشمل متطلبات التحقق الأخرى للإدخال هذا الطلب، وفي حال عدم تقديم التحقّق من الصحة لا يمثل ثغرة أمنية فعلية في النشاط التجاري، قد تكون درجة الخطورة أقل. على سبيل المثال، يؤدي عدم التحقّق من صحة رقم الهاتف بشكل صحيح إلى عرض رقم الهاتف بشكل غير صحيح على صفحة المعلومات فقط، وهو ما لا يؤثر في الأمان بشكل مباشر. |
13- 3 |
وتشمل متطلبات التحقق الأخرى للإدخال هذا الطلب، وفي حال عدم تقديم التحقّق من الصحة لا يمثل ثغرة أمنية فعلية في النشاط التجاري، قد تكون درجة الخطورة أقل. على سبيل المثال، يؤدي عدم التحقّق من صحة رقم الهاتف بشكل صحيح إلى عرض رقم الهاتف بشكل غير صحيح على صفحة المعلومات فقط، وهو ما لا يؤثر في الأمان بشكل مباشر. |
14,4 |
مشمول في الإصدار 5.3.1 |
14.4.2 |
وتشمل متطلبات التحقق الأخرى للإدخال هذا الطلب، وفي حال عدم تقديم التحقّق من الصحة لا يمثل ثغرة أمنية فعلية في النشاط التجاري، قد تكون درجة الخطورة أقل. على سبيل المثال، يؤدي عدم التحقّق من صحة رقم الهاتف بشكل صحيح إلى عرض رقم الهاتف بشكل غير صحيح على صفحة المعلومات فقط، وهو ما لا يؤثر في الأمان بشكل مباشر. |
14,4-3 |
مشمولة في 5.2.7 و5.3.3 |
14 -4-5 |
مشمول في الإصدارين 6.2.1 و9.2.1 |
14.4,7 |
مشمول في 12.4.1 |
14.5.3 |
مشمولة في 14.5.2 |
2,1.5 |
مشمول في 2.1.1 |
2.1.6 |
مشمول في 2.1.1 |
2.2.3 |
لا صلة لها بالكازا لأن المخاطر تخضع لها عناصر التحكم الأخرى في مكافحة التشغيل التلقائي |
2.5.6 |
مشمول في الحماية الأخرى بكلمة مرور |
3,1.1 |
انخفاض مخاطر التعرّض للفيروس وتغطيه عناصر التحكم الأخرى في ASVS |
3.2.1 |
انخفاض مخاطر التعرّض للفيروس وتغطيه عناصر التحكم الأخرى في ASVS |
3.4.4 |
انخفاض مخاطر التعرّض للفيروس وتغطيه عناصر التحكم الأخرى في ASVS |
3.4.5 |
انخفاض مخاطر التعرّض للفيروس وتغطيه عناصر التحكم الأخرى في ASVS |
4.2.1 |
مشمولة في 13.1.4 |
5.2.8 |
مشمول في فحوصات التحقق من الصحة والصحّة الأخرى |
5.3.5 |
مشمول في فحوصات التحقق من الصحة والصحّة الأخرى |
7.4.1 |
مشمول في فحوصات التسجيل |
8.2.3 |
مشمول في الإصدار 8.1.1 |
9.1.1 |
مشمول في الإصدارين 6.2.1 و9.2.1 |
1,2.3 |
مشمولة في 1.1.4 و1.8.4 و1.8.2 |
1,4.4 |
مشمولة في 1.1.4 و1.8.4 و1.8.2 |
1,5.2 |
مشمولة في 1.1.4 و1.8.4 و1.8.2 |
1,5.3 |
مشمولة في 1.1.4 و1.8.4 و1.8.2 |
1,5.4 |
مشمولة في 1.1.4 و1.8.4 و1.8.2 |
1,9.1 |
مشمولة في 1.1.4 و1.8.4 و1.8.2 |
1.11 |
مشمولة في 1.1.4 و1.8.4 و1.8.2 |
1,14 |
مشمولة في 1.1.4 و1.8.4 و1.8.2 |
1.14.2 |
مشمولة في 1.1.4 و1.8.4 و1.8.2 |
1,14,3 |
مشمولة في 1.1.4 و1.8.4 و1.8.2 |
1.14.4 |
مشمولة في 1.1.4 و1.8.4 و1.8.2 |
1,14,5 |
مشمولة في 1.1.4 و1.8.4 و1.8.2 |
1.14.6 |
مشمولة في 1.1.4 و1.8.4 و1.8.2 |
6.1.2 |
مشمول في الإصدار 6.1.1 |
6.1.3 |
مشمول في الإصدار 6.1.1 |
2.10.2 |
مشمول في 2.5.4 |
2.2.1 |
مشمول في 11.1.4 |
2.7.3 |
مشمول في 2.7.2 |
2.7.4 |
مشمول في 2.7.2 |
5.1.2 |
مشمول في مراقبة مكافحة الأتمتة |
6.2.2 |
لم يتم تعريف خوارزميات التشفير المعتمدة |
8.2.1 |
مشمول في الإصدار 8.1.1 |
9.1.2 |
مشمول في الإصدار 9.2.1 |
9.1.3 |
مشمول في الإصدار 9.2.1 |
5.5.1 |
مشمول في 1.8.2 |
14.2.1 |
مشمول في الإصدار 1.14.6 |
3.3.4 |
ولا ينطبق ذلك على التطبيقات التي تستخدم AuthN/Z عديمة الحالة. الموافقة على توصية مجموعة NCC بالإزالة. ويجب أن يشمل ذلك الإصدار 3.3.3 |
-
تمت إضافة المتطلبات التالية:
معرّف الطلب |
الوصف |
1,1.4 |
تحقَّق من توثيق وتبرير جميع حدود الثقة والمكونات وتدفقات البيانات المهمة للتطبيق. |
1.8.1 |
التحقّق من تحديد جميع البيانات الحسّاسة وتصنيفها ضمن مستويات الحماية |
1.8.2 |
تحقق من أن جميع مستويات الحماية لديها مجموعة مرتبطة من متطلبات الحماية، مثل متطلبات التشفير، ومتطلبات السلامة، والاحتفاظ، والخصوصية، وغيرها من متطلبات السرية، ومن أنها في الهندسة المعمارية. |
2,1.1 |
تحقَّق من أن طول كلمات المرور التي حدّدها المستخدم لا يقل عن 12 حرفًا. |
2.5.4 |
تحقق من عدم وجود حسابات مشتركة أو تلقائية (مثل "جذر"، "admin" أو "sa". |
4.2.1 |
تأكّد من حماية البيانات وواجهات برمجة التطبيقات الحسّاسة من هجمات "مرجع الكائن المباشر غير الآمن" (IDOR) التي تستهدف إنشاء السجلّات وقراءتها وتعديلها وحذفها، مثل إنشاء سجلّ تابع لمستخدم آخر أو تعديله أو عرض سجلات الجميع أو حذف جميع السجلّات. |
1.14.6 |
تحقّق من أن التطبيق لا يستخدم لغة غير متوافقة أو غير آمنة أو متوقّفة. التقنيات من جهة العميل مثل مكونات NSAPI الإضافية، والفلاش، وShockwave، وActiveX، Silverlight أو NACL أو تطبيقات جافا من جانب العميل. |