بخشی از پاورپوینت
اسلاید 1 :
به نام خدا
فرآيندی برای توليد نرم افزارهای حساس به امنيت
اسلاید 2 :
مقدمه
افزایش روز افزون آسیب پذیریهای امنیتی
توسعه استفاده از سیستمهای نرم افزاری
امنیت: از اساسی ترین نیازهای بسیاری از نرم افزارها
توسعه دهندگان: نقش اصلی در تولید نرم افزار
عدم آشنایی توسعه دهندگان با امنیت نرم افزارهای آسیب پذیر
راه حل: فرآیندی برای تولید و توسعه امن نرم افزارها
اسلاید 3 :
کارهای مرتبط
روشهای توصیف و مدل سازی فرآیند
فرآیندهایی برای تولید امن نرم افزار
منابع و راهنماهایی برای توسعه امن
زبانهای مدل سازی با پشتیبانی از نیازمندیهای امنیتی
اسلاید 4 :
توصیف فرآیند
توصیف فرآیند:
محصولات کاری
نقشهای و توسعه دهندگان
فعالیتها
مراحل
اسلاید 5 :
توصیف فرآیند (ادامه)
چند نمونه:
PASTA
Process and Artifact State Transition Abstraction
ارائه شده در سال 1997
مبتنی بر ماشین حالت
OPF
OPEN Process Framework
عدم پشتیبانی کافی، عدم وجود ابزار، دارای محدودیتهایی در توصیف و .
RMC
Rational Method Composer
شی گرا و دارای کتابخانه ای قوی
منعطف، سازگار، یکپارچه
مبتنی بر ابزار و .
اسلاید 6 :
توصیف فرآیند (ادامه)
RMC
محتوای روش (Method Content)
فعالیت ها
محصولات کاری
تولید کنندگان
فرآیند (Process)
استفاده از محتوای روش
تعریف مراحل و نحوه به کارگیری محتوای روش انتخاب شده
اجزای محتوای روش در RMC
اسلاید 7 :
توصیف فرآیند (ادامه)
مثال: فرآیند RUP
محتوای روش:
مدلسازی تجارت، نیازمندیها، آنالیز و طراحی، پیادهسازی، تست، استقرار، مدیریت تغییرات، مدیریت پروژه و محیط
فرآیند:
چهار فاز آغاز ، جزئیات ، ایجاد و انتقال
میزان پرداختن به اجزای محتوای در هر مرحله از انجام پروژه
اسلاید 8 :
توصیف فرآیند (ادامه)
ویژگیهای RMC:
منبعی غنی از محتوای روش
دارای ابزار
سادگی و انعطاف توصیف و اعمال تغییرات و نگهداری فرآیند
حفظ سازگاری اجزای مختلف فرآیند
تولید مستندات یکپارچه و استاندارد برای فرآیند تعریف شده
پشتیبانی از زبان UML
قابلیت تعریف فرآیندهای پیچیده
اسلاید 9 :
فرآیندهای توسعه امن
AEGIS
CLASP
BSI
Microsoft SDL
UMLSec
اسلاید 10 :
فرآیندهای توسعه امن (ادامه)
AEGIS
پایاننامهی دکتری
بر مبنای
مدلسازی دارایی
شناسایی نیازمندیهای امنیتی
تحلیل مخاطرات
زمینه مورد استفاده
اسلاید 11 :
فرآیندهای توسعه امن (ادامه)
AEGIS (ادامه)
اسلاید 12 :
فرآیندهای توسعه امن (ادامه)
AEGIS (ادامه)
تحلیل مخاطرات
شناسایی
آسیب پذیریها
تهدیدها
مخاطرات
ارزیابی مخاطرات
احتمال وقوع
خسارت وارده
انواع روشهای قابل استفاده برای تحلیل
اسلاید 13 :
فرآیندهای توسعه امن (ادامه)
AEGIS (ادامه)
طراحی اقدامات متقابل
ارزیابی هزینه-منفعت
انتخاب
پذیرفتن طراحی و هزینه-منفعت
قابل قبول بودن مخاطرات کاهش یافته
طراحی مجدد اقدامات متقابل
اسلاید 14 :
فرآیندهای توسعه امن (ادامه)
CLASP
Comprehensive Lightweight Application Security Process
نگارش دوم
شامل:
7 تجربه موفق
روند کلی فرآیند
24 فعالیتها
تشکیل دهنده تجربه های موفق
7 نقش
انجام دهنده فعالیتها
104 آسیب پذیری
اسلاید 15 :
فرآیندهای توسعه امن (ادامه)
CLASP (ادامه)
مثال:
تجربه موفق بدست آوردن نیازمندیهای امنیتی
فعالیتهای تشکیل دهنده:
شناسایی خطمشی امنیتی
شناسایی منابع و مرزهای اطمینان
شناسایی نقش کاربران
شناسایی قابلیتهای منابع
تعیین محیط عملیاتی
شرح کامل موارد استفاده نادرست
شناسایی خط حمله
مستندسازی نیازمندیهای امنیتی
اسلاید 16 :
فرآیندهای توسعه امن (ادامه)
CLASP (ادامه)
آسیب پذیریها
لیستی 104 تایی
معرفی
نتیجه آسیبپذیری و تاثیر آن بر جنبههای مختلف امنیت سیستم
مرحله وقوع در دوره حیات و توسعه نرمافزار
نقش آن در بسترهای مختلف تولید
منابع حمله
ارزیابی خطر
راههای جلوگیری از آن در مراحل مختلف تولید نرمافزار
سایر اطلاعات و مثال
اسلاید 17 :
فرآیندهای توسعه امن (ادامه)
BSI
Build Security In
پروژه US-CERT
مجموعهای از
تجربیات موفق
ابزار
رهنمودها
قواعد
اصول
سایر اطلاعات
لازم برای تامین امنیت در مراحل مختلف توسعه نرمافزار را فراهم کرده است.
اسلاید 18 :
فرآیندهای توسعه امن (ادامه)
Microsoft SDL
Microsoft Security Development Lifecycle
13 مرحله
آموزش و آگاهی بخشی به پرسنل
فاز آغازین
تعیین یک مشاور امنیتی برای پروژه
تیم راهبری امنیتی
اصولی مشترک در طراحی امن نرمافزار
ارزیابی مخاطرات امنیتی
راهکارهایی برای برنامهنویسی امن
تست امنیتی نرمافزار
ایمنتر کردن نرمافزار تولیدی
آخرین بازبینی امنیتی
طرحریزی سیستم پاسخگویی به مشکلات امنیتی
عرضه محصول
پاسخگویی به مشکلات امنیتی
اسلاید 19 :
زبان مدل سازی
UMLSec
توسعه ای برای زبان مدلسازی UML
پشتیبانی از نیازمندی های امنیتی
نمودارهای
نمونه کارکرد: نیازمندیهای امنیتی
نمودار فعالیت: فرآیند تجاری امن
نمودار کلاس: تعیین جنبه های امنیتی اشیاء
نمودار ترتیب: تبادل پیغامهای امنیتی
نمودار حالت سیستم: رفتار امنیتی سیستم
نمودار بسته: دسته بندی اجزاء
نمودار استقرار: ارتباطات فیزیکی و امنیتی