سؤال

perl -T

هل تستعملها؟ هل يساعدك في العثور على ثقوب أمنية في البرامج النصية بيرل الخاصة بك؟

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

المحلول

أكثر من ذلك :) ذلك توقف مشاكل الأمان الخاصة بك قبل أن تصبح واحدة. انها ليست رصاصة فضية أمنية بالطبع ... اعتدنا استخدامها (بضع سنوات مرة أخرى عندما كنت متورطا في مشاريع بيرل) في أي برنامج نصي تم كشفه خارجيا (أي أي تطبيق mod_perl) وجدنا أنه مفيد جدا و جعلها سياستنا. إنه يفعل بعض الشيكات وهو مفيد .. (أي شيء يجعل الأشياء مؤتمتة)

بيرل الأمن - Perlsec يوصي بشدة أيضا:

يقترح هذا العلم [وضع التشغيل] بقوة لبرامج الخادم وأي برنامج يعمل نيابة عن شخص آخر، مثل البرنامج النصي CGI. بمجرد تشغيل وضع التشغيل، يكون الأمر قيد التشغيل لبقية البرنامج النصي الخاص بك.

نصائح أخرى

بالتأكيد!

$ echo '`rm -rf /`' | PERL -TE 'EVERING في حين <>' الاعتماد غير الآمن في Eval أثناء التشغيل مع -t التبديل في الخط 1، <> LINE 1.

الفصل "تقنيات البرمجة الآمنة" الفصل إتقان بيرل يتم تخصيص تماما تقريبا لفحص التشويذ وكيف يجب عليك استخدامه.

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

أعتقد أن وضع التشغيل سيعمل بشكل أفضل عندما يتم تطوير رمز جديد أن الجميع على دراية.

إذا كان لديك رمز شخص آخر مكتوب بشكل سيئ، وتشغيله في وضع التشغيل - سوف يموت بيرل بدلا من أداء قواعد التشوهات "عمليات غير آمنة".

في وضع التشغيل، يتم تصحيح بعض الثقوب ولكن ليس كل شيء. سيموت النظام ("$ غير مناسب_USER_INPUT") ولكن لا يزال بإمكان بيرل كتابة بيانات $ غير المنصوص عليها في الملفات إلى ملف باسم ثابت (نظرا لعدم وجود بيانات مطبوعة "آمنة") ثم قم بتنفيذ هذا الملف باستخدام النظام (). ولكن لا شيء يمكن أن تحقق كل شيء.

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

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

نعم، وضع التشغيل مفيد لجميع الأسباب المذكورة أعلاه.

مكان واحد قد لا تفكر فيه البيانات الملوثة هو عند التفاعل مع قاعدة البيانات. لحسن الحظ، يحتوي DBI على دعم لإيقاف البيانات الملوثة من الدخول إلى قاعدة البيانات الخاصة بك، ويعالج البيانات الواردة من قاعدة البيانات الخاصة بك على أنها ملوثة بحيث لا تستطيع أن تفعل أي شيء غير آمن به. يجب عليك تشغيل الخيارات على وجه التحديد لهذا؛ انهم خارج افتراضيا. يرى مستندات DBI. للمزيد من.

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