
ماسح أمان لتطبيقات الويب من إنشاء lcamtuf لصالح google - مرآة غير رسمية
http://code.google.com/p/skipfish/
كُتب وتمت صيانته بواسطة:
Michal Zalewski [email protected] Niels Heinen [email protected] Sebastian Roschke [email protected]
حقوق النشر 2009 - 2012 شركة Google، جميع الحقوق محفوظة.
صدر بموجب شروط وأحكام رخصة Apache، الإصدار 2.0.
Skipfish هي أداة استطلاع نشطة لأمن تطبيقات الويب. تقوم بإعداد خريطة موقع تفاعلية للموقع المستهدف عبر إجراء زحف متكرر واستفسارات مبنية على القواميس. تُحلَّى الخريطة الناتجة بعد ذلك بمخرجات عدد من الفحوصات الأمنية النشطة (غير المعطِّلة على أمل أن تكون كذلك). يُقصد من التقرير النهائي الذي تولّده الأداة أن يكون أساسًا لتقييمات أمنية احترافية لتطبيقات الويب.
يتوفر عدد من الأدوات التجارية ومفتوحة المصدر ذات وظائف مشابهة بسهولة (مثل Nikto وNessus)؛ التزم بالأداة التي تناسبك أكثر. ومع ذلك، تحاول skipfish معالجة بعض المشكلات الشائعة المرتبطة بماسحات أمان الويب. وتشمل المزايا المحددة:
أداء عالٍ: لوحظت 500+ طلبًا في الثانية ضد أهداف إنترنت سريعة الاستجابة، و2000+ طلبًا في الثانية على شبكات LAN / MAN، و7000+ طلب ضد النسخ المحلية، مع استهلاك متواضع جدًا للمعالج والشبكة والذاكرة. ويمكن أن يُعزى ذلك إلى:
نموذج معالجة بيانات وشبكة أحادي الخيط بكامل الإدخال/الإخراج غير المتزامن متعدد الإرسال، مما يلغي أوجه القصور في إدارة الذاكرة وجدولة المهام والاتصال بين العمليات الموجودة في بعض العملاء متعددي الخيوط.
ميزات HTTP/1.1 المتقدمة مثل طلبات النطاق وضغط المحتوى واتصالات keep-alive، إلى جانب فرض حد أقصى لحجم الاستجابة، لإبقاء الحمل على مستوى الشبكة تحت السيطرة.
تُستخدم التخزين المؤقت الذكي للاستجابات واستدلالات سلوك الخادم المتقدمة لتقليل الحركة غير الضرورية.
تنفيذ نقي بلغة C موجه نحو الأداء، بما في ذلك مكدس HTTP مخصص.
سهولة الاستخدام: skipfish عالية التكيف والموثوقية. يتميز الماسح بـ:
تعرّف استدلالي على أنظمة معالجة المعاملات الغامضة القائمة على المسار والاستعلام.
تعامل رشيق مع المواقع متعددة الأطر التي تتبع فيها بعض المسارات دلالات مختلفة تمامًا، أو تخضع لقواعد تصفية مختلفة.
إنشاء تلقائي لقوائم الكلمات استنادًا إلى تحليل محتوى الموقع.
ميزات فحص احتمالية للسماح بتقييمات دورية ومحددة زمنيًا للمواقع المعقدة بأي درجة.
فحوصات أمنية مصممة جيدًا: تهدف الأداة إلى تقديم نتائج دقيقة وذات مغزى:
توفر القواميس المصممة يدويًا تغطية ممتازة وتسمح باختبار شامل لنمط $keyword.$extension في إطار زمني معقول.
تُفضَّل الاستقصاءات التفاضلية ثلاثية الخطوات على فحوصات التوقيعات لكشف الثغرات.
يُستخدم منطق بأسلوب Ratproxy لرصد المشكلات الأمنية الدقيقة: تزوير الطلبات عبر المواقع، إدراج النصوص البرمجية عبر المواقع، المحتوى المختلط، مشكلات عدم تطابق MIME ومجموعة الأحرف، توجيهات التخزين المؤقت غير الصحيحة، إلخ.
صُممت الفحوصات الأمنية المرفقة للتعامل مع السيناريوهات الصعبة: XSS المخزّن (المسار، المعاملات، الترويسات)، حقن SQL أو XML الأعمى، أو حقن الأوامر الصدفية الأعمى.
توقيعات محتوى بأسلوب Snort تُبرز أخطاء الخادم أو تسريبات المعلومات أو تطبيقات الويب التي يحتمل أن تكون خطيرة.
تعمل المعالجة اللاحقة للتقرير على تقليل الضوضاء الناتجة عن أي نتائج إيجابية كاذبة متبقية أو حيل خادم بشكل كبير عبر تحديد الأنماط المتكررة.
ومع ذلك، فإن skipfish ليست حلًا سحريًا، وقد لا تكون مناسبة لأغراض معينة. على سبيل المثال، لا تلبي معظم المتطلبات الموضحة في معايير تقييم ماسحات أمان تطبيقات الويب WASC (بعضها عن قصد، وبعضها بدافع الضرورة)؛ وبخلاف معظم المشاريع الأخرى من هذا النوع، لا تأتي مع قاعدة بيانات شاملة للثغرات المعروفة لفحوصات نوع اللافتة.
فيما يلي قائمة تقريبية بالفحوصات الأمنية التي تقدمها الأداة.
ثغرات عالية الخطورة (قد تؤدي إلى اختراق النظام):
ثغرات متوسطة الخطورة (قد تؤدي إلى اختراق البيانات):
مشكلات منخفضة الخطورة (تأثير محدود أو خصوصية منخفضة):
تحذيرات داخلية:
إدخالات معلوماتية غير محددة:
إلى جانب قائمة المشكلات المحددة، توفر skipfish أيضًا نظرات عامة ملخصة لأنواع المستندات وأنواع المشكلات الموجودة؛ وخريطة موقع تفاعلية، مع الإشارة إلى العقد المكتشفة عبر القوة العمياء بطريقة مميزة.
ملاحظة: كقرار تصميمي واعٍ، لن تشكو skipfish مرارًا بشأن مشكلات غير محددة للغاية، بما في ذلك على سبيل المثال لا الحصر:
معظم هذه الجوانب سهلة الفحص في التقرير إذا رغبت في ذلك - على سبيل المثال، جميع نماذج HTML مدرجة بشكل منفصل، وكذلك ملفات تعريف الارتباط الجديدة أو ترويسات HTTP المثيرة للاهتمام - ومن المتوقع أن يختار المدقق تقديم توصيات تصميم معينة بناءً على هذه البيانات حيثما كان ذلك مناسبًا. ومع ذلك، لا يتم إبراز هذه الحالات كعيب أمني محدد.