علوم مهندسی کامپیوتر و IT و اینترنت

امنیت در معماری نرم افزار

amniat_dar_memari_narmafzari

در نمایش آنلاین پاورپوینت، ممکن است بعضی علائم، اعداد و حتی فونت‌ها به خوبی نمایش داده نشود. این مشکل در فایل اصلی پاورپوینت وجود ندارد.






  • جزئیات
  • امتیاز و نظرات
  • متن پاورپوینت

امتیاز

درحال ارسال
امتیاز کاربر [0 رای]

نقد و بررسی ها

هیچ نظری برای این پاورپوینت نوشته نشده است.

اولین کسی باشید که نظری می نویسد “امنیت در معماری نرم افزار”

امنیت در معماری نرم افزار

اسلاید 1: امنیت در معماری نرم افزار اصغر توکلیSoftware Security & Secure Software Engineering

اسلاید 2: 2فهرست مطالبتعریف معماری نرم افزارجایگاه امنیت در معماری نرم افزارمراحل مدل سازی تهدید هاالگوهای امن در معماری نرم افزار

اسلاید 3: 3معماری نرم افزارساختاری از سیستم که شامل مولفه های سیستم ، ویژگی های قابل مشاهده آنها در سطح سیستم و روابط بین آنها می باشدبه معماری نرم افزار طراحی سطح بالا (top-level design) نیز می گویندمعماری نرم افزارArchitecturerelationscomponentcomponentcomponent

اسلاید 4: 4ذینفعان (stakeholders)افراد و گروه هایی که در ساخته شدن یک نرم افزار سهم دارندهر کدام از ذینفعان مایلند که معماری نرم افزار نگرانی ها و دغدغه های آنها را بیشتر پوشش دهدمعماری نرم افزار ابزاری برای ارتباط بین ذینفعان استمعماری نرم افزار

اسلاید 5: 5تیم توسعه دهنده نرم افزاربازاریابیکاربر تیم پشتیبانیخریدارهزینه کم ، استفاده از برنامه نویسان موجودهزینه کم ، رقابت با نمونه های موجودکارایی ، امنیتتغییرپذیریتحویل به موقع، عدم تغییر پذیریمعمار

اسلاید 6: 6Architecture Business Cycleمعماری نرم افزار نتیجه یک سری تاثیرات فنی ، اقتصادی و محیطی بر برنامه استمعماری نرم افزار خود بر روی تمامی این موارد تاثیر می گذارددر آینده این تاثیرات خود به معماری های آتی منتقل می شودمعماری نرم افزار

اسلاید 7: 7محیط فنیشامل تکنیک های مهندسی نرم افزار شایع و فراگیر در محیط فعلی که معمار در آن حضور داردتجربه معمارتجربیات موفق آمیز در آینده تکرار می شودتجربیات ناموفق با احتمال کمتری در آینده تکرار خواهد شدمعماری نرم افزار

اسلاید 8: 8Architecture Business Cycleذینفعانتجربه معمارمحیط فنیتیم توسعه دهندهمعماری سیستممعمار

اسلاید 9: 9Pipe & Filterدریافت ورودی در نقاط پردازشی(filters) از خروجی قسمت قبلارسال داده های بین نقاط پردازشی توسط کانال ها (pipes) نقاط پردازشی مستقلنگهداری و استفاده مجددمعماری نرم افزارPipe & FilterSource DateFilterFilterData Sinkpipepipepipe

اسلاید 10: 10مثال - خط لوله در Unixcat A.txt B.txt | sort | gzip | mailمعماری نرم افزارPipe & FilterInputsA.txtB.txtProcessescatsortgzipmail

اسلاید 11: 11جایگاه امنیت در معماری نرم افزارامنیت در معماری نرم افزارSecurityArchitecture componentcomponentcomponentrelations

اسلاید 12: 12مدل سازی تهدیدفرآیندی برای کمک به مدل کردن امنیت برنامهاستخراج نقص ها و آسیب های بالقوه موجود در برنامه قبل از سرمایه گذاری بر روی آنهاامنیت در معماری نرم افزار

اسلاید 13: 13چرخه فرآیند مدل سازی تهدیداضافه کردن جزئیات بیشتر با پیش رفتن در حلقه ساخت برنامهتشخیص منابع کلیدیبررسی و تصحیح مجددمراحل مدل سازی تهدید ها1. تعیین اهداف امنیتی

اسلاید 14: 14مرحله اول تعیین کردن اهداف امنیتیمشخص کردن زمینه ها و باید ها و نبایدهای وابسته به :Confidentiality : جلوگیری از دسترسی های غیر مجازIntegrity : جلوگیری از تغییر غیر مجاز داده هاAvailability : فراهم کردن سرویس ها حتی در حضور حملهمراحل مدل سازی تهدید ها

اسلاید 15: 15مرحله دومساخت نمایی اولیه از برنامهمشخص کردن کارکردها و ویژگی های برنامه به صورت کلیتوجه به تکراری بودن فرآیند مدل سازی تهدیدهاعدم توقف در انجام هر مرحلهتعیین هر چه بیشتر جزئیات در صورت ممکن و در سریعترین زمانمراحل مدل سازی تهدید ها

اسلاید 16: 16مرحله سومتجزیه قسمت های برنامهمشخص کردن موارد زیر برای تشخیص بیشتر نقاط آسیب پذیر :تعیین مرزهای تغییر سطح اطمینانتعیین جریان های دادهتعیین نقاط ورود و خروج دادهمراحل مدل سازی تهدید ها

اسلاید 17: 17UserWeb serverLogin processDatabaseUser / Web serverboundryLogin responseAuthenticateUser()AuthenticationresultLogin requestSQL query & resultsWeb server / Databaseboundry

اسلاید 18: 18مرحله چهارمتعیین تهدیدهامشخص کردن تهدیدها و حمله های محتمل در برنامهاستفاده از افراد متخصص در زمینه امنیت برای لیست کردن تهدیدهاشروع با تهدیدها و حمله های شناخته شدهتعیین مواردی که قابل اعمال در برنامه هستندمراحل مدل سازی تهدید ها

اسلاید 19: 19مرحله چهارمتعیین تهدیدهاMisuse / Abuse CaseUse case در UML برای مدل کردن کارکردهای برنامه و آنچه که برنامه بایستی انجام دهد استفاده می شودMisuse / Abuse Case برای مدل کردن مواردی که نمی خواهیم در برنامه اتفاق بیفتد استفاده می شودمراحل مدل سازی تهدید ها

اسلاید 20: 20مرحله چهارمتعیین تهدیدهاMisuse / Abuse CaseUse case شامل مواردی که کاربر و برنامه انجام می دهندMisuse / Abuse Case شامل اموری است که حمله کننده (attacker) مایل به انجام آن استارتباط بین دو دسته از امور بالا نشان دهنده تاثیرات ناشی از عمل حمله کننده با کارکردهای برنامه استمراحل مدل سازی تهدید ها

اسلاید 21: 21Username & passwordBrute forceattackHarwest user accountsDictionary attackUser authenticationShow errormassagesLock after N failed attemptsPasswordcomplexityThreatensMitigatesMitigatesMitigatesMitigates||||||

اسلاید 22: 22مرحله چهارمتعیین تهدیدهاThreat / Attack Treeتشخیص موارد بیشتری از تهدیدهای قابل اعمال به برنامهتعیین موارد ترکیبی از تهدیدها که خطر جدیدی را ممکن است به برنامه تحمیل کنندمراحل مدل سازی تهدید ها

اسلاید 23: 23مرحله چهارمتعیین تهدیدهاساخت Threat / Attack Treeقرار دادن خود به جای حمله کنندهتعیین موارد مورد نیاز برای انجام یک حملهساخت ریشه درخت مبتنی بر حمله مورد نظر و راهها و مراحل انجام حلمه در زیر گره هامراحل مدل سازی تهدید ها

اسلاید 24: 24مراحل مدل سازی تهدید هاThreat #1Obtaining authentication credentials over network1.1Clear text credentials sent over the network1.2Attacker uses network monitoring tools1.2.1Attacker recognize credential dataAnd

اسلاید 25: 25مرحله پنجمتعیین آسیب های برنامهمرور برنامه برای تعیین صریح آسیب پذیری هااستفاده از تهدیدهای لیست شده در مراحل قبلی برای شناخت هر چه بیشتر آسیب پذیری های برنامهمراحل مدل سازی تهدید ها

اسلاید 26: 26AuthenticationThreats Solutions tovulnerabi-litiesBrute force attackNetwork monitoring toolsDictionary attackUse encrypted network linksUse password complexity rulesDelaying login process after every N tryمراحل مدل سازی تهدید ها

اسلاید 27: 27الگوهای طراحی امنالگوهای طراحی راه حل هایی برای مسائل پرتکرار در مهندسی نرم افزار هستندالگوهای طراحی امن قالب هایی برای توصیف راه حل های عمومی در مسائل امنیتی هستندتجزیه مولفه ها با رعایت ویژگی اعتماد (distrustful decomposition)جدا کردن مولفه ها با توجه به حق دسترسی (privilege separation)الگوهای امن در معماری نرم افزار

اسلاید 28: 28الگوهای امن در سطح معماریتجزیه اجزای بی اعتماد از یکدیگر (distrustful decomposition)قرار دادن اعمال مجزا در برنامه هایی با عدم رابطه اعتماد با یکدیگرکم کردن زمینه های حمله در برنامه های منفردکم کردن داده های در معرض حمله در صورت رخداد مخاطره در یکی از برنامه های مجزا شده از لحاظ اعتمادالگوهای امن در معماری نرم افزار

اسلاید 29: 29الگوهای امن در معماری نرم افزارQmial ServerFunctional area( Pipe & Filter)Remote mail serverRemote mail serverFrom localTo localProcess AProcess BProcess AProcess B

اسلاید 30: 30الگوهای امن در سطح معماریجدا کردن مولفه ها با توجه به حق دسترسی (privilege separation)تلاش برای کم کردن قسمتی از کد که با حق دسترسی سطح بالا اجرا می شودقابلیت استفاده از این الگو در صورتی که برنامه شامل عملکردهای متفاوتی باشد که بدون حق دسترسی سطح بالا اجرا شوندالگوهای امن در معماری نرم افزار

اسلاید 31: 31الگوهای امن در معماری نرم افزارProcess AProcess BProcess CPrivileged ProcessSystem serviceAttack surfaceKernel

اسلاید 32: 32L. Bass, P. Clements, R. Kazman, Software Architecture in Practic, Addsion-Weisly, 2nd edition, 2003C. 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, 2011M. Howard, Lessons Learned from Five Years of Building Secure Software, Microsoft Developer Network , 2011J.D. Meier, A. Mackman, B. Wastell, How To Create a Threat Model for a Web Application at Design Time, Microsoft Developer Network (MSDN), 2010منابع

اسلاید 33: Thanks And ?

9,900 تومان

خرید پاورپوینت توسط کلیه کارت‌های شتاب امکان‌پذیر است و بلافاصله پس از خرید، لینک دانلود پاورپوینت در اختیار شما قرار خواهد گرفت.

در صورت عدم رضایت سفارش برگشت و وجه به حساب شما برگشت داده خواهد شد.

در صورت نیاز با شماره 09353405883 در واتساپ، ایتا و روبیکا تماس بگیرید.

افزودن به سبد خرید