امنیت برنامهنویس، آینده در فضای ابری است. زیرا مسئولیت امنیت ابر بر عهده توسعه دهندگان و تیم های توسعه دهنده است، نه امنیت فناوری اطلاعات.
در روزهای مرکز داده داخلی و پذیرش اولیه ابر، نقش توسعهدهندگان برنامهها، عملیات زیرساختها و امنیت تا حد زیادی تثبیت شد. در فضای ابری، این تقسیم کار زمان ورود به بازار را برای نوآوری افزایش میدهد، بهرهوری را کاهش میدهد و ریسکهای غیرضروری را به دنبال دارد.
در یک محیط مرکز داده، توسعهدهندگان برنامههای نرمافزاری میسازند، تیمهای فناوری اطلاعات زیرساخت مورد نیاز برای اجرای آن برنامهها را میسازند، و تیمهای امنیتی مسئول اطمینان از ایمن بودن برنامهها و زیرساختها هستند. توسعهدهندگان باید نرمافزاری را در چارچوب محدودیتهای زیرساختها و سیستمهای عامل بسازند، و فرآیندهای امنیتی تعیین میکنند که همه با چه سرعتی میتوانند پیش بروند. هنگامی که امنیت یک آسیبپذیری را در تولید کشف میکند، فرآیند اصلاح معمولاً شامل همه سهامداران میشود—و کار مجدد قابلتوجهی انجام میشود.
با آزاد کردن تیمها از محدودیتهای فیزیکی مرکز داده، ابر بزرگترین تغییر را در صنعت فناوری اطلاعات در دهههای اخیر ایجاد میکند. اما سالها طول کشید تا سازمانها شروع به بازگشایی پتانسیل واقعی ابر بهعنوان پلتفرمی برای ساخت و اجرای برنامهها کنند، در مقابل استفاده از آن بهعنوان پلتفرمی برای میزبانی برنامههای شخص ثالث یا برنامههایی که از مرکز داده مهاجرت کردهاند. وقتی از ابر صرفاً بهعنوان «مرکز داده از راه دور» استفاده میشود، تقسیم کار کلاسیک انجام میشود و بسیاری از پتانسیلهای ابر محقق نمیشوند.
اما تغییر در استفاده از ابر به عنوان پلتفرمی برای ساخت و اجرای برنامهها، امنیت را از راههای عمیقی مختل میکند. از دیدگاه مشتری ابری، پلتفرم هایی مانند خدمات وب آمازون (AWS)، مایکروسافت آژور و گوگل کلود ۱۰۰% نرم افزار هستند و توسعه دهندگان اکنون در حال برنامه ریزی ایجاد و مدیریت زیرساخت ابری خود به عنوان بخشی جدایی ناپذیر از برنامه های خود هستند. این بدان معناست که توسعه دهندگان معماری ابری خود را طراحی می کنند و پیکربندی های مهم امنیتی را تنظیم می کنند – و سپس دائماً آنها را تغییر می دهند.
فرصتی برای سازمانها
این تغییر یک فرصت بزرگ برای سازمانهایی است که در صنایع بسیار رقابتی فعالیت میکنند، زیرا تیمهای کاربردی و ابری میتوانند بسیار سریعتر از آنچه در یک مرکز داده نوآوری کنند. اما این یک چالش جدی برای آن دسته از تیمهایی است که باید امنیت محیطهای ابری پیچیده و بسیار پویا را تضمین کنند.
امروزه تنها راه مؤثر برای نزدیک شدن به امنیت ابری، توانمندسازی توسعهدهندگان در ساخت و کارکرد در فضای ابری با ابزارهایی است که به آنها کمک میکند تا به طور ایمن ادامه دهند. عدم انجام این کار، امنیت را به عامل محدودکننده نرخ برای سرعت حرکت تیمها در فضای ابری و میزان موفقیت در تحول دیجیتال تبدیل میکند.
برای درک اینکه منظور از توانمندسازی توسعه دهندگان در زمینه امنیت ابری چیست، باید منظورمان از توسعه دهنده را تعریف کنیم. این یک چتر گسترده است که چندین نقش مختلف را پوشش می دهد، از جمله:
- توسعهدهندگان برنامهای که در فضای ابری ایجاد میکنند و از خدمات ابری بومی به عنوان اجزای جداییناپذیر برنامه استفاده میکنند. در این مدل، مرز بین برنامه و زیرساخت دلخواه و محو است، اگر به طور کلی ناپدید نشود.
- مهندسین Cloud (یعنی توسعهدهنده) که از زیرساخت به عنوان کد (IaC) برای برنامهریزی پیکربندی، استقرار و مدیریت محیطهای زیرساخت ابری استفاده میکنند و آن زیرساخت را به توسعهدهندگان برنامه ارائه میکنند.
- مهندسین امنیت ابری که از خطمشی بهعنوان کد (PaC) برای بیان خطمشیهای امنیتی و انطباق به زبانی استفاده میکنند که سایر برنامهها میتوانند از آن برای اعتبارسنجی خودکار امنیت استفاده کنند و این کتابخانههای PaC را در اختیار تیمهای سراسر سازمان قرار دهند.
بدون توجه به شرح وظایف آنها، توسعه دهندگان زیرساخت رایانش ابری را خود کنترل می کنند زیرا ابر کاملاً نرم افزاری تعریف شده است. وقتی برنامههایی را در فضای ابری میسازند، زیرساختهایی را برای برنامهها با استفاده از IaC میسازند و توسعهدهندگان مالک این فرآیند هستند.
خط مشی امنیت و انطباق به عنوان کد
این بدان معناست که نقش تیم امنیتی به سمت متخصص دامنه تبدیل شده است که دانش و قوانین را به توسعهدهندگان منتقل میکند تا اطمینان حاصل شود که در یک محیط امن کار میکنند. آنها به جای بیان این قوانین به زبان انسانی برای درک و تفسیر دیگران، از PaC استفاده می کنند که سایر کدها و محیط های در حال اجرا را برای شرایط ناخواسته بررسی می کند. PaC به همه سهامداران ابری اجازه می دهد تا بدون ابهام یا اختلاف نظر در مورد قوانین و نحوه اعمال آنها در هر دو انتهای چرخه عمر توسعه نرم افزار (SDLC) ایمن کار کنند.
سازمان هایی که امنیت ابر را به درستی دریافت می کنند، از مدل DevSecOps حمایت می کنند و توسعه دهندگان را قادر می سازند تا از امنیت برنامه ها پس از استقرار اطمینان حاصل کنند. IDC پیش بینی می کند تعداد رو به افزایشی از توسعه دهندگان (بیش از ۴۳ میلیون تا سال ۲۰۲۵) پیدا خواهند کرد پس از اجرای کد خود کاملاً مسئول عملکرد و امنیت مداوم کدشان هستند.
مدتی است، برنامهها شامل یک SDLC هستند که شامل مراحل ایجاد، آزمایش، استقرار و نظارت است. حرکت به سمت چپ در امنیت برنامه، ROI قابل توجهی از نظر سرعت، بهرهوری و امنیت ایجاد کرده است، زیرا رفع مشکلات زودتر در چرخه عمر آسانتر، سریعتر و ایمنتر است. با پذیرش IaC، زیرساختهای ابری اکنون دارای SDLC خاص خود هستند، به این معنی که امنیت ابری نیز میتواند و باید در مراحل قبل از استقرار مورد توجه قرار گیرد.
نگرانی اصلی در مورد امنیت ابر پیکربندی نادرست است، اما مهم است که تشخیص دهید که پیکربندی نادرست هر چیزی در محیط ابری شما است که در متوقف کردن یک هکر ناکارآمد باشد. ما بیشتر با پیکربندیهای نادرست تک منبعی آشنا هستیم که اغلب در پوشش خبری رخنههای ابری برجسته میشوند، مانند باز گذاشتن یک پورت خطرناک یا فعال کردن دسترسی عمومی به یک سرویس ذخیرهسازی شی. اما پیکربندیهای نادرست شامل پیکربندی نادرست کل محیط نیز میشود – آسیبپذیریهای معماری که به مهاجمان قدرت کشف، حرکت و استخراج دادهها را میدهد.
هر شکاف بزرگ ابری شامل سوء استفاده از این نقصهای طراحی در محیطهای ابری میشود—یا به خطر افتادن صفحه کنترل. صفحه کنترل سطح API است که ابر را پیکربندی و راه اندازی می کند. به عنوان مثال، میتوانید از صفحه کنترل برای ساخت یک کانتینر، تغییر مسیر شبکه و دسترسی به دادههای پایگاه داده یا عکسهای فوری پایگاههای داده استفاده کنید. (دسترسی به عکسهای فوری در میان هکرها محبوبتر از نفوذ به پایگاههای داده تولید زنده است.) به عبارت دیگر، صفحه کنترل API مجموعهای از APIهایی است که برای پیکربندی و عملکرد ابر استفاده میشوند.
APIها محاسبات ابری را هدایت می کنند. آنها نیاز به معماری ثابت فناوری اطلاعات در یک مرکز داده متمرکز را حذف می کنند. APIها همچنین به این معنی است که مهاجمان مجبور نیستند مرزهای دلخواه را که شرکت ها در اطراف سیستم ها و ذخیره های داده در مراکز داده داخلی خود ایجاد می کنند رعایت کنند. در حالی که شناسایی و اصلاح پیکربندیهای نادرست یک اولویت است، درک این نکته ضروری است که پیکربندیهای نادرست تنها یک وسیله برای رسیدن به هدف نهایی برای مهاجمان است: سازش هواپیمای کنترل. این نقش اصلی در هر رخنه مهم ابری تا به امروز داشته است.
توانمندسازی توسعه دهندگان برای ایمن سازی ابر
تقویت دادن به توسعهدهندگان برای یافتن و رفع پیکربندیهای نادرست ابر هنگام توسعه IaC بسیار مهم است، اما به همان اندازه مهم است که ابزارهای مورد نیاز برای طراحی معماری ابری را در اختیار آنها قرار دهیم که ذاتاً در برابر حملات در معرض خطر هواپیمای کنترلی امروزی ایمن باشد.
پنج مرحله وجود دارد که هر سازمانی می تواند برای توانمندسازی موثر توسعه دهندگان برای کار ایمن در فضای ابری بردارد:
- محیط ابری و SDLC خود را بشناسید. تیمهای امنیتی باید مهندسان را با برنامهها و تیمهایی را توسعه دهند تا همه چیزهایی را که در حال اجرا است، نحوه پیکربندی، نحوه توسعه و استقرار آن و تغییرات زمانی که اتفاق میافتند، درک کنند. شما باید بدانید که چه برنامه هایی با منابع ابری همراه با هر داده و نحوه استفاده از آن مرتبط هستند. مانند یک هکر فکر کنید تا خطرات به خطر افتادن هواپیمای کنترل را شناسایی کنید.
- طراحی ایمن را در اولویت قرار دهید و از پیکربندی نادرست جلوگیری کنید. هنگامی که حمله به خطر افتادن هواپیمای کنترلی در حال انجام است، معمولاً برای متوقف کردن آن خیلی دیر است. امنیت ابری مؤثر مستلزم جلوگیری از شرایطی است که این حملات را ممکن میسازد. امنیت را در کل SDLC ابری ایجاد کنید تا پیکربندیهای نادرست را قبل از استقرار پیدا کنید و روی طراحی معماریهای محیطی ذاتاً ایمن تمرکز کنید.
- توسعه دهندگان را با ابزارهایی توانمند کنید که آنها را در زمینه امنیت راهنمایی می کند. توسعهدهندهها به سرعت در حال حرکت هستند، و اگر انتظار داشته باشیم که بدون تأثیر بر سرعت، مورد پذیرش قرار گیرد، هر ابزار امنیتی باید همانطور که کار میکند، کار کند. ابزار امنیت ابری باید به توسعه دهندگان بازخورد مفید و قابل اجرا در مورد مسائل امنیتی و نحوه اصلاح سریع آنها ارائه دهد تا بتوانند به کار خود ادامه دهند.
- سیاست را بهعنوان کدی برای امنیت ابری اتخاذ کنید. PaC به تیمهای امنیتی کمک میکند تا تلاشهای خود را با منابعی که در اختیار دارند، با توانمندسازی همه سهامداران ابری برای کار ایمن بدون هیچ گونه ابهام یا اختلاف نظر در مورد قوانین و نحوه انجام کار، افزایش دهند. آنها باید اعمال شوند. این برنامه برای همسو کردن همه تیمها تحت یک منبع حقیقت واحد برای خطمشی، از بین بردن خطاهای انسانی در تفسیر و اعمال خطمشی استفاده میکند و اتوماسیون امنیتی (ارزیابی، اجرا و غیره) را در هر مرحله از SDLC فعال میکند.
- روی اندازهگیری و بهبود فرآیند تمرکز کنید. امنیت ابری کمتر در مورد شناسایی نفوذ و نظارت بر شبکهها برای فعالیتهای شرورانه است و بیشتر در مورد بهبود فرآیندهای امنیت ابری برای جلوگیری از وقوع سوء استفادهها است. تیمهای ابری موفق بهطور مداوم ریسک محیط خود و همچنین بهرهوری توسعهدهندگان و تیمهای امنیتی را ارزیابی میکنند، که باید با خودکارسازی کارهای دستی و مستعد خطا بهبود یابد.
توسعهدهندهها در بهترین موقعیت (و اغلب تنها) برای ایمن کردن کد خود قبل از استقرار، حفظ یکپارچگی امن آن در حین اجرا، و درک بهتر مکانهای خاص برای ارائه اصلاحات در کد هستند. اما آنها همچنین انسانهایی هستند که در دنیای آزمایشها و شکستهای مداوم کار میکنند و مستعد اشتباه هستند. اتوماسیون ساخته شده بر روی PaC خطر خطای انسانی را با خودکار کردن فرآیند جستجوی مداوم و کشف اشتباهات قبل از به کارگیری آنها از بین می برد.
سازمانهایی که رویکرد اول توسعهدهنده را برای امنیت ابری میپذیرند، سریعتر و ایمنتر از رقبای خود نوآوری میکنند.
جاش استلا معاون و معمار ارشد در Snyk و یک مرجع فنی در مورد امنیت ابر. جاش ۲۵ سال تخصص در فناوری اطلاعات و امنیت را به عنوان مدیرعامل موسس در Fugue، معمار اصلی راه حل ها در خدمات وب آمازون، و مشاور جامعه اطلاعاتی ایالات متحده. ماموریت شخصی جاش این است که به سازمانها کمک کند تا بفهمند که چگونه پیکربندی ابری سطح حمله جدید است و چگونه شرکتها برای ایمن کردن زیرساخت ابری خود باید از حالت دفاعی به حالت پیشگیرانه حرکت کنند. او اولین کتاب را در مورد زیرساخت غیرقابل تغییر نوشت (منتشر شده توسط O’Reilly)، دارای پتنت های متعدد فناوری امنیت ابری، و میزبان یک سری آموزشی Cloud Security Masterclass است. با جاش در LinkedIn ارتباط برقرار کنید .
—
New Tech Forum مکانی برای کاوش و بحث در مورد فناوری سازمانی نوظهور در عمق و وسعت بی سابقه ای فراهم می کند. انتخاب ذهنی است، بر اساس انتخاب ما از فناوری هایی که معتقدیم مهم هستند و برای خوانندگان InfoWorld بیشترین علاقه را دارند. InfoWorld وثیقه بازاریابی را برای انتشار نمی پذیرد و حق ویرایش تمام محتوای ارائه شده را برای خود محفوظ می دارد. همه سوالات را به newtechforum@infoworld.com ارسال کنید.
پست های مرتبط
چرا توسعه دهندگان کلید امنیت ابر را در دست دارند؟
چرا توسعه دهندگان کلید امنیت ابر را در دست دارند؟
چرا توسعه دهندگان کلید امنیت ابر را در دست دارند؟