آمار آسیب پذیری نرم افزار گزارش شده به مرکز CERT
(مرکز تحقیقاتی واقع در دانشگاه Carnegie Mellon)
سال 2007
نتایج بدست آمده از این گزارش
با گسترش فناوری نرم افزار مصدومیت در برابر حملات نیز گسترش یافت.
بایستی تدابیر امنیتی جدیدی را در عرصه نرم افزار در نظر گرفت.
امنیت نرم افزار بعنوان بخش جداناپذیر فرایند تولید و توسعه نرم افزار = مهندسی امنیت نرم افزار
امنیت در حوزه نرم افزار
سیستم تا جای ممکن آسیب پذیر نباشد(تا جای ممکن نفوذ پذیر نباشد)
محدود کردن معایب و حملات و عدم امکان گسترش آنها و محدودیت در اثر مخرب حاصل شده.
مقاومت در برابر حملات : resist و tolerate
امنیت و پیچیدگی سیستمی
بجای کنترل متمرکز بایستی چندین کنترل را در قالب نقاط کنترلی در بخش های مختلف اعمال کرد.
در رابطه با سیستم هایی که از چندین سیستم بهم وصل شده تشکیل شده اند امنیت در قالب سرویس اضافه می شود.
عدم استفاده از سیاست های امنیتی ناهمگون
امنیت در فرایند تولید نرم افزار
مهندسی نیازمندیها برای نرم افزارهای امن
طراحی و معماری امن
امنیت و تست نرم افزار
مزایای در نظر گرفتن امنیت در مراحل ابتدایی پروژه
امنیت در مراحل مختلف تولید نرم افزار
روش SecureUP
توسعه ای از فرایند تولید نرم افزار است که بر اعمال نیازهای امنیتی در تک تک فازهای تولید و توسعه نرم افزار تکیه دارد.
در هر فاز فرایند تولید نرم افزار بنا بر نوع فعالیتهایی که در آن فاز صورت می گیرد نیازهای امنیتی اعمال می گردد.
امنیت در چرخه تولید نرم افزار
ویژگیهای اساسی نرم افزار امن
محرمانه بودن(confidentiality ): ویژگیهای نرم افزار از دید افراد غیر مجاز محرمانه باشد.
یکپارچگی و مقاومت در برابر تغییرات افراد غیر مجاز در نرم افزار(integrity ).
نرم افزار برای افراد مجاز در دسترس باشد(availability)
تمامی عملیاتی که مربوط به امنیت می شود برای یک عامل استفاده کننده(Agent) از نرم افزار بایستی قابل دنبال و رهگیری باشد.(accountability )
عدم امکان انکار(non-repudiation )
فایل پاورپوینت 26 اسلاید