شنبه , ۳۰ تیر ۱۳۹۷

وضعیت آماری امنیت برنامه‌های تحت وب

 

1207

آخرین نسخه گزارش آماری امنیت ‌سایتِ وایت‌هت سکیوریتی، داده‌های آسیب‌پذیری صدها هزار سایت از بیش از 650 سازمان را با داده‌های فعالیت SDLC  (سرنام Software Development LifeCycle)  به‌دست آمده از نظرسنجی، مرتبط ساخته ‌است. تعداد متوسط آسیب‌پذیری‌های جدی هر سایت، در سال 2012 نیز همچنان کاهش داشت و از 79 در 2011 به 56 در 2012 رسید.

به‌طور متوسط 61 درصد از آسیب‌پذیری‌های جدی پیداشده حل شده‌اند و فقط 18 درصد از سایت‌ها برای کمتر از سی روز در سال 2012 آسیب‌پذیر باقی ماندند. به‌طور متوسط، حل این آسیب‌پذیری‌ها از نخستین اخطار 193 روز طول کشیده‌ است.

 

جرِمیا گراسمن یکی از مؤسسان و مدیر ارشد فناوری وایت‌هت سکیوریتی می‌گوید: «امنیت ‌سایت یک هدف به‌طور دائم پویا است و سازمان‌ها باید بهتر درک کنند که چگونه بخش‌های مختلف SDLC روی کشف آسیب‌پذیری‌ها تأثیر می‌گذارند که در را برای رخنه باز می‌گذارد.» یک نگاه نزدیک‌تر این موارد را آشکار می‌کند:
– به استثنای سایت‌ها در بخش انرژی و آی‌تی، همه صنایع آسیب‌پذیری‌های کمتری را در سال 2012 نسبت به سال‌های پیش پیدا کردند.
– صنعت آی‌تی بالاترین رقم آسیب‌پذیری در هر سایت را تجربه کرد که 114 بود.
– سایت‌های دولتی کمترین آسیب‌پذیری‌های پیداشده را تجربه کردند که به‌طور متوسط هشت مورد در هر سایت بود. پس از آن‌ها نیز سایت‌های بانکداری با یازده حمله در هر سایت به‌طور متوسط قرار داشتند.
– سایت‌های سرگرمی و رسانه بالاترین نرخ اصلاح (درصد متوسط حل کردن آسیب‌پذیری‌های جدی) را با 81 درصد داشته‌اند.
– در سال‌های گذشته صنعت بانکداری کم‌ترین آسیب‌پذیری‌ها و بیشترین میزان آسیب‌پذیری‌های حل‌شده را در میان صنایع مختلف دارا بوده ‌است. در سال 2012 صنعت بانکداری مقام دوم را پیدا کرد، به‌طور متوسط یازده حمله در هر سایت و یک نرخ اصلاح زیر متوسط 54 درصدی (نرخ متوسط در میان کل صنایع 61 درصد است).

ده رسته اصلی آسیب‌پذیری
رایج‌ترین رسته‌های آسیب‌پذیری بر‌اساس درصد احتمال کشف حداقل یک مورد در هر سایت، محاسبه شده‌اند. این رویکرد تحریف داده در سایت‌هایی را که خیلی امن هستند یا خطر بالایی دارند، به حداقل می‌رساند. بهترین ممارست‌ها ممکن است بهترین امنیت را در بر نداشته باشد وایت‌هت سکیوریتی در ارتباط میان نتایج نظرخواهی با داده‌های آسیب‌پذیری، می‌تواند نشان دهد که چگونه کنترل‌های امنیت نرم‌افزار یا «بهترین ممارست‌ها» امنیت واقعی سازمان‌ها را تحت تأثیر قرار می‌دهد.
برخی از یافته‌ها عبارتند از:
– 57 درصد از سازمان‌های بررسی‌شده، مقداری کارآموزی امنیت نرم‌افزار مبتنی‌بر کامپیوتر یا مربی برای برنامه‌نویسان خود فراهم کردند. این سازمان‌ها چهل درصد آسیب‌پذیری کمتری را تجربه کرده‌اند و آن‌ها را 59 درصد سریع‌تر حل کرده‌اند، اما نرخ اصلاح آن‌ها 12 درصد کمتر بود.
– 39 درصد از سازمان‌ها اظهار داشته‌اند که روی برنامه‌های پشتیبانی سایت خود مقداری از Static Code Analysis اعمال کرده‌اند. این سایت‌ها شاهد پانزده درصد آسیب‌پذیری بیش‌تر بوده‌اند و 26 درصد آن‌ها را کندتر حل کرده‌اند و نرخ اصلاح آن‌ها نیز 4 درصد پایین‌تر بوده ‌است.
– 55 درصد از سازمان‌ها اعلام کردند که در برخی از سطوح پیاده‌سازی WAF داشته‌اند. این سازمان‌ها یازده درصد آسیب‌پذیری بیشتری داشته‌اند و این آسیب‌پذیری‌ها را هشت درصد کندتر حل کرده‌اند و نرخ اصلاح آن‌ها نیز هفت درصد پایین‌تر بوده  ‌است.
بخشی از این داده‌ها نشان می‌دهد ممارست‌هایی مانند کارآموزی امنیت نرم‌افزار مؤثر هستند، با این حال برخی از آمارها به‌وضوح نشان‌دهنده ممارست‌هایی است که لزوماً به امنیت بهتر منتهی نمی‌شوند.
پاسخ‌گویی و پیروی
در یک حادثه که سازمانی یک نفوذ به سایت یا سیستم را تجربه می‌کند، وایت‌هت سکیوریتی در یافته که 27 درصد اظهار داشته‌اند که می‌توانند روی هیئت مدیره حساب کنند. 24 درصد نیز از گروه توسعه نرم‌افزار، 19 درصد دپارتمان امنیت و 18 درصد از مدیریت اجرایی نام برده‌اند. بنابراین، علاوه‌بر این‌که سازمان‌ها باید کارآموزی امنیت نرم‌افزار برای برنامه‌نویسان خود فراهم کنند، می‌توان دریافت که در یک حادثه نفوذ، گروه توسعه نرم‌افزار بیش از هر گروه دیگری پاسخ‌گو بوده ‌است.
علاوه‌بر این، داده‌های مرتبط نشان داده است که پیروی از پیشنهادها و دستورها محرک اصلی سازمان‌ها برای حل آسیب‌پذیری‌ها بوده است، اما همچنین این موضوع می‌تواند علت اصلی حل نکردن آسیب‌پذیری‌ها توسط سازمان‌ها باشد. به بیان دیگر، اگر بخش مربوطه که از آن پیروی می‌شود [مثلاً توسعه نرم‌افزار] برای حل آسیب‌پذیری اعلام نیاز کند، آسیب‌پذیری حل می‌شود و اگر این اعلام نیاز انجام نشود، حتی با وجود نشانه‌های احتمالی از وضعیت امنیت کلی سایت، آسیب‌پذیری باقی می‌ماند.
گراسمن می‌گوید: «مجموعه داده‌های گردآوری‌شده نشان می‌دهد که بسیاری از سازمان‌ها هنوز متوجه این مسئله نیستند که باید به‌طور کنش‌گرایانه‌ای پیش‌دستی کنند و کاری درباره امنیت نرم‌افزار انجام دهند. ظاهراً این سازمان‌ها رویکرد “صبر کردن تا این‌که اتفاقی بدی رخ دهد” را در پیش گرفته‌اند و فقط پس از رخ دادن اتفاق کاری می‌کنند، مگر این‌که احساس مسئولیت وجود داشته باشد.»
او در ادامه می‌گوید: «این اوضاع باید تغییر کند و ما باور داریم، فرصتی مهیا شده برای نسل جدیدی از راهبران امنیتی برای این‌که خود را نشان دهند و تفاوت خود را با درکی از کسب‌وکار حقیقی و چالش‌های امنیتی نمایان کنند. امید ما این است آن‌ها مشکلاتی را که ما شناسایی کرده‌ایم در یابند و پایه و اساس تصمیم‌های خود را بر‌اساس داده بگذارند تا وضعیت امنیت وب در طول زمان بهبود یابد.»

ده خطر اصلی برنامه‌های تحت وب بر‌اساس فهرست OWASP
از سال 2003 پژوهشگران و متخصصان امنیت از جای‌جای دنیا در OWASP (سرنام Open Web Application Security Project) با دقت وضعیت امنیتی وب را تحت نظر دارند. آن‌ها به‌طور مرتب یک سند آگاهی منتشر می‌کنند که به‌عنوان یک سند مهم توسط سازمان‌های مختلی در دنیا از جمله PCI Council ،US DoD ،FTC و نهادهای بی‌شمار دیگری مورد استناد قرار می‌گیرد. OWASP فهرست ده خطر اصلی مربوط به استفاده از برنامه تحت در یک سازمان در سال 2013 را منتشر کرده ‌است. در ادامه توضیح این خطرها را مشاهده می‌کنید (شکل1).

ده خطر اصلی برنامه‌های تحت وب

– تزریق (Injection): نفوذهای تزریق همچون SQL، سیستم‌عامل و LDAP وقتی اتفاق می‌افتند که داده غیرقابل اعتماد به‌عنوان بخشی از یک فرمان یا کوئری به مترجم ارسال می‌شود. داده مهاجم می‌تواند مترجم را گول بزند تا فرمان‌های ناخواسته را اجرا کند یا دسترسی بدون اجازه را به داده‌ها فراهم کند.
– تصدیق خراب و مدیریت نشست: توابع برنامه‌ها مربوط به تصدیق و مدیریت نشست اغلب به‌شکل صحیح به اجرا در نمی‌آیند و به مهاجم اجازه کشف رمزهای عبور، کلیدها یا توکن‌ها را می‌دهد.
– (Cross-Site Scripting)م XSS : نفوذهای XSS وقتی اتفاق می‌افتند یک برنامه داده غیرقابل اعتماد را بدون تأیید مناسب برای مرورگر ارسال می‌کند. XSS به مهاجمان اجازه می‌دهد به اجرای اسکریپت در مرورگر قربانی بپردازند که موجب دزدیده شدن نشست‌های آن‌ها، خرابکاری در ‌سایت یا راندن کاربر به سایت‌های آلوده به بدافزار می‌شود.
– مراجع شئ مستقیم ناامن: یک مرجع شئ مستقیم زمانی اتفاق می‌افتد که توسعه‌دهنده یک مرجع را در معرض دسترسی یک شئ داخلی مانند یک فایل، دایرکتوری یا کلید پایگاه داده می‌گذارد. در صورت چک نکردن دسترسی یا وجود نداشتن محافظت دیگری، مهاجمان می‌توانند این مراجع را دستکاری کنند تا بدون مجوز به داده‌ها دسترسی پیدا کنند.


– پیکربندی نادرست امنیت: امنیت خوب نیازمند یک پیکربندی امن است که مخصوص برنامه، فریم‌ورک‌ها، سرور اپلیکیشن، سرور وب، سرور پایگاه داده و پلتفرم تعریف و پیاده‌سازی شده‌باشد. تنظیمات امن باید به‌خوبی تعریف، اجرا و نگه‌داری شود، زیرا تنظیمات پیش‌فرض اغلب ناامن هستند. علاوه‌بر این، نرم‌افزار باید همواره به‌روز نگه‌داری شود.
– افشای داده‌های حساس: بسیاری از برنامه‌های تحت وب از داده‌های حساس به‌خوبی محافظت نمی‌کنند. مهاجمان می‌توانند با سوءاستفاده یا دزدی این داده‌ها به سوءاستفاده از کارت اعتباری، سرقت هویت یا کارهای مخرب دیگری دست بزنند. داده‌های حساس نیازمند محافظت اضافه به هنگام حفظ یا انتقال هستند و همچنین در زمان وارد کردن این اطلاعات در مرورگر باید احتیاط زیادی را مراعات کرد.
– کنترل دسترسی سطح تابع: بسیاری از برنامه‌های تحت وب حقوق دسترسی سطح تابع را قبل از نمایان کردن در UI بازبینی می‌کنند. در هر صورت، برنامه‌ها نیازمند همان بازبینی کنترل دسترسی در سرور نیز هستند. اگر درخواست‌ها بازبینی نشوند، مهاجمان خواهند توانست بدون تصدیق مناسب درخواست‌ها را جعل کرده به عاملیت دسترسی یابند.
– جعل درخواست Cross-Site (م CSRF): یک حمله CSRF مرورگر یک کاربر لاگین‌شده را وادار می‌کند یک درخواست HTTP جعل‌شده را برای یک برنامه تحت وب آسیب‌پذیر ارسال کند که شامل کوکی‌های کاربر و هر اطلاعات دیگری که تعیین شده باشد نیز می‌شود. این به مهاجم اجازه می‌دهد مرورگر قربانی را مجبور کند درخواست‌هایی تولید کند که برنامه آسیب‌پذیر آن‌ها را درخواست‌هایی واقعی و صحیح از سوی قربانی به شمار می‌آورد.
– استفاده از کامپوننت‌هایی با آسیب‌پذیری‌های شناخته‌شده: کامپوننت‌ها، از جمله کتابخانه‌ها، فریم‌ورک‌ها و دیگر ماجول‌های نرم‌افزاری تقریباً همیشه با مزایای کامل اجرا می‌شوند. اگر یک کامپوننت آسیب‌پذیر مورد سوءاستفاده قرار گیرد، چنین حمله‌ای می‌تواند منجر به از دست دادن داده‌های مهم یا قبضه کامل سرور شود. برنامه‌هایی که از کامپوننت‌هایی با آسیب‌پذیری‌های مشخص استفاده می‌کنند، می‌توانند مکانیسم‌های دفاعی را بی‌اثر و مجموعه‌ای از حمله‌ها را امکان‌پذیر کنند.
– Redirect و Forward نامعتبر: برنامه‌های تحت وب بارها کاربران را به صفحات دیگر راهبری می‌کنند و برای تشخیص صفحات مقصد از داده‌های غیرقابل اعتماد استفاده می‌کنند. بدون تعیین اعتبار مناسب، مهاجمان می‌توانند قربانی را به سایت‌های فیشینگ یا آلوده به بدافزار راهنمایی کنند یا از فورواردها برای دسترسی بدون اجازه به صفحات خاص استفاده کنند.

منبع : ماهنامه شبکه

Print Friendly, PDF & Email

جوابی بنویسید

ایمیل شما نشر نخواهد شدخانه های ضروری نشانه گذاری شده است. *

*