کنترل شماره هجده از سری کنترل های سازمانی

CIS logo
امنیت برنامه های نرم افزاری

چرا این کنترل حیاتی است؟

حملات اغلب از آسیب پذیری های موجود در نرم افزارهای مبتنی بر وب و سایر برنامه ها منتفع می شوند. آسیب پذیری می تواند به دلایل زیادی از جمله خطاهای کدنویسی، خطاهای منطقی، شرایط ناقص و عدم آزمایش در شرایط غیرمعمول یا غیر منتظره به وجود بیاید. نمونه هایی از خطاهای خاص عبارتند از: بررسی نکردن اندازه داده ورودی کاربر، فیلتر نکردن کارکترهای غیرضروری اما بالقوه مخرب از جریان ورودی داده ها، عدم راه اندازی اولیه و پاک کردن متغیرها؛ مدیریت ضعیف حافظه نیز اجازه می دهد تا نقص در یک قسمت از نرم افزار بر بخش های نامربوط (و بیشتر امنیتی مهم) تأثیر بگذارد. جریانی از اطلاعات عمومی و خصوصی در مورد چنین آسیب پذیری هایی در دسترس مهاجمان و مدافعان قرار دارد و اضافه بر این یک بازار قوی و تنومند هم برای ابزارها و تکنیک هایی وجود دارد که امکان بهره برداری از آسیب پذیری را مهیا می کنند. مهاجمان می توانند با اجرای کدهای مخرب خاص نظیر سرریزهای بافر، حملات تزریق SQL (SQL Injection ) ، XSS ، CSRF و Click Jacking بر روی ماشین های آسیب پذیر، کنترل آنها را به دست آورند.

در یک حمله، بیش از یک میلیون سرور وب مورد نفوذ قرار گرفتند و با استفاده از تزریق SQL، بازدیدكنندگان آن سایت ها به موتورهای آلوده تبدیل شدند. در طی این حمله وب سایت های معتبر و مورداعتماد دولت های ایالتی آمریکا و سازمان های دیگر که توسط مهاجمان دچار آسیب و آلودگی شده بودند برای آلوده کردن صدها هزار مرورگری که به آن وب سایت ها دسترسی داشتند مورد سوءاستفاده قرار گرفتند. بسیاری از آسیب پذیری های برنامه های وب و غیر وب بر همین اساس کشف می شوند.

CIS logo

نکات اصلی


  • شیوه های کدگذاری مطمئن و متناسب با زبان برنامه نویسی و محیط توسعه را مورد استفاده قرار دهید.
  • از ابزارهای تجزیه و تحلیل ایستا و پویا استفاده کنید تا اطمینان حاصل کنید که روش های کدگذاری ایمن برای نرم افزارهای داخلی تولید شده رعایت می شوند.
CIS logo

سامانه های مرتبط برای پیاده سازی این کنترل

CIS logo

صفحه قبل