سؤال

لدينا مئات من المواقع التي وضعت في asp .net و java و نحن ندفع الكثير من المال على جهة خارجية للقيام اختبار الاختراق على المواقع للتحقق من الثغرات الأمنية.هل هناك أي (جيد) البرمجيات (بأجر أو مجانا) أن تفعل هذا ؟

أو..هل هناك أي مواد التقنية التي يمكن أن تساعدني على تطوير هذه الأداة ؟

هل كانت مفيدة؟

المحلول

هناك عدة اتجاهات مختلفة يمكنك الذهاب مع الاختبار الآلي أدوات تطبيقات الويب.

أولا ، الويب التجارية الماسحات الضوئية, التي HP WebInspect وعقلانية AppScan هما الأكثر شعبية.هذه هي "الكل في واحد" ، "النار وننسى" الأدوات التي يمكنك تحميل وتثبيت على داخلية ويندوز سطح المكتب ومن ثم إعطاء URL العنكبوت موقع الويب الخاص بك ، تفحص جيدا نقاط الضعف المعروفة (أي الأشياء التي ضربت Bugtraq) ، مسبار عبر موقع البرمجة النصية SQL حقن نقاط الضعف.

ثانيا ، هناك المصدر-مدونة أدوات المسح, التي Coverity وتحصين هي على الارجح أفضل المعروف.هذه هي أدوات تثبيت على المطور سطح المكتب إلى عملية Java أو C# كود المصدر والبحث عن الأنماط المعروفة من آمن رمز مثل الفقراء التحقق من صحة المدخلات.

وأخيرا ، هناك أدوات اختبار الاختراق.إلى حد بعيد الأكثر شعبية التطبيق على شبكة الإنترنت أداة اختبار الاختراق بين المتخصصين في مجال الأمن هو التجشؤ جناح, والتي يمكنك أن تجد في http://www.portswigger.net/proxy.وتشمل ارتفاع الوكيل و OWASP WebScarab.مرة أخرى, سوف تثبيت هذا على داخلي ويندوز سطح المكتب.فإنه سيتم تشغيل وكيل HTTP ، وعليك نقطة المتصفح الخاص بك في ذلك.يمكنك استخدام التطبيقات الخاصة بك كمستخدم عادي ، في حين أنه سجلات الإجراءات الخاصة بك.ثم يمكنك العودة إلى كل صفحة أو HTTP العمل و تحقيق ذلك عن المشاكل الأمنية.

في بيئة معقدة ، خاصة إذا كنت تفكر في أي شيء DIY ، أنا نوصي بشدة أدوات اختبار الاختراق.هنا لماذا:

الويب التجارية الماسحات الضوئية توفر الكثير من "اتساع" ، جنبا إلى جنب مع ممتازة التقارير.ومع ذلك:

  • أنها تميل إلى أن جمال الأشياء ، لأن كل تطبيق مختلف.

  • أنها مكلفة (WebInspect يبدأ في 10 آلاف).

  • أنت تدفع ثمن الأشياء التي لا تحتاج (مثل قواعد البيانات المعروفة سيئة وحدة تحقيقات خفر السواحل من '90s).

  • من الصعب تخصيص.

  • أنها يمكن أن تنتج صاخبة النتائج.

شفرة المصدر الماسحات الضوئية هي أكثر دقة من الويب الماسحات الضوئية.ومع ذلك:

  • أنهم أكثر تكلفة من شبكة الإنترنت الماسحات الضوئية.

  • أنها تتطلب التعليمات البرمجية المصدر أن تعمل.

  • أن تكون فعالة ، فإنها غالبا ما تتطلب منك علق التعليمات البرمجية المصدر الخاصة بك (على سبيل المثال ، إلى اختيار مسارات الإدخال).

  • لديهم ميل لإنتاج ايجابيات كاذبة.

سواء التجارية الماسحات الضوئية البرمجية المصدر الماسحات الضوئية عادة سيئة أصبحت shelfware.أسوأ من ذلك ، حتى إذا كانوا يعملون ، تكلفتها مقارنة الحصول على 1 أو 2 كامل طلبات المراجعة من قبل الاستشارات ؛ إذا كنت تثق بك الاستشاريين كنت يضمن لك الحصول على أفضل النتائج من من الأدوات.

أدوات اختبار الاختراق لها سلبيات أيضا:

  • إنهم أكثر صعوبة في الاستخدام من النار وننسى التجارية الماسحات الضوئية.

  • أنها تفترض بعض الخبرة في تطبيق ويب نقاط الضعف --- عليك أن تعرف ما تبحث عنه.

  • أنها تنتج القليل أو أي تقارير رسمية.

من ناحية أخرى:

  • أنهم أرخص بكثير --- أفضل من الكثير, تجشؤ جناح التكاليف فقط 99EU و يحتوي على نسخة مجانية.

  • انهم من السهل لتخصيص و إضافة إلى اختبار سير العمل.

  • هم أفضل بكثير في مساعدتك في "تعرف" التطبيقات من الداخل.

هنا شيء كنت تفعل مع القلم-اختبار أداة أساسية في تطبيق ويب:

  1. تسجيل الدخول إلى التطبيق عبر البروكسي

  2. إنشاء "قائمة اغتيالات" من المجالات الوظيفية الرئيسية من التطبيق ، وممارسة كل مرة.

  3. استخدام "العنكبوت" أداة القلم-تطبيق اختبار للعثور على جميع الصفحات و الإجراءات و معالجات في التطبيق.

  4. لكل الصفحات الديناميكية و كل شكل HTML العنكبوت تكشف استخدام "fuzzer" أداة (تجشؤ المكالمات ذلك "الدخيل") إلى ممارسة كل معلمة مع المدخلات غير صالحة.معظم fuzzers تأتي الأساسية اختبار السلاسل التي تشمل:

    • SQL metacharacters

    • HTML/جافا سكريبت يهرب و metacharacters

    • تدويلها من هذه المتغيرات للتهرب من عوامل تصفية الإدخال

    • المعروفة الافتراضي شكل أسماء الحقول والقيم

    • المعروفة دليل الأسماء أسماء الملفات و معالج الأفعال

  5. لقضاء عدة ساعات تصفية الأخطاء الناتجة (نموذجي زغب تشغيل نموذج واحد قد تولد 1000 منهم) يبحثون عن المشبوهة الردود.

هذا هو كثيفة العمالة ، "المعدن" النهج.ولكن عندما تمتلك الشركة الفعلية تطبيقات المعادن العارية النهج يؤتي ثماره ، لأنه يمكنك استخدامه لبناء الانحدار اختبار الأجنحة التي سوف تعمل كالساعة في كل ديف دورة لكل التطبيق.هذا هو الفوز لمجموعة من الأسباب:

  • الأمن الخاص بك اختبار سوف تأخذ بها كمية من الوقت والموارد في التطبيق الذي يسمح لك أن الميزانية و الفرز.

  • فريق العمل الخاص بك سوف تحصل على الحد الأقصى دقيقة وشاملة النتائج منذ الاختبار الخاص بك هو الذهاب إلى أن ضبطها إلى التطبيقات الخاصة بك.

  • انها سوف تكلف أقل من التجاري الماسحات الضوئية أقل من الاستشاريين.

بالطبع, إذا كنت السير في هذا الطريق أنت في الأساس وتحول نفسك إلى مستشار الأمن للشركة الخاصة بك.أنا لا أعتقد أن شيئا سيئا ؛ إذا كنت لا تريد أن الخبرة WebInspect أو تحصين لن تساعدك كثيرا على أي حال.

نصائح أخرى

أعلم أنك سألت تحديدا عن pentesting الأدوات ، ولكن منذ تلك كانت بإسهاب أجاب (أنا عادة أذهب مع مزيج من AppScan و تدريب pentester), أعتقد أنه من المهم أن نشير إلى أن pentesting ليست السبيل الوحيد إلى "التحقق من وجود الثغرات الأمنية" ، وغالبا ما ليس الأكثر فعالية.

شفرة المصدر استعراض الأدوات التي يمكن أن توفر لك مع أفضل بكثير من الوضوح في تعليمات البرمجة الأساسية ، تجد العديد من العيوب التي pentesting لن.

وتشمل هذه تحصين OunceLabs (مكلفة للعديد من اللغات) ، VisualStudio.NET CodeAnalysis (على .NET و C++ مجانا مع VSTS ، لائق ولكن ليست كبيرة) ، OWASP هو مرور جافا (مجانا الكريم ليست كبيرة), CheckMarx (ليست رخيصة, رائعة أداة .NET و Java ، ولكن ارتفاع النفقات العامة) ، وغيرها الكثير.

نقطة مهمة يجب ملاحظة (معظم) أدوات آلية لا تجد جميع نقاط الضعف ، ليست حتى قريبة.هل يمكن أن نتوقع أدوات آلية للعثور على نحو 35-40 ٪ من secbugs التي من شأنها أن تكون موجودة من قبل الفنيين pentester;الشيء نفسه ينطبق على الآلي مقابلدليل التعليمات البرمجية المصدر الاستعراض.

وبالطبع السليم SDLC (الأمن دورة حياة تطوير) ، بما في ذلك التهديد النمذجة ، مراجعة التصميم ، وما إلى ذلك ، سوف تساعد أكثر...

لقد سمعت أشياء جيدة عن SpiDynamics WebInspect بقدر ما دفعت حلول الذهاب ، فضلا عن Nikto (مجانا الحل) وغيرها من الأدوات مفتوحة المصدر.Nessus هو أداة ممتازة البنية التحتية في حال كنت بحاجة للتحقق من أن طبقة كذلك.يمكنك التقاط قرص العيش مع العديد من الأدوات على ذلك دعا Nubuntu (المدقق, الحلزون, أو على أساس التوزيع يعمل أيضا) ثم جوجل بعض الدروس الخاصة أداة.دائما تأكد من مسح من الشبكة المحلية على الرغم من.كنت عرضة لخطر من وجود نفسك حظره من قبل مركز البيانات إذا قمت بمسح مربع من وان من دون إذن.الدرس تعلمت بالطريقة الصعبة.;)

Skipfish, w3af, arachni, ratproxy ، انطلق ، WebScarab :كل حر جدا جيد المنظمة البحرية الدولية

http://www.nessus.org/nessus/ -- Nessus سوف تساعد يشير إلى طرق لجعل الملقمات الخاصة بك أفضل.لا يمكن حقا اختبار تطبيقات مخصصة في حد ذاته ، على الرغم من أنني أعتقد الإضافات من السهل نسبيا لخلق الخاصة بك.

نلقي نظرة على عقلانية التطبيق المسح الضوئي (كانت تسمى Watchfire).ليست حرة, ولكن لديه واجهة جميلة ميت قوية ، يولد تقارير (مفصل و ضد معيار الامتثال أطر مثل Basel2) وأعتقد يمكنك النصي في CI بناء.

ماذا عن nikto ?

هذا النوع من الاختبار كنت تريد حقا أن تبحث في بعض نوع من زغب اختبار. ارتفاع الوكيل هو واحد من اثنين من زغب اختبار لتطبيقات الويب.وهي مفتوحة المصدر مكتوبة في بيثون.أعتقد أن هناك اثنين من أشرطة الفيديو من اللغه أو ديفكون على استخدام مسمار هناك في مكان ما, ولكن أواجه صعوبة في تحديد موقع لهم.

وهناك زوجين من المهنية الراقية حزم البرامج التي سوف تفعل اختبار التطبيق على شبكة الإنترنت وأكثر من ذلك بكثير.واحدة من أكثر الأدوات شعبية سيكون CoreImpact

إذا كنت تخطط على الذهاب من خلال اختبار القلم على الخاص أنا أوصي لكم من خلال قراءة الكثير من OWASP المشروع الوثائق.وتحديدا OWASP تطبيق الأمن التحقق والاختبار/تطوير أدلة.عقلية تحتاج إلى دقة اختبار التطبيق الخاص بك هو مختلفة قليلا من العادي الخاص بك تطوير عقلية (لا ينبغي أن تكون مختلفة ولكن عادة).

ماذا عن الفئران الوكيل?

شبه الآلي ، سلبية إلى حد كبير على شبكة الإنترنت تطبيق التدقيق الأمني أداة ، الأمثل دقيق ، حساسية الكشف التلقائي الشرح من المشاكل المحتملة ، الأمن ذات الصلة أنماط التصميم استنادا إلى الملاحظة من القائمة ، المستخدم-بدأت حركة المرور في شبكة معقدة 2.0 البيئات.

بالكشف عن الأولوية فئات عريضة من المشاكل الأمنية ، مثل ديناميكية عبر موقع الثقة نموذج الاعتبارات ، السيناريو إدراج قضايا المحتوى تخدم مشاكل عدم كفاية XSRF و XSS الدفاعات, وأكثر من ذلك بكثير

Ratproxy حاليا يعتقد أن الدعم Linux, FreeBSD, MacOS X و Windows (Cygwin) البيئات.

أعلم أنك سألت تحديدا عن pentesting الأدوات ، ولكن منذ تلك كانت بإسهاب أجاب (أنا عادة أذهب مع مزيج من AppScan و تدريب pentester), أعتقد أنه من المهم أن نشير إلى أن pentesting ليست السبيل الوحيد إلى "التحقق من وجود الثغرات الأمنية" ، وغالبا ما يكون ليس الأكثر فعالية.

شفرة المصدر استعراض الأدوات التي يمكن أن توفر لك مع أفضل بكثير من الوضوح في تعليمات البرمجة الأساسية ، تجد العديد من العيوب التي pentesting لن.

وتشمل هذه تحصين OunceLabs (مكلفة للعديد من اللغات) ، VisualStudio.NET CodeAnalysis (على .NET و C++ مجانا مع VSTS ، لائق ولكن ليست كبيرة) ، OWASP هو مرور جافا (مجانا الكريم ليست كبيرة), CheckMarx (ليست رخيصة, رائعة أداة .NET و Java ، ولكن ارتفاع النفقات العامة) ، وغيرها الكثير.

نقطة مهمة يجب ملاحظة (معظم) أدوات آلية لا تجد جميع نقاط الضعف ، ليست حتى قريبة.هل يمكن أن نتوقع أدوات آلية للعثور على نحو 35-40 ٪ من secbugs التي من شأنها أن تكون موجودة من قبل الفنيين pentester;الشيء نفسه ينطبق على الآلي مقابلدليل التعليمات البرمجية المصدر الاستعراض.

وبالطبع السليم SDLC (الأمن دورة حياة تطوير) ، بما في ذلك التهديد النمذجة ، مراجعة التصميم ، وما إلى ذلك ، سوف تساعد أكثر...

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top