التدقيق الآلي واختبار الاختراق اليدوي ليسا منتجين متنافسين بسعرين مختلفين — بل يجيبان عن سؤالين مختلفين. الأتمتة تجيب: «هل هناك شيء مكشوف بوضوح عبر كامل سطحي، وهل تغيّر شيء منذ الأسبوع الماضي؟» والاختبار اليدوي يجيب: «إلى أي مدى يستطيع مهاجم ماهر التوغل داخل المناطق التي لا يبلغها الفاحص الآلي؟»
المقارنة دون زاوية بيعية
| التدقيق الآلي | الاختبار اليدوي | |
|---|---|---|
| التكلفة المعتادة | مئات الدولارات للتشغيلة | آلاف إلى عشرات الآلاف للمشروع |
| زمن النتيجة | أقل من ساعتين | من أسبوع إلى ثلاثة مع التقرير |
| الوتيرة الممكنة | أسبوعياً أو مع كل إصدار | مرة أو مرتين سنوياً |
| التغطية | كامل السطح الخارجي وباتساق | عميقة على النطاق المحدد، سطحية خارجه |
| عيوب منطق العمل | لا | نعم — وهذا سببه الرئيسي |
| الهجمات المتسلسلة | محدودة | نعم |
| خلف تسجيل الدخول | ببيانات دخول فقط، ومع ذلك محدودة | نعم |
| رصد الانحدار | نعم — الفحوصات نفسها كل مرة | ليس غرضه |
ما تجيده الأتمتة فعلاً
الاتساع والتكرار. الفاحص الآلي لا يملّ عند الرابط الأربعمئة، ولا يتجاهل نطاقاً فرعياً نسيه أحدهم، ولا يمرّ بيوم سيئ. وبالنسبة لموقع، يعني ذلك:
- نقاط الحقن في كل معامل يمكنه بلوغه
- واجهات الإدارة والنسخ الاحتياطية وملفات الإعداد ومجلدات إدارة الإصدارات المكشوفة
- المكوّنات ذات الثغرات المعروفة
- إعدادات النقل والترويسات
- إعادة التوجيه المفتوحة والبرمجة عبر المواقع المنعكسة
فاحص ينتج أربعمئة نتيجة «محتملة» أسوأ من عديم الفائدة: المطوّر يتوقف عن القراءة عند العاشرة الخاطئة. في محركنا لا تصبح الثغرة مؤكدة إلا إذا أعادت إنتاج نفسها آلياً — حقن SQL عبر بصمة خطأ، أو فارق قابل للقياس بين حالتَي صواب وخطأ، أو تأخير محكوم؛ وXSS عندما ينفَّذ الكود فعلياً في متصفح حقيقي. وما عدا ذلك يذهب إلى قسم «يحتاج تحققاً يدوياً». نفضّل عرض ثغرات مؤكدة أقل على تضخيم العدد.
ما لا تستطيع الأتمتة اكتشافه، بصراحة
| النقطة العمياء | مثال | لماذا يفوتها الفاحص |
|---|---|---|
| منطق العمل | استخدام كود الخصم نفسه خمسين مرة؛ طلب كمية سالبة | يتطلب فهم الغرض من التطبيق |
| الصلاحيات بين الأدوار | مستخدم عادي يبلغ مسار إدارة لأنه يعرف رابطه | يحتاج حسابات بمستويات صلاحية مختلفة وفهماً للنموذج |
| الهجمات المتسلسلة | تسريب معلومات بسيط + مسار استعادة ضعيف = الاستيلاء على الحساب | كل خطوة تبدو منخفضة الخطورة بمفردها |
| حالات التسابق | عمليتا سحب متزامنتان تمرّان بفحص الرصيد نفسه | تعتمد على التوقيت ولا تظهر في اختبار تسلسلي |
| عيوب الشيفرة المصدرية | مفتاح ضعيف مكتوب داخل مستودع خاص | خارج نطاق الاختبار من الخارج تماماً |
هذه القائمة موجودة في كل تقرير نصدره، لا في حاشية صغيرة. التدقيق الذي لا يخبرك بما لم يفحصه يتركك تظن أنك محمي حيث لست كذلك — وهذا الظن أخطر من ثغرة معلومة.
كيف يرتبط ذلك بقانون حماية البيانات
لا أحد من المنتجين شهادة امتثال، ولا يبيع ذلك مورّد صادق. ما يطلبه القانون تدابير تقنية وتنظيمية مناسبة، ودليلاً — عند وقوع الحادثة — على أنك كنت تمارس رقابة لا أملاً.
اختبار سنوي واحد ينتج وثيقة مؤرخة واحدة. أما الفحص الآلي المتكرر فينتج سلسلة — وهي أقرب إلى معنى «الرقابة المستمرة»، وأرخص بكثير في الاستمرار.
تسلسل معقول
- ابدأ بالاتساع. تغطية آلية لكامل السطح الخارجي، بما فيه النطاقات الفرعية التي لا يتذكرها أحد. أول تشغيلة تكشف عادةً شيئاً محرجاً ورخيص الإصلاح.
- أصلح ثم أعد الاختبار. الإصلاح غير المتحقق منه يكون جزئياً في الغالب، وإعادة الاختبار ليست اختيارية.
- ثم اشترِ العمق بنطاق ضيق. وجّه الاختبار اليدوي إلى ما لا تراه الأتمتة: المسارات خلف تسجيل الدخول، ومنطق الدفع والاسترجاع، وحدود الصلاحيات، وكل ما يتصل بالمال أو بالبيانات الحساسة.
- أبقِ الفحص الآلي شغالاً. فهو ما يلتقط الانحدار الذي يظهر بعد ثلاثة أسابيع من توقيع تقرير الاختبار اليدوي.
شراء المشروع المكلف أولاً يعني عادةً أن تدفع لخبير كبير كي يبلّغك عن ترويسات أمان ناقصة ونسخة احتياطية مكشوفة — نتائج كان أي فاحص آلي ليصل إليها خلال ساعة. نظّف السطح الرخيص أولاً، ثم أنفق ساعات البشر حيث لا يفيد سواهم.