افحص تطبيقك بحثًا عن الثغرات الأمنية
باختصارافتح الأمان وانقر على بدء فحص الأمان. خلال دقيقة أو دقيقتين، يفحص MonstarX شفرتك وفق 33 قاعدة، ويختبر التطبيق أثناء تشغيله كما لو كان غريبًا، ويكلّف الذكاء الاصطناعي بقراءة التطبيق كله. تحصل على درجة من A إلى F وقائمة ملاحظات تبدأ بالأخطر، لكل منها مكانها وسبب أهميتها وما يجب تغييره. اختر ما تريد إصلاحه، فيصلحه MonstarX في إنشاء عادي ثم يعيد الفحص. ويمكنك تنزيل النتيجة في تقرير.
التطبيقات التي تُكتب بسرعة تميل إلى الثقة بالمتصفح أكثر من اللازم: دالة يستطيع أي شخص استدعاءها، أو حجز يُبحث عنه برقمه دون التحقق من صاحبه، أو سعر يؤخذ من الصفحة. وهذه بالضبط هي الثغرات التي يبحث عنها المهاجمون.
يقرأ تبويب الأمان تطبيقك كما يقرؤه مهاجم، ويعرض ما يجده بدءًا بالأخطر، ويساعدك على إصلاحه. اعتبره اختبار اختراق صغيرًا (فحصًا أمنيًا يحاول فيه شخص الاختراق عن قصد)، مدمجًا في MonstarX.
كيف أشغّل فحص الأمان؟
Section titled “كيف أشغّل فحص الأمان؟”-
افتح مشروعك وانقر على الأمان في الشريط العلوي.
-
انقر على بدء فحص الأمان. يستغرق الفحص دقيقة أو دقيقتين.
-
تابع الأجزاء الثلاثة وهي تنتهي واحدًا تلو الآخر. يمكنك مغادرة التبويب: يعمل الفحص على خوادم MonstarX ويستمر. ويوقفه زر إلغاء مع الاحتفاظ بما وجده حتى تلك اللحظة.
تعرض شارة تبويب الأمان في الشريط العلوي مؤشر تحميل أثناء الفحص، ثم عدد الملاحظات المفتوحة (بلون أخطرها) أو نقطة خضراء إذا لم تبقَ ملاحظات مفتوحة. ولتعيد الفحص لاحقًا، انقر على إعادة الفحص أعلى التبويب.
ما الذي يفحصه فحص الأمان؟
Section titled “ما الذي يفحصه فحص الأمان؟”للفحص ثلاثة أجزاء:
| الجزء | ما يفعله | التكلفة |
|---|---|---|
| فحوص الشفرة | 33 قاعدة تُطبَّق على كل ملف في تطبيقك: غياب التحقق من تسجيل الدخول، وسجلات تُغيَّر دون التحقق من مالكها، وأسرار مكتوبة في الشفرة، واستعلامات قاعدة بيانات تُبنى من النص، وHTML غير آمن، وملفات مرفوعة دون تحقق، وwebhooks غير موثّقة، وغير ذلك. | مجانية |
| فحوص التطبيق أثناء التشغيل | طلبات للقراءة فقط إلى تطبيقك وهو يعمل، كأنها من غريب لا حساب له: صفحات مخصصة لمن سجّلوا الدخول، ومسارات تجيب أي شخص، ووصول من مواقع أخرى، وفي التطبيق المنشور: ترويسات الأمان والملفات التي لا يجب تقديمها أبدًا. | مجانية |
| مراجعة بالذكاء الاصطناعي | يقرأ نموذج ذكاء اصطناعي تطبيقك كله والملاحظات بين يديه، فيؤكدها أو يستبعدها، ويبحث عمّا لا تكشفه إلا القراءة، مثل سعر يُؤخذ من الصفحة دون تحقق، أو بيانات ترسلها صفحة ولا تعرضها أبدًا. | تستهلك الأرصدة، مثل طلب في وضع المحادثة |
تستخدم فحوص التطبيق أثناء التشغيل تطبيقك المنشور عندما يكون متاحًا على الإنترنت، وإلا فالمعاينة. وتوضح النتيجة أيهما فُحص.
ما هما OWASP Top 10 وCWE؟
Section titled “ما هما OWASP Top 10 وCWE؟”OWASP منظمة غير ربحية تنشر قائمة Top 10، أشهر قائمة بأخطر أنواع المخاطر الأمنية في تطبيقات الويب. تُصنَّف كل ملاحظة تحت أحدها، فتعرف أنت (أو خبير الأمان) نوع المشكلة:
| بكلمات بسيطة | |
|---|---|
| A01 خلل في التحكم بالوصول | يستطيع شخص رؤية ما ليس له أو تغييره. |
| A02 فشل التشفير | تُحفظ الأسرار أو الرموز أو تُنشأ بطريقة ضعيفة. |
| A03 الحقن | نص يكتبه شخص يُنفَّذ كأمر أو شفرة. |
| A04 تصميم غير آمن | يمكن استغلال منطق التطبيق، مثل رسائل بريد أو حجوزات مجانية بلا حدود. |
| A05 إعدادات أمان غير صحيحة | الإعدادات مفتوحة أكثر من اللازم، مثل غياب ترويسات الأمان. |
| A06 مكونات تحتوي على ثغرات أو متقادمة | برامج قديمة فيها ثغرات معروفة. |
| A07 فشل تحديد الهوية والمصادقة | ضعف في تسجيل الدخول أو في إدارة الجلسات. |
| A08 فشل سلامة البرامج والبيانات | الوثوق بشفرة أو بيانات من الخارج دون تحقق. |
| A09 خلل في تسجيل أحداث الأمان ومراقبتها | تتسرب الأسرار إلى السجلات، أو تمر الهجمات دون أن يلاحظها أحد. |
| A10 تزوير الطلبات من جانب الخادم | يمكن دفع التطبيق إلى جلب عناوين يختارها المهاجم. |
CWE (Common Weakness Enumeration) فهرس مرقّم لنقاط ضعف محددة، مثل «CWE-639: سجل يُبحث عنه بمعرّف يتحكم فيه المستخدم». كل ملاحظة مرتبطة بفئتها في OWASP، وبصفحتها في CWE إن وُجدت، لتقرأ المزيد.
كيف أقرأ النتائج؟
Section titled “كيف أقرأ النتائج؟”ترى في الأعلى درجة من 100 مع تقدير من A إلى F، والملاحظات المفتوحة حسب الخطورة، وما فُحص وما اختُبر، وتكلفة المراجعة بالذكاء الاصطناعي، وملخص المراجعة في بضع جمل.
تبدأ الدرجة من 100، وتنقص 40 عن كل ملاحظة من مستوى حرج، و15 عن كل ملاحظة من مستوى مرتفع، و5 عن كل ملاحظة من مستوى متوسط، و1 عن كل ملاحظة من مستوى منخفض. ويخبرك التقدير بما تفعله بعد ذلك:
| التقدير | الدرجة | المعنى |
|---|---|---|
| A | 90–100 | لم يُعثر على شيء خطير. |
| B | 75–89 | بعض الأمور التي تحتاج إلى ترتيب. |
| C | 55–74 | أصلح الملاحظات المرتفعة قبل أن يستخدم التطبيق المزيد من الناس. |
| D | 35–54 | ثغرات خطيرة: أصلحها قبل النشر. |
| F | 0–34 | التطبيق مكشوف للهجوم كما هو. |
تعرض كل ملاحظة خطورتها، وعنوانها، وفئتها في OWASP، ورقم CWE، ومصدرها (فحص الشفرة أو فحص التطبيق أثناء التشغيل أو مراجعة بالذكاء الاصطناعي)، ومدى تأكد الفحص منها (مؤكد أو محتمل أو يحتاج إلى مراجعة)، والملف والسطر. انقر على ملاحظة لتفتحها:
- الشفرة حول السطر، مع تمييز السطر نفسه.
- ما الخطأ، وأهمية الملاحظة، وما يجب تغييره، بكلمات بسيطة.
- تعليق مراجعة بالذكاء الاصطناعي: هل أكّدت المراجعة الملاحظة، وكيف.
- ينقلك زر فتح في «الشفرة» إلى الملف في تبويب الشفرة.
عندما ترى المراجعة بالذكاء الاصطناعي أن الملاحظة إنذار كاذب، تقول مراجعة بالذكاء الاصطناعي: ربما لا تكون مشكلة حقيقية. تبقى تلك الملاحظة في القائمة، في آخرها، لكنها لا تُحسب في الدرجة.
تحت القائمة، يفتح قسم ما فُحص كل فحص جرى، مجمّعًا حسب فئات OWASP، مع علامة صح، أو عدد الملاحظات، أو سبب تخطيه.
كيف أصلح ما وجده؟
Section titled “كيف أصلح ما وجده؟”-
حدد الملاحظات التي تريد إصلاحها، أو انقر على تحديد الكل. يظهر زر إصلاح ملاحظتين، ويبقى معطّلًا ما دام هناك إنشاء قيد التشغيل.
-
انقر عليه. يخبرك MonstarX بما سيحدث، ثم انقر على إصلاح ملاحظتين مرة أخرى.
-
تتحول كل ملاحظة إلى مهمة في خطة الميزات (الأمان: …؛ وعندما تقترب الخطة من الامتلاء، تشترك الملاحظات في مهمة واحدة)، ويُرسل طلب إنشاء واحد إلى المحادثة، عليه شارة الأمان. يعمل مثل أي طلب، ويحفظ إصدارًا، وقد يختبر QA التطبيق بعده.
-
عندما ينتهي الإنشاء، يُعاد الفحص تلقائيًا. تظهر الملاحظات التي زالت على أنها محلولة (أصلحها وكيل الإنشاء: 2). أما الملاحظة التي بقيت فتعود معلَّمة بعبارة ما زالت موجودة بعد الإصلاح.
ماذا لو لم تكن الملاحظة مشكلة حقيقية؟
Section titled “ماذا لو لم تكن الملاحظة مشكلة حقيقية؟”افتحها وانقر على استبعاد مؤقت، ثم اذكر السبب:
- ليست مشكلة حقيقية
- مخاطر مقبولة: تعرف بها وتقبلها.
- عولجت بطريقة أخرى
تنتقل الملاحظة التي استبعدتها إلى قائمة مستبعدة مؤقتًا وتبقى فيها في كل فحص لاحق، حتى مع تغيّر أجزاء أخرى من الشفرة. انقر على إعادة الملاحظة لتعيدها إلى القائمة.
كيف أنزّل تقرير الأمان؟
Section titled “كيف أنزّل تقرير الأمان؟”انقر على تنزيل التقرير أسفل النتائج. تحصل على ملف Markdown (مستند نصي بسيط يُفتح في أي محرر)، يحمل اسم مشروعك، مثل dubai-dog-walks-security-report.md. وهو مصمم كتقرير اختبار اختراق:
- النطاق والطريقة: عدد القواعد التي طُبّقت وعلى كم ملف، وما الذي اختُبر، وما الذي فعلته المراجعة بالذكاء الاصطناعي.
- ملخص: الدرجة، والملاحظات المفتوحة حسب الخطورة، وملخص المراجعة.
- الملاحظات: كل منها مع روابطها في OWASP وCWE، ومكانها، والشفرة، وما الخطأ، وسبب أهميتها، وما يجب تغييره.
- ملاحظات حُلّت منذ الفحص السابق، واستبعدها المالك مؤقتًا، مع أسبابك.
- الفحوص: كل فحص ونتيجته.
التقرير مفيد لمشاركته مع مطوّر أو عميل أو مدقق. ويصبح متاحًا بعد أن يتوقف الفحص.
الأسئلة الشائعة
Section titled “الأسئلة الشائعة”هل الفحص مجاني؟
فحوص الشفرة وفحوص التطبيق أثناء التشغيل مجانية. أما المراجعة بالذكاء الاصطناعي فتستهلك الأرصدة، مثل طلب في وضع المحادثة، وتعرض النتائج تكلفتها. وإصلاح الملاحظات يستهلك الأرصدة مثل أي إنشاء.
هل يعني التقدير الجيد أن تطبيقي آمن؟
لا يستطيع أي فحص أن يضمن ذلك. فهو يجد ما تستطيع قواعده وفحوصه ومراجعته رؤيته. أصلح الملاحظات الحرجة والمرتفعة أولًا، وأعد الفحص، واطلب من شخص مراجعة كل ما يتعامل مع المال أو البيانات الشخصية قبل أن يستخدم التطبيق كثير من الناس.
هل أفحص قبل النشر أم بعده؟
كلاهما. افحص قبل النشر لتكتشف الثغرات الكبيرة. وأعد الفحص بعد أن يصبح التطبيق متاحًا على الإنترنت: بعض الفحوص، مثل ترويسات الأمان والملفات التي لا يجب تقديمها أبدًا، لا تعمل إلا على تطبيق منشور.
هل يرى من شاركت معهم مشروعي نتائج الفحص؟
لا. يكشف الفحص كل نقطة ضعف، لذا لا يرى تبويب الأمان إلا المالك.
هل يشمل الفحص شفرة تسجيل الدخول وقاعدة البيانات الخاصة بـ MonstarX نفسه؟
لا. هذه الأجزاء متطابقة في كل تطبيق ويتولى MonstarX صيانتها. أما الفحص فيتناول الشفرة المكتوبة لتطبيقك، وتطبيقك وهو يعمل.
ماذا يحدث إذا كان هناك إنشاء قيد التشغيل عندما أبدأ الفحص؟
ينتظر الفحص حتى ينتهي الإنشاء (حتى 10 دقائق)، ليفحص الشفرة المكتملة.