پروژه امنیتی برنامه وب باز (OWASP) چیست؟

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

OWASP یک بنیاد غیرانتفاعی است که راهنمایی هایی را در مورد چگونگی توسعه، خرید و نگهداری نرم افزارهای قابل اعتماد و ایمن ارائه می دهد. OWASP به خاطر لیست محبوب 10 آسیب‌پذیری امنیتی برنامه‌های کاربردی وب معروف است.

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

OWASP به دنبال آموزش توسعه دهندگان وب ، طراحان وب، معماران اینترنت و صاحبان مشاغل در مورد خطرات مرتبط با رایج ترین آسیب پذیری های امنیتی برنامه های وب است. OWASP از محصولات امنیتی منبع باز و تجاری پشتیبانی می کند.

OWASP Top 10 به طور گسترده توسط سازمان ها به عنوان یک دستورالعمل برای شناسایی و رسیدگی به تهدیدات AppSec استفاده می شود.

OWASP Top 10  به طور منظم به روز شده و بر روی 10 خطر مهم تمرکز دارد.OWASP Top 10  نگرانی ها برای امنیت برنامه های وب را ترسیم می کند . این گزارش توسط تیمی از کارشناسان امنیتی از سراسر جهان تهیه شده است. همینطور OWASP از 10 خطر برتر به عنوان سند آگاهی یاد می کند.

توضیحات ریسک
APIها تمایل دارند نقاط پایانی را که هویت شی دیجیتال را مدیریت می‌کنند، نشان دهند . که منجر به ایجاد سطح حمله گسترده‌ای از مسائل کنترل دسترسی در اشیاء دیجیتال می شود. بنابراین بررسی مجوز سطح شیء باید در در هر تابعی که با استفاده از شناسه کاربر به منبع داده دسترسی دارد، در نظر گرفته شود. API1:2023 – Broken Object Level Authorization
مکانیسم‌های احراز هویت اغلب به اشتباه پیاده‌سازی می‌شوند و به مهاجمان این امکان را می‌دهند تا توکن های احراز هویت را به خطر بیاندازند یا از نقص های پیاده‌سازی برای در نظر گرفتن هویت سایر کاربران به طور موقت یا دائمی سوء استفاده کنند. عدم توانایی سیستم برای شناسایی کلاینت، به طور کلی امنیت API را به خطر می اندازد. API2:2023 – Broken Authentication
این دسته API3:2019 Excessive Data Exposure و API6:2019 – Mass Assignment را با تمرکز بر علت اصلی ترکیب می‌کند: فقدان یا اعتبارسنجی نامناسب مجوز در سطح ویژگی شی ، منجر به افشای اطلاعات یا دستکاری توسط اشخاص غیرمجاز می شود. API3:2023 – Broken Object Property Level Authorization

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

API4:2023 – Unrestricted Resource Consumption

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

API5:2023 – Broken Function Level Authorization

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

API6:2023 – Unrestricted Access to Sensitive Business Flows

نقص‌های جعل درخواست سمت سرور (SSRF) زمانی رخ می‌دهد که یک API در حال واکشی یک منبع راه دور بدون اعتبارسنجی URI ارائه‌شده توسط کاربر است. بدین ترتیب مهاجم می تواند از طریق اپلیکیشن یک درخواست جعلی را به مقصدی غیرمنتظره ارسال کند، حتی زمانی که توسط فایروال یا VPN محافظت می‌شود.

API7:2023 – Server Side Request Forgery

APIها و سیستم‌هایی که از آن‌ها پشتیبانی می‌کنند معمولاً دارای پیکربندی‌های پیچیده‌ ، در جهت شخصی‌سازی بیشتر APIها هستند. مهندسان نرم‌افزار و DevOps می‌توانند این پیکربندی‌ها را از دست بدهند، یا از بهترین شیوه‌های امنیتی در مورد پیکربندی پیروی نکنند و در را برای انواع مختلف حملات باز کنند.

API8:2023 – Security Misconfiguration

API ها تمایل دارند نقاط پایانی بیشتری را در معرض دید قرار دهند و اسناد مناسب و به روز شده را بسیار مهم کنند. فهرست نسبتا کاملی از میزبان‌ها و نسخه‌های API مستقر نیز برای کاهش مشکلاتی مانند نسخه‌های API منسوخ شده و اشکال‌زدایی نقاط پایانی در معرض خطر  هستند.

API9:2023 – Improper Inventory Management

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

API10:2023 – Unsafe Consumption of APIs