ای ترجمه
ای ترجمه
خواندن ۱۲ دقیقه·۲ سال پیش

مدیریت ملزومات امنیتی نرم افزار به عنوان سرویس رایانش ابری (مقاله ترجمه شده)

چکیده

کاربردهای در حال ظهور ابر به سرعت در حال رشد هستند و نیاز به شناسایی و شرایط مدیریت خدمات نیز در حال حاضر بسیار مهم و حیاتی است. سیستم های مهندسی نرم افزار و اطلاعات, تکنیک ها، روش ها و فن آوری های را در طول دو دهه برای کمک به کسب شرایط سرویس ابری، طراحی، توسعه، و تست ایجاد کرده اند. با این حال، با توجه به عدم شناخت ما از آسیب پذیری های امنیتی نرم افزار که باید شناسایی شوند و در طول فاز مهندسی شرایط مدیریت شوند، ما در استفاده از مهندسی نرم افزار، مدیریت اطلاعات و اصول مدیریت شرایط که برای حداقل 25 سال گذشته در حین توسعه سیستم های نرم افزاری امن ایجاد شده اند، بسیار موفق بوده ایم. بنابراین، امنیت نرم افزار را نمی توان درست بعد از ساخت و تحویل یک سیستم به مشتریان اضافه نمود, همانطور که در کاربردهای نرم افزار امروزی دیده می شود. در این مقاله, روش های مختصر، تکنیک ها، و بهترین شرایط عمل مهندسی و مدیریت به عنوان یک سرویس ابری در حال ظهور (SSREMaaES) و نیز دستورالعمل هایی در مورد امنیت نرم افزار به عنوان یک سرویس ارائه شده است. این مقاله همچنین یک مدل یکپارچه امن SDLC  (IS-SDLC) را مورد بحث قرار می دهد که به پزشکان، محققان، زبان آموزان و آموزگاران سود خواهد رساند. در این مقاله رویکرد ما برای خدمات سیستم ابر AMAZON EC2 بزرگ نشان داده شده است.

مقدمه

شکی نیست که محاسبات ابری, زندگی انسانی، ارتباطات، اقتصاد دیجیتال، اجتماعی و سرگرمی را متحول کرده است. در عین حال, خواسته ها برای کاربردهای اینترنت-محور به سرعت در حال رشد است. تقریبا همه کسب و کارها، کاربردها، دستگاه های سرگرمی، دستگاه های تلفن همراه، روبات ها، سیستم های مقیاس بزرگ (هواپیماها، سیستم های کنترل ماموریت)، سیستم های ایمنی-بحرانی، سیستم های پزشکی، کاربردهای اینترنت دستگاه ها, به دلایل مختلف از جمله ارتقاء آنلاین، برنامه های توزیع شده، پروژه های تیمی، و اتصال به سرور اینترنت-محور هستند. بنابراین، همیشه تقاضای در حال رشد برای کاربردهای امن و اعتماد وجود دارد. حملات سایبری به طور مداوم از هرزنامه ها، فیشینگ، سرقت هویت، و دیگر موارد در حملات مقیاس بسیار بزرگتر مانند پول شویی و تروریسم سایبری در حال افزایش است. یک امکان واقعی وجود دارد که یک حمله شبکه می تواند سیستم های فرمان را غیر فعال کند، شبکه های توان را تضعیف کند، سیل گیرهای سد را باز کند، ارتباطات و سیستم های حمل و نقل را فلج نماید، تشنجات جمعی را ایجاد نماید: که هر یک یا همه آنها می توانند پیش نیاز ابتدایی حمله تروریستی و یا نظامی باشند. اینها برخی از تهدیدات هستند, زیرا برای ارتباطات و مدیریت, ما (شخصی، دولت, سازمان ها، شرکت ها، و کسب و کار) بیشتر به رایانه ها و تلفن همراه وابسته هستیم.

خدمات ابر در حال ظهور در حال افزایش هستند از جمله eHealthCloud، eHealthCloud, E-Learning, E-Manufacturing. Kostoska، Gusev، و Ristov  (2014) یک پلت فرم (سیستم عامل) قابلیت حمل ابر جدید (PaaS) را به عنوان یک سرویس توصیف نمودند که می تواند یک پلت فرم ابر را به پلت فرم دیگر بپذیرند و تبادل نمایند و به طور کاملاً خودکار نصب شوند. Han و همکاران, تثبیت VM آگاه از-انرژی را بر اساس الگوریتم آگاه از استفاده-باقیمانده (RUA) پیشنهاد کرده اند. Xu (2013) یک سیستم تولید ابر سازگار (ICMS) را پیشنهاد داده است که منابع محصور را در یک سرویس ابری برای تولید به اشتراک می گذارد که در آن قابلیت های ساخت و فرصت های کسب و کار ادغام می شوند و در یک حوزه منابع بزرگتر محصور پخش می شوند. Srivastava و همکاران (2015) توضیح می دهند که چگونه ابتکارات سلامت الکترونیک و فن آوری, توسط اتصال و مشاوره تخصصی در سراسر جهان برای جراحی های بسیار پیچیده، خدمات استفاده از ابر، خدمات اینترنت اشیا برای جمع آوری و نظارت بر داده، و ادغام های مختلف فن آوری, به دستیابی به خدمات درمانی با یک هزینه بسیار کم کمک می کنند. هدف این مقاله, ارائه مهندسی امنیت نرم افزار به عنوان یک سرویس در حال ظهور که هدف آن, پیشنهاد ابزارها و تکنیک ها در مورد شرایط امنیتی، طراحی برای امنیت نرم افزار، توسعه نرم افزار امن، تجزیه و تحلیل آسیب پذیری، تست امنیت، و معیارهای امنیتی است.

2. چرا مهندسی امنیت نرم افزار؟

مهندسی نرم افزار (SE) روش ها، رویکردها و فن آوری هایی را در بیش از دو دهه ایجاد کرده است. SE نیز تکنیک ها و ابزارهای غنی در مورد شرایط نرم افزار مدل سازی، طراحی، توسعه، تست، مدیریت پیکربندی، و معیارهای نرم افزاری را فراهم می کند. با این حال، مسائل امنیتی, ویژگی های مستقیم نرم افزار های مختلف از قبیل کاربردها، رابط کاربری، شبکه، توزیع، انتقال داده های فشرده، و ابزارهای ارتباطی، و غیره هستند. کاربردهای کنونی در حال توسعه و تحویل هستند. توسعه دهندگان تجاری اولیه با استفاده از فایروال (در سطح برنامه)، و تست نفوذ و مدیریت گروهی از عهده مشکلات امنیتی برآمده اند.

مهندسی و مدیریت شرایط امنیتی نرم افزار به عنوان یک سرویس ابری در حال ظهور (SSREMaaES)

در عصر ابر رایانه، در حال ظهور به معنای تکنیک ها و روش های نوآورانه مورد استفاده برای حوزه های سنتی (اقتصاد، بهداشت و درمان، آموزش و پرورش، مهندسی نرم افزار، امنیت و غیره) و حوزه های جدید (برنامه های تلفن همراه، شبکه های اجتماعی، تجسم آب و هوا، بزرگ پردازش داده ها و غیره) است. تحقیقات قبلی ما در این زمینه شامل چند برنامه ابر نوآورانه به عنوان یک سرویس (Chang, Ramachandran, Wills, Walters, Kantere, ، Kantere، و Li، 2015) می شود. با این حال، تا کنون، تحقیقات زیادی در حوزه شیوه های مهندسی نرم افزار و مهندسی نرم افزار امنیتی به عنوان یک سرویس ارائه نشده است. بنابراین، هدف این مقاله, پیشنهاد مهندسی و مدیریت شرایط امنیتی نرم افزار ها به عنوان یک سرویس در حال ظهور (SSREMaaES) است. الزامات, نقطه شروع مسئول هر سیستم، مسائل حقوقی و قراردادی، حکومتداری است و یک چشم انداز کامل کاربردی از سیستم در حال توسعه را ارائه می دهد. مهندسی شرایط در جایگاه خود یک رشته است که فرایند، ابزارها، تکنیک ها، مدل سازی، برآورد هزینه، برنامه ریزی پروژه، و موافقت نامه های قراردادی را فراهم می کند. میزان زیادی از روش های مهندسی شرایط، تکنیک ها، و رهنمودهای بهترین عمل و ابزارها وجود دارد (Jacobson، 1992؛ Kotonya و Sommerville، 1992؛ Lamsweerde، 2009؛ Sommerville و Sawyer، 1998). با این حال، با توجه به ماهیت افزایش تقاضا برای کاربردهای امنیت-محور، تکنیک های فعلی در مورد داشتن شرایط موثر مربوط به امنیت, ناکافی می باشند. Firesmith (2007، 2003) گزارش می دهد که الزامات ضعیف, دلایل اصلی برای هزینه و اجراهای بیش از حد زمانبندی، قابلیت ضعیف و سیستم های تحویل داده شده هستند که هرگز استفاده نمی شوند. الزامات به دو بخش عمده طبقه بندی می شوند از جمله شرایط عملکردی که با قابلیت سیستم و نیازهای غیر کارکردی سرو کار دارند که مرتبط با محدودیت ها، کیفیت، داده ها، استانداردها، مقررات، رابط، کارایی، قابلیت اطمینان، و سایر الزامات پیاده سازی است. مطالعات (Jacobson1992؛ Kotonya و Sommerville، 1992؛ Lamsweerde، 2009؛ Sommerville و Sawyer، 1998) نشان داده اند که هزینه نقایص مهندسی شرایط, 10-200 برابر اصلاح سیستم پس از پیاده سازی است. بنابراین، دریافت الزامات درست، دقیق و بدون ابهام, برترین شیوه کار است

شناسایی آسیب پذیری امنیتی و یکپارچه سازی برای حملات DDoS

این بخش در مورد تعدادی از آسیب پذیری ها بحث می کند و SDLC در مدل سازی تهدید را برای شناسایی آسیب پذیری در مرحله REنیز ارائه می دهد. این مورد با استفاده از حملات DDoS(انکار توزیع شده سرویس) نشان داده می شود که در سرویس های ابری و سایر بخش های حیاتی کسب و کار مانند انبار Carphone ، Talktalk mobile، و غیره رایج بوده اند. این به دلیل مرورگرهای موجود است که با BSI توسعه یافته اند. بنابراین، ثابت شده است که اضافه کردن امنیت از طریق تکه ها که در شیوه های فعلی دیده می شود, آسیب پذیر به حملات امنیت سایبری می باشد. این مورد در شکل 3 در مورد تجزیه و تحلیل آسیب پذیری برای مرورگرهای مختلف موجود با استفاده از داده های موجود نشان داده شده است.

شرایط امنیتی برای اندازه گیری حملات DDoS

این یکی از روش های اصلی ما به عنوان بخشی از مدل یکپارچه برای فرایند مهندسی نرم افزار امنیتی است.

شناسایی تهدیدات

در این مرحله، تهدیدات را می توان شناسایی و بر اساس مدل STRIDE طبقه بندی نمود که توسط Microsoft توسعه داده شده است و شامل طبقه بندی تهدیدات به شش دسته می شود: حقه بازی، دستکاری، طلاق، محرومیت از خدمات و بالا بردن امتیاز (STRIDE، 2002). رویکرد STRIDE شامل تجزیه و تحلیل هر یک از مؤلفه ها در برابر تهدیدات بالقوه با استفاده از تجزیه فرآیند و برای هر تهدید، کاهش های ممکن را می توان پیشنهاد داد که تحکیم امنیت قوی در زیرساخت ابر را میسر می سازد. این مورد در جدول 1 نشان داده شده است.

ساخت درخت حمله و فرآیند کاهش (تعدیل)

حملات DDoS, رایج ترین نوع حملات امنیتی هستند که اغلب در سال های اخیر دیده شده است, همانطور که قبلاً آنها را مورد بحث قرار دادیم. حملات DDoS می توانند یک ویژگی کامل را غیر فعال سازند و منابع را غیر قابل دسترس سازند. حمله DDoS, بزرگترین تهدید برای محاسبات ابری و برای موفقیت آن است. بنابراین، نشان دادن رویکرد سیستماتیک برای شرایط امنیتی بخش مهمی از رویکرد ماست که می تواند مانع تاثیر DDoS از طریق طراحی و توسعه شود. رویکرد ما, استفاده از ابزار مدل سازی تهدید Microsoft برای ساخت درخت حمله و استفاده از موارد سوء استفاده برای شناسایی شرایط امنیتی است. ما همچنین استفاده از فرآیند کسب و کار، شبکه، و ابزارهای شبیه سازی ابر را برای مطالعه و ارزیابی کامل طراحی پیشنهادی پیشنهاد می نماییم. پس از ساخت یک نمودار جریان داده ها؛ می توانیم نتایج ارائه شده را توسط درخت حمله استفاده کنیم تا تعیین نماییم که کدام اقدامات متقابل باید برای در نظر گرفتن هر حمله به کار گرفته شوند و هر اقدام متقابل باید توسط یک وضعیت مشخص شود. DDoS مدرن, وظیفه ارائه دهندگان امنیت برای ساخت یک حفاظت جامع را پیچیده نموده است که می تواند ترافیک DDoS را در زمان واقعی بدون تغییر با ترافیک قانونی پیچیده نماید. با این حال، فرمول های زیر برای ارائه بینشی در مورد بهترین رویکرد توسعه یافته است که به طور کامل می تواند این تهدید را شکست نماید و همچنین ارائه دهندگان ابر و همچنین شرکت های آماده را قبل از وقوع حمله را هدایت خواهد کرد.

فرآیند چرخه عمر توسعه نرم افزار امنیت یکپارچه

اشکالات و شرایط بحث شده در بالا برای یک روش مختصر، به توسعه یک مدل منجر می شود که فعالیت های مختلف شناسایی و تجزیه و تحلیل مهندسی نرم افزار امنیتی را در فرآیند توسعه نرم افزار ادغام می کند و این فرآیند جدید و فعالیت های آن در شکل6 نشان داده شده است. با این حال، این مقاله فقط بر فعالیت های خاص شرایط امنیتی نرم افزار متمرکز می کند. بر اساس این مدل، SSRE (مهندسی شرایط امنیتی نرم افزار) شامل شناسایی استانداردها و استراتژی های سازمان با توجه به استخراج شرایط (از جمله تجزیه و تحلیل، اعتبار سنجی، تایید)، انجام مدیریت ریسک و کاهش می شود و شناسایی الزامات (شرایط) امنیتی نرم افزار متشکل از یک فرایند فرعی تعریف امنیت، شناسایی استراتژی های امنیتی، انجام تجزیه و تحلیل محدوده های کاربرد و حوزه ها، مدل سازی و شبیه سازی فرایند کسب و کار، شناسایی مسائل امنیتی، استفاده از موارد استفاده و موارد سوء استفاده، الگوهای حمله می شود.

روش مهندسی شرایط امنیتی نرم افزار به عنوان بخشی از IS-SDLC

مهندسی نرم افزار امن, به درک گسترده از اهمیت یکپارچه سازی امنیت در سراسر مراحل چرخه عمر توسعه نیاز دارد. Oueslati و همکاران (2016), چالش های توسعه نرم افزار امن را با استفاده از رویکرد مبتنی بر چابک بودن مورد بحث قرار داده اند. به طور مشابه، در طول فعالیت های مهندسی شرایط، روش های موجود, بسیاری از تغییرات شرایط را مورد بحث قرار می دهد و یکپارچه سازی امنیت را به عنوان بخشی از تکامل شرایط در نظر نمی گیرد. Mead, Morales, and Alice (2015) افزایش SDLC کنونی با موارد سوء استفاده به دست آمده از تجزیه و تحلیل بدافزار بر اساس حملات را پیشنهاد کرده اند. Beckers و همکاران (2014)، یک روش مبتنی بر الگوی ساختاریافته را با حمایت از استخراج شرایط امنیتی و انتخاب اقدامات امنیتی پیشنهاد کرده اند و رویه آنها, مشتریان بالقوه ابر را برای مدلسازی کاربرد مورد کسب و کار خود در زمینه رایانش ابری با استفاده از یک رویکرد مبتنی بر الگو که همچنین به عنوان الگوی تجزیه و تحلیل سیستم ابری شناخته می شود هدایت می کند. با این حال، این روش ها بسیار جالب هستند, اما فاقد یکپارچه سازی شرایط امنیتی از سهامداران مختلف می شوند. هدف این مقاله, برآورده سازی این شکاف با یکپارچه سازی سهامداران مختلف است و آنها اغلب شرایط امنیتی نرم افزار متفاوت را که باید توسط مهندسان شرایط تحکیم شوند فراهم می کنند. توسعه نرم افزار و توسعه نرم افزار امن شامل بسیاری از سهامداران و رهبران کسب و کار می شود و هماهنگی آنها برای ارائه سیستم های نرم افزاری امن, حیاتی است. سهامداران مختلف در شکل 7 نشان داده شده اند.

بهترین رهنمودهای عمل

برای سیستم های امن، این مقاله مجموعه ای از دستورالعمل های رایج را شناسایی می کند که برای توسعه نرم افزار امن قابل اجرا می باشند:

1. ایجاد یک لیست از چک لیست های شرایط امنیتی و طبقه بندی آنها به صورت: مهم، میانه ​​و متوسط ​​.

2. گرد هم آوردن یک تیم بازرسی شرایط برای انجام فرایند اعتبار سنجی شرایط امنیتی

3. شناسایی، استخراج، تجزیه و تحلیل، و مدیریت شرایط امنیتی

4. تعیین و مدلسازی موارد سوء استفاده و استخراج شرایط امنیتی از موارد سوء استفاده

5. چک کردن الزامات عملیاتی و کاربردی در برابر شرایط امنیتی

6. ایجاد یک فرهنگ امنیت سازمانی (مثلاً, بررسی اطمینان از استفاده مناسب از سیستم های ایمیل بایدها و نبایدها).

7. کاربرد مدل DREAD و توسعه چرخه عمر امنیت Microsoft برای شناسایی تهدید و تخفیف

8. درخواست مدلسازی و شبیه سازی فرایند کسب و کار با استفاده از ابزارهای BPMN مانند Benita soft که عملکرد مشخصی را فراهم می کند که به همه فرایندهای امنیتی خاص انتخاب شده نسبت داده می شود.

9. توسعه طراحی برای امنیت ابر

10. طراحی خدمات ابر با SoaML یا مدل component UML 2. 0

11. به کار بردن ابزارهای شبیه سازی شبکه به منظور مطالعه و شناسایی تهدیدات شبکه

نتیجه گیری

مهندسی امنیت نرم افزار, چند شیوه عالی, تکنیک, و روش ها برای توسعه سیستم ها و خدمات را که برای امنیت, انعطاف پذیری, پایداری ساخته می شوند ارائه می دهد. هرچند, امنیت نرم افزار را نمی توان بعد از اینکه یک سیستم ساخته می شوند و به مشتریان تحویل داده می شود اضافه نمود, همانطور که در کاربردهای نرم افزاری امروزی دیده می شود. این مقاله, تکنیک های مختصر و رهنمودهای شرایط بهترین شیوه را در مورد امنیت نرم افزار ارائه نمود و همچنین یک مدل SDLC-امن-یکپارچه (IS-SDLC) را مورد بحث قرار داد که به دست اندرکاران, محققان, یادگیرندگان و زبان آموزان سود خواهد رساند. این مقاله, کاربرد چرخه عمر توسعه امنیتی مایکروسافت را نشان داده شده است و یک مدل فرآیند توسعه نرم افزاری امن یکپارچه را برای محاسبه ابری توسعه داده است. این مقاله, موضوعات مرتبط با ضبط, تحلیل و مدلسازی شرایط امنیتی نرم افزار را ارائه نمود و مهندسی و مدیریت شرایط امنیتی نرم افزار را به عنوان یک خدمات در حال ظهور پیشنهاد نموده است (SSREMaaES). SSREMaaES دارای قابلیت تغییر رو توسعه نرم افزار است و ابزارها و تکنیک ها را به عنوان یک خدمات ارائه می دهد که می توان با سهامداران توزیع شده به توسعه و تسهیم آنها پرداخت.

این مقاله ISI در سال 2016 در نشریه الزویر و در مجله بین المللی مدیریت اطلاعات ، توسط دانشکده محاسبات منتشر شده و در سایت ای ترجمه جهت دانلود ارائه شده است. در صورت نیاز به دانلود رایگان اصل مقاله انگلیسی و ترجمه آن می توانید به پست دانلود ترجمه مقاله مدیریت ملزومات امنیتی نرم افزار به عنوان سرویس رایانش ابری در سایت ای ترجمه مراجعه نمایید.

مقاله امنیت نرم افزارمقاله توسعه نرم افزاری امنمقاله رایانش ابریمقاله SDLمقاله مدیریت اطلاعات
خدمات ارائه مقالات علمی و سفارش ترجمه تخصصی
شاید از این پست‌ها خوشتان بیاید