صفحه 1:
0
0 0 OM
me ۷ 5898 5210107
TN a Ion افزار
۳ Sr Peer Oe rT لسري
صفحه 2:
* تعریف معماری نرم افزار
۰ جایگاه امنیت در معماری نرم افزار
* مراحل مدل سازی تهدید ها
۰ الگوهای امن در معماری نرم افزار
صفحه 3:
معماری نرم افزار
7 معماری نرم افزار
#سباختازی آزاشیستم ]که شامل Architecture
وی هیقب يدا
ویژگی های قلبل مشاهده آنها در
ج سیستم و relatio
روابط بين انها مى باشد bt
7 به معماری نرم افزار طراحی سطح بالا
(top-level design) نیز می
صفحه 4:
معماری نرم افزار
(stakeholders) .,4i.3 ~
slo og f gal I اكه در BL شد(ا بگهرنرم افزار مهم دازند
**هر کدام از ذینفعان مایلند كه معماری نرم افزار نگرلنی ها و دغدغه های
آنها را بیشتر پوشش دهد
** معماری نرم افزار ابزاری برای ارتباط بین ذینفعان است
کارگاه آموزشی «امنیت نرم افزار و مهندسی نرم اذزار امن» - آذر ۱۳۹۱ دانش
صفحه 5:
دهنده نرم افزار
کارگاه آموزشی «امنیت نرم افزار و مهندسی نرم افزار امن» - آذر ۱۳٩۱ دانشگاه گیلان
صفحه 6:
معماری نرم افزار
Architecture Business Cycle ~
**معماری نرم افزار نتیجه یک سری تاثیرات
برنامه است
** معماری نرم افزار خود بر روی تمامی این موارد تاثیر می گذارد
oF آینده این تاثیراتشود بة كعمارى هاى آتى أمنتقال مى شود
کارگاه آموزشی «امنیت نرم افزار و مهندسی نرم افزار امن» - آذر ۱۳۹۱ دانشگاه گیلان
صفحه 7:
معماری نرم افزار
7 محیط فنی
7شامل تکنیک های مهندسی نرم افزار شایع و فراگیر در محیط فعلی که
معمار در آن حضور دارد
7 تجربه معمار
>
تجربیات موفق آمیز در آینده تکرار می شود
#تجربيات ناموفق با احتمال كمترى در آيتده تكرار خواهد شد
کارگاه آموزشی «امنیت نرم افزار و مهندسی نرم اذزار امن» - آذر ۱۳۹۱ دانش
صفحه 8:
Architecture Business Cycle
کارگاه آموزشی «امنیت نوم افزار و مهندسی نرم افزار امن» - آذر ۱۳٩۱ دانشگاه گیلان
صفحه 9:
معماری نرم افزار
Pipe & Filter
Pipe & Filter ~
** دریافت ورودی در نقاط پردازشی(116615؟) از خروجی قسمت قبل
#*ارسال داده های بین نقاط پردازشی توسط کانال ها (01065)
"نقاط پردازشی مستقل
"نگهداری و استفاده مجدد
تلن
1 7
کارگاه آموزشی «امنیت نرم افزار و مهندسی نرم افزار امن» - آذر ۱۳٩۱ دانشگاه گیلان
صفحه 10:
معماری نرم افزار
Pipe & Filter
Unix jo Jo) bs - Jie 7
cat A.txt B.txt | sort | gzip | mail
ا
5-5-5
کارگاه آموزشی «امنیت نرم افزار و مهندسی نرم افزار امن» - آذر ۱۳٩۱ دانشگاه گیلان
صفحه 11:
2 جایگاه امنیت در معماری نرم افزار
Security Architecture
Poetry Peso
ent co
م افزار و مهندسی نرم افزار امن» - آذر ۱۳۹۱ دانشگاه گیلان
صفحه 12:
امنیت در معماری فرم افزار
7 مدل سازی تهدید
فرآیندی برای کمک به مدل کردن امنیت برنامه
**استخراج نقص ها و آسیب های بالقوه موجود در برنامه قبل از سرمایه
گذاری بر روی آنها
کارگاه آموزشی «امنیت نرم افزار و مهندسی نرم افزار امن» - آذر ۱۳۹۱ دانشگاه گیلان
صفحه 13:
مراحل مدل سازی تهدید ها
7 چرخه فرآیند مدل سازی تهدید
اضافه کردن جزئیات بیشتر با پیش
رفتن در حلقه ساخت برنامه
*# تشخیص sally gilts
پررسی و تصحیح مجدد
آذر ۱۳۹۱ دانشگاه گیلان
صفحه 14:
مراحل مدل سازی تهدید ها
7 مرحله اول
** تعیین کردن اهداف امنیتی
7 مشخص کردن زمینه ها و باید ها و نبایدهای وابسته به :
0۳86000 : جلوگیرعاز دسترسیهایغیر مجاز
*** 116 : جلوكيرواز تغيير غير مجاز داهم ها
**:112111113هنتق : فرلهم كرمزسرويسرها حتىدر حضور حمله
لور
صفحه 15:
مراحل مدل سازی تهدید ها
7 مرحله دوم
**ساخت نمایی اولیه از برنامه
*#*مشخص کردن کارکردها و ویژگی های برنامه به صورت کلی
7 توجه به تکراری بودن فر آیند مدل سازی تهدیدها
**عدم توقف در انجام هر مرحله
تعیین هر چه بیشتر جزئیات در صورت ممکن و در سریعترین زمان
کارگاه آموزشی «امنیت نرم افزار و مهندسی نرم افزار امن» - آذر ۱۳۹۱ دانشگاه گیلان
صفحه 16:
مراحل مدل سازی تهدید ها
7 مرحله سوم
** تجزیه قسمت های برنامه
مشخص کردن موارد زیر برای تشخیص بیشتر نقاط آسیب پذیر :
"تعیین مرزهای تغییر سطح اطمینان
۷تعیین جریان های داده
”تعيين نقاط ورود و خروج داده
کارگاه آموزشی «امنیت نرم افزار و مهندسی نرم افزار امن» - آذر ۱۳۹۱ دانشگاه گیلان
صفحه 17:
ser / ع5 1ط
boundry
1
Login!request AuthenticateUser()
I
i
i
i
Web server / Database |
اناا aS
7 or ren a
صفحه 18:
مراحل مدل سازی تهدید ها
7 مرحله چهارم
sof ین تهدیدها
**مشخص كردن تهديدها و حمله هاى محتمل در برنامه
*# استفاده از افراد. لخصصر Chul cols canal Bree phot كردن تهديدها
7 شروع با تهدیدها و حمله های شناخته شده
تعیین مواردی که قابل اعمال در برنامه هستند
کارگاه آموزشی «امنیت نرم افزار و مهندسی نرم افزار امن» - آذر ۱۳۹۱ دانشگاه گیلان
صفحه 19:
مراحل مدل سازی تهدید ها
Misuse / Abuse Case ~
Use case* », 11141 برلىمدلكرمنكركردهائيرنامه و لنجه كه
برنامه بايستىإنجام دهد لستفاده میشود
*** 0356 ۸۱۹6 / 1۷]151156 ب رلیمد لک ردنمواردیکه نميخولهيم در
برنامه لتفاق یفد اسکتفاده ملیشن ود
کارگاه آموزشی «امنیت نرم افزار و مهندسی نرم اذزار امن» - آذر ۱۳۹۱ دانش
صفحه 20:
مراحل مدل سازی تهدید ها
Misuse / Abuse Case ~
ایبر و برنامه لنجام میدهد 54 Scales Use case*
لموار
#وع عوبطم / 1۷2151156 شامللموبیلستکه حمله کننده
cols] lila bb (attacker)
*#ارتباط بین دو دسته از آمور,.بالاانشان دهندة تاثیرات ناشی از عمل حمله کننده با
کارکردهای برنامه است
کارگاه آموزشی «امنیت نرم افزار و مهندسی نرم افزار امن» - آذر ۱۳۹۱ دانشگاه گیلان
صفحه 21:
Threatens
6 ما3۳
attack
Mitigates
cerca |
Mitigates یت
۸0 Hacker /
Mitigates Malicious User
w Dictionary
Mitigates
Username &
password
|
User
authentication
١ |
Show error
massages
Lock after N
failed attempts
|
Password
complexity
User
Application /
Server
صفحه 22:
مراحل مدل سازی تهدید ها
Threat / Attack Tree ~
** تشخیص موارد بیشتری از تهدیدهای قابل اعمال به برنامه
* تعیین موارد ترکیبی از تهدیدها که خطر جدیدی را ممکن است به برنامه تحمیل
کنند
کارگاه آموزشی «امنیت نرم افزار و مهندسی نرم اذزار امن» - آذر ۱۳۹۱ دانش
صفحه 23:
مراحل مدل سازی تهدید ها
Threat / Attack Tree cst. ~
**قرار دادن خود به جای حمله کننده
** تعیین موارد مورد نیاز برای انجام یک حمله
#* ساخت ريشه درخت مبتنی بر حمله مورد تظر و راهها و مراحل انجام حلمه در زیر
گره ها
کارگاه آموزشی «امنیت نرم افزار و مهندسی نرم افزار امن» - آذر ۱۳۹۱ دانشگاه گیلان
صفحه 24:
مراحل مدل سازی تهدید ها
Obtaining
authentication
credentials over
کارگاه آموزشی «امنیت نوم افزار و مهندسی نرم افزار امن» - آذر ۱۳٩۱ دانشگاه گیلان
صفحه 25:
مراحل مدل سازی تهدید ها
7 مرحله پنجم
**تعیین آسیب های برنامه
**مرور برنامه برای تعیین صریح آسیب پذیری ها
#استفادة از تهديد هك للست شذه در مراجل قبلیبرای شناخت هر چه بیشتر
آسیب پذیری های برنامه
کارگاه آموزشی «امنیت نرم افزار و مهندسی نرم افزار امن» - آذر ۱۳۹۱ دانشگاه گیلان
صفحه 26:
مراحل مدل سازی تهدید ها
rT eee eee Po ean
صفحه 27:
الگوهای امن در معماری فرم افزاز
7 الگوهای طراحی امن
*#*الگوهای طراحی راه حل هایی برای مسائل پرتکرار در مهندسی نرم افزار
۳
** الكوهاى طراحى امن قللب هلیی برای توصیف راه حل های عمومی در مسائل
ena al
"تجزبه مولفه ها با رعایت ویژگی اعتماد distrustful)
(decomposition
"جدا كردن مولفه ها با توجه به حق دسترسی (۳۲۱۷11696
(separation
کارگاه آموزشی «امنیت نرم افزار و مهندسی نرم اذزار امن» - آذر ۱۳۹۱ دانش
صفحه 28:
الگوهای امن در معماری فرم افزاز
7 الگوهای امن در سطح معماری
یه اجزای بی اعتماد از یکدیگر distrustful)
(decomposition
** قرار دادن اعمال مجزا در برنامه هایی با عدم رابطه اعتماد با یکدیگر
**كم كردن زمينه های حمله در برنامه های منفرد
کم کردن داده های در معرض حمله در صورت رخداد مخاطره در یکی از برنامه
های مجزا شده از لحاظ اعتماد
کارگاه آموزشی «امنیت نرم افزار و مهندسی نرم افزار امن» - آذر ۱۳٩۱ دانشگاه گیلان
صفحه 29:
كاركاه آموزشى ١
10
21
server
Qmial
RTs asia
Functiop>!
area ©
(Pipe &
Filter)
To local
PTT Cr an en
صفحه 30:
الگوهای امن در معماری فرم افزاز
2 الگوهای امن در سطح معماری
* جدا کردن مولفه ها با توجه به حق دسترسی (۳11۷11606
(separation
** تلاش براى كم كردن قسمتى از كد كه با حق دسترسى سطح بالا اجرا مى شود
**قابلیت استفاده از لين الگو در صورتی که برنامه شامل عملکردهای متفاوتی باشد
که بدون حق دسترسی سطح بالا اچرا شوند
کارگاه آموزشی «امنیت نرم افزار و مهندسی نرم افزار امن» - آذر ۱۳۹۱ دانشگاه گیلان
صفحه 31:
الگوهای امن در معماری فرم افزاز
Proce
: 55 د
System service
Proce
>
Process
TATTLE PC Pa TY PC AT AT
Attack surface
صفحه 32:
1, Bass, P. Clements, R. Kazman, Software Architecture
in Practic, Addsion-Weisly, 2nd edition, 2003
C. Dougherty, K. Sayer, R. Seacord, D. Svoboda, Secure
Design Patterns, Software Engineering Institute, 2009
C. Goertzel, K. Mercedes, Software Security Assurance:
A State-of-the-Art Report , Information Assurance
Technology Analysis Center (IATAC) of the DTIC, 2011
M. Howard, Lessons Learned from Five Years of Building
Secure Software, Microsoft Developer Network , 2011
J.D. Meier, A. Mackman, B. Wastell, How To Create a
Threat Model for a Web Application at Design Time,
Microsoft Developer Network (MSDN), 2010
کارگاه آموزشی «امنیت نوم افزار و مهندسی نرم افزار امن» -- CT RE
صفحه 33:
|
x
5
8
-