نگاه کلی

در دنیای امروز که برنامه‌های کاربردی محور اصلی بسیاری از فعالیت‌ها هستند، تقریباً برای هر نیازی یک اپلیکیشن وجود دارد. سازمان‌ها با ارائه‌ی این اپلیکیشن‌ها به کارمندان و مشتریان، بهره‌وری را افزایش می‌دهند، به تقاضاهای بازار پاسخ می‌دهند و در نهایت، مزیت رقابتی به‌دست می‌آورند. اما این روند، همراه با افزایش دسترسی به داده‌های حساس، خطرات امنیتی جدی‌تری را نیز به همراه دارد. کاربران امروزی دیگر محدود به شبکه سازمان نیستند و برنامه‌هایی که استفاده می‌کنند، ممکن است در مراکز داده خصوصی یا در بستر رایانش ابری عمومی میزبانی شوند. این پراکندگی باعث کاهش کنترل و دید سازمان‌ها بر روی برنامه‌ها شده و همین خلأ، فرصت را برای مهاجمان سایبری فراهم کرده است.

حملاتی مانند انکار سرویس (DoS)، بدافزارهای مبتنی بر مرورگر یا تهدیدات پیشرفته مداوم (APT) اغلب با هدف دستیابی یا تخریب داده‌های سازمانی طراحی می‌شوند. امروزه با رمزگذاری بخش بزرگی از ترافیک شبکه، بسیاری از ابزارهای امنیتی دیگر قادر به بررسی محتوای داده‌ها نیستند و عملاً «کور» عمل می‌کنند.

در گذشته، امنیت برنامه‌ها عمدتاً در فرآیند توسعه نرم‌افزار (SDLC) متمرکز بود؛ توسعه‌دهندگان موظف بودند کدها را با رعایت اصول امنیتی بنویسند. اما واقعیت امروز نشان می‌دهد که این تنها بخش کوچکی از پازل امنیتی است. مرزهای سنتی امنیتی در حال فروپاشی هستند و بسیاری از دستگاه‌ها و کاربران خارج از شبکه داخلی فعالیت می‌کنند. در چنین شرایطی، تهدیدات علیه برنامه‌ها و داده‌های حساس روز‌به‌روز پیچیده‌تر می‌شوند و نیازمند رویکردهای نوین هستند.

برای محافظت مؤثر از برنامه‌ها، باید امنیت را به صورت فراگیر و در همه جا اعمال کرد. بخش عمده‌ای از حملات سایبری امروزی به سطح برنامه‌ها هدف گرفته‌اند، در حالی که بسیاری از سازمان‌ها هنوز سرمایه‌گذاری مناسبی در این لایه از امنیت نکرده‌اند. اکنون زمان آن رسیده که رویکرد امنیتی سازمان‌ها متحول شده و تمرکز بیشتری بر لایه‌ی برنامه‌ها پیدا کند.

امنیت برنامه‌ها با رویکردی مبتنی بر ریسک

رویکرد مبتنی بر ریسک در امنیت برنامه‌ها به سازمان‌ها این امکان را می‌دهد تا نقاط ضعف را در اجزای مختلف برنامه شناسایی کرده و یک راهکار جامع برای محافظت از داده‌های ارزشمند طراحی کنند. آسیب‌پذیری یک جزء از برنامه، چه در کد باشد و چه در دسترسی به شبکه یا DNS، می‌تواند کل عملکرد و امنیت برنامه را به خطر بیندازد. بنابراین، شناسایی ریسک در لایه‌های مختلف و اولویت‌بندی آن‌ها، زمینه‌ساز یک استراتژی دفاعی قوی‌تر خواهد بود.

اجزای کلیدی در استراتژی امنیت برنامه‌ها

برای کاهش احتمال نفوذ به داده‌های حساس، سازمان‌ها باید مجموعه‌ای از ابزارهای امنیتی پیشرفته و متنوع را در سطح برنامه‌ها پیاده‌سازی کنند. این ابزارها در چارچوب یک راهبرد دفاع چند‌لایه (defense-in-depth) می‌توانند مؤثر واقع شوند. اجزای مهم این راهبرد عبارت‌اند از:

تست امنیت برنامه‌ها

امنیت نرم‌افزار همچنان ستون اصلی محافظت از برنامه‌ها محسوب می‌شود. اما فراتر از توسعه کدهای جدید، باید آسیب‌پذیری‌های موجود در سایت‌ها و نرم‌افزارهای فعلی نیز برطرف شود—به‌ویژه آن‌هایی که بدون در نظر گرفتن چرخه‌ی توسعه‌ی امن طراحی شده‌اند. هدف از یافتن این حفره‌ها تنها گزارش‌دهی نیست؛ بلکه محافظت از سامانه‌ها در برابر مهاجمانی است که به‌دنبال دسترسی به داده‌های مهم هستند.

درک دقیق تهدیدات و روش‌های مهاجمان، به تیم‌های امنیتی کمک می‌کند تا راهکارهای دفاعی کارآمدتری طراحی کنند. آموزش نیروهای متخصص امنیت در زمینه‌ی نرم‌افزار و آسیب‌پذیری‌های آن، در آینده‌ای نه‌چندان دور یک ضرورت جدی خواهد بود.

اسکنرهای آسیب‌پذیری در شناسایی و کاهش مشکلات امنیتی نرم‌افزارها نقش حیاتی دارند—چه قبل از انتشار سایت‌ها و اپلیکیشن‌های جدید و چه پس از راه‌اندازی آن‌ها. بهترین نتیجه زمانی حاصل می‌شود که اسکنر آسیب‌پذیری با یک فایروال وب (Web Application Firewall) مبتنی بر پروکسی ترکیب شود؛ ترکیبی که هم شناسایی تهدیدات را بهبود می‌بخشد و هم واکنش در لحظه به حملات را امکان‌پذیر می‌سازد.

وب فایروال یا همان فایروال وب‌اپلیکیشن (Web application firewall)

در دنیای امروزی که برنامه‌های وب محوریت بسیاری از خدمات را بر عهده دارند، برخورداری از یک فایروال قدرتمند برای اپلیکیشن‌های وب دیگر یک گزینه‌ی اختیاری نیست، بلکه ضرورتی اجتناب‌ناپذیر است. با رشد روزافزون برنامه‌های مبتنی بر فضای ابری، تهدیدات امنیتی نیز پیچیده‌تر شده‌اند و امنیت داده‌های سازمانی را به چالش کشیده‌اند.

فایروال ترکیبی برای برنامه‌های وب می‌تواند از برنامه‌ها در برابر تهدیدات مطرح در فهرست OWASP Top 10، آسیب‌پذیری‌های نرم‌افزاری و حملات روز صفر (zero-day) محافظت کند—صرف‌نظر از این‌که برنامه‌ها در مرکز داده خصوصی هستند یا بر بستر ابر. این فایروال‌ها، با بهره‌گیری از لایه‌ی ۷ در دفاع در برابر حملات توزیع‌شده انکار سرویس (DDoS)، قابلیت پچ مجازی، و گزارش‌گیری دقیق از حملات، قادرند پیچیده‌ترین تهدیدها را قبل از رسیدن به سرورهای سازمانی شناسایی و خنثی کنند.

فایروال‌های پیشرفته همچنین توانایی شناسایی و متوقف‌سازی مهاجمان را پیش از رسیدن آن‌ها به مرکز داده دارند—مزیتی که می‌تواند بهره‌وری منابع شبکه را به‌شدت افزایش دهد و هزینه‌های پردازش ترافیک مخرب را کاهش دهد.

ویژگی‌های کلیدی در انتخاب فایروال مناسب برای برنامه‌های وب:

بازرسی ترافیک رمزگذاری‌شده (SSL Inspection)

رمزنگاری SSL تقریباً همه‌جا دیده می‌شود؛ از ایمیل و شبکه‌های اجتماعی گرفته تا ویدیوهای استریم‌شده. اما همین ویژگی که امنیت داده‌ها را فراهم می‌کند، در عین حال به یکی از روش‌های پنهان‌سازی بدافزار نیز تبدیل شده است. بسیاری از ابزارهای امنیتی توانایی بررسی ترافیک رمزگذاری‌شده را ندارند، و مهاجمان از همین خلا سوءاستفاده می‌کنند.

یکی از راه‌حل‌های مؤثر، استفاده از معماری SSL Air Gap است که در آن دو کنترلر تحویل برنامه (ADC) در ابتدا و انتهای زنجیره قرار می‌گیرند. ADC اول، ترافیک خروجی را رمزگشایی کرده و به ابزارهای امنیتی می‌فرستد تا بررسی و پالایش انجام شود. سپس ADC دوم ترافیک را دوباره رمزگذاری کرده و به مسیر خود ادامه می‌دهد. این روش، هم امنیت را حفظ می‌کند و هم به ابزارهای امنیتی اجازه می‌دهد وظیفه‌ی خود را به‌درستی انجام دهند.

محافظت در برابر حملات DDoS

با توجه به این‌که اغلب اپلیکیشن‌ها از طریق اینترنت در دسترس هستند، حملات DDoS می‌توانند منجر به اختلال یا حتی قطع کامل سرویس‌ها شوند. این حملات روز‌به‌روز پیشرفته‌تر و حجیم‌تر می‌شوند، و منابع داخلی سازمان‌ها را با بحران مواجه می‌کنند.

برای جلوگیری از چنین سناریوهایی، لازم است راهکارهای چندلایه‌ی دفاعی از لایه‌ی ۳ تا لایه‌ی ۷ در نظر گرفته شوند—راهکارهایی که بتوانند حملات را در همان فضای ابری متوقف کرده و مانع رسیدن آن‌ها به شبکه و مرکز داده شوند.

DDOS ATTACK

امنیت DNS

DNS یکی از حیاتی‌ترین و در عین حال آسیب‌پذیرترین اجزای زیرساخت سازمانی است. حملاتی مانند سیلاب پرس‌وجوهای تقویتی (DNS amplification)، حملات دیکشنری، و مسموم‌سازی DNS از جمله تهدیداتی هستند که ممکن است دسترسی به خدمات کلیدی را مختل کنند.

راهکارهای امنیتی مدرن در این حوزه، با مدیریت هوشمند ترافیک جهانی، شناسایی IPهای مخرب، و یکپارچگی با ارائه‌دهندگان ثالث، می‌توانند عملکرد بالا و مقیاس‌پذیری سریع را فراهم کنند—ویژگی‌هایی که برای مقابله با حملات حجیم DDoS ضروری هستند.

تشخیص تقلب‌های وب

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

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

کنترل دسترسی

بسیاری از نفوذهای مخرب از طریق دسترسی غیرمجاز به اطلاعات یا حساب‌های کاربری صورت می‌گیرند. احراز هویت چندمرحله‌ای، ورود یکپارچه (SSO)، و تفویض دسترسی تنها به افراد مجاز از جمله ابزارهایی هستند که می‌توانند از این رخنه‌ها جلوگیری کنند.

با یکپارچه‌سازی سیستم‌های احراز هویت در سطح سازمان، می‌توان دسترسی ایمن به برنامه‌ها—چه در فضای ابری و چه به‌صورت SaaS—را تضمین کرد.

نتیجه‌گیری: آینده‌ی حفاظت از اپلیکیشن‌ها

حفاظت از اپلیکیشن‌ها پیچیدگی‌های زیادی دارد و با رشد قابل توجه اینترنت اشیاء و اپلیکیشن‌هایی که پابه‌پای آنها حرکت می‌کنند، این مسائل و مشکلات نیز در حال افزایش هستند. در سال 2010، دویست میلیون وب‌اپلیکیشن وجود داشت. اما امروزه، نزدیک به یک میلیارد وب اپلیکیشن وجود دارد. در سال 2020، این تعداد به راحتی به 5 میلیارد می‌رسد. تمامی این اپلیکیشن‌ها در معرض آسیب‌پذیری هستند و بسیاری از آنها، حاوی داده‌های مهمی هستند که می‌توانند هدف مهاجمان قرار بگیرند.

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

اکنون زمان آن فرا رسیده است که نگاه و رویکرد خود به امنیت اپلیکیشن‌ها را گسترش دهیم تا سازمان‌ها در موقعیت بهتری برای ایمن‌سازی تمامی اجزای تشکیل‌دهنده‌ی اپلیکیشن‌های حیاتی و مهم قرار بگیرند، داده‌های آنها را ایمن نگه دارند و از کسب‌وکار آنها محافظت کنند.