ویژگیهای امنیتی مبتنی بر OWASP Top 10
کنترل دسترسی معیوب (Broken Access Control - A01)
دارای مکانیزمهای قوی برای کنترل دسترسی
ملزومات امنیتی:
اعمال اصل کمترین اختیار (Least Privilege).
جلوگیری از دسترسی غیرمجاز به منابع (IDOR).
اعتبارسنجی مجوزها در سرور (نه فقط در واسط کاربری).
خروج کاربران پس از عدم فعالیت.
محدود کردن تلاشهای دسترسی.
نقص در رمزنگاری (Cryptographic Failures - A02)
از دادههای حساس در حالت انتقال و ذخیره محافظت کند.
ملزومات امنیتی:
استفاده از پروتکلهای امن (TLS 1.2/1.3) برای همه ارتباطات.
عدم ذخیره رمزهای عبور به صورت متن ساده؛ استفاده از الگوریتمهای هش قوی (bcrypt, Argon2, PBKDF2).
رمزنگاری دادههای حساس (مانند اطلاعات مالی، سلامت) در پایگاه داده.
عدم استفاده از الگوریتمها یا پروتکلهای ضعیف (مثل MD5, SHA1, SSL).
تزریق (Injection - A03)
در برابر حملات تزریقی مصونیت داشته باشد.
ملزومات امنیتی:
استفاده از پرسوهای پارامتریک (Parameterized Queries) یا استفاده از ORM برای پایگاه داده.
اعتبارسنجی، فیلتر و پالایش همه ورودیهای کاربر.
اجرای فرار کردن خروجی (Output Encoding) در سمت کلاینت و سرور.
محدود کردن دسترسی و مجوزهای پایگاه داده.
طراحی ناامن (Insecure Design - A04)
ذاتا در معماری و طراحی سیستم مسائل امنیتی لحاظ شده باشد.
ملزومات امنیتی:
ایمنسازی از مرحله طراحی (Shift-Left Security).
استفاده از الگوهای طراحی امن (Security Patterns).
انجام ارزیابی تهدیدات مدلینگ در مراحل اولیه.
تعریف و استفاده از کنترلهای امنیتی یکپارچه.
پیکربندی نادرست امنیتی (Security Misconfiguration - A05)
دارای پیکربندی امن برای همه اجزای نرمافزار باشد
ملزومات امنیتی:
حذف ویژگیها، سرویسها و حسابهای پیشفرض غیرضروری.
غیرفعال کردن صفحات خطا و اطلاعات نسخهبندی.
پیکربندی امن سرورها، پایگاههای داده، فایروالها و چارچوبها.
استفاده از فرآیندهای استقرار یکپارچه و ایمن (CI/CD).
اجزای آسیبپذیر و منسوخ (Vulnerable and Outdated Components - A06)
مدیریت مستمر در بررسی وابستگیهای نرمافزاری
ملزومات امنیتی:
داشتن فهرست بهروز از کلیه کامپوننتها (BOM).
نظارت و بهروزرسانی منظم کتابخانهها و فریمورکها.
حذف کامپوننتهای غیرضروری، غیرپشتیبانیشده یا ناامن.
استفاده از ابزارهای تحلیل ترکیبی نرمافزار (SCA).
شکست در احراز هویت و مدیریت نشست (Identification and Authentication Failures - A07)
دارای مکانیزمهای قوی برای شناسایی و احراز هویت کاربران
ملزومات امنیتی:
پیادهسازی احراز هویت چندعاملی (MFA).
مقاومت در برابر حملات بروتفورس و لیستهای رمز عبور.
استفاده از رمزهای عبور قوی و مدیریت نشست ایمن.
عدم افشای اطلاعات کاربری در پیامهای خطا.
نقص در یکپارچگی داده و نرمافزار (Software and Data Integrity Failures - A08)
بتواند تضمین کند کد ها و دادهها در طول چرخه حیات یکپارچگی داشته باشند و بدون مجوز تغییر نکنند
ملزومات امنیتی:
اعتبارسنجی امضای دیجیتال بروزرسانیها و کتابخانهها.
استفاده از مجرمانهسازی CI/CD.
محافظت در برابر حملات زنجیره تأمین.
اعتبارسنجی یکپارچگی دادههای سریالشده.
شکست در نظارت بر لاگینگ (Security Logging and Monitoring Failures - A09)
لاگ کامل برای همه عملیات و امکان تشخیص، بررسی و پاسخ به حوادث امنیتی.
ملزومات امنیتی:
ثبت لاگهای کامل، یکپارچه و ایمن از فعالیتها (لاگین، دسترسی، خطاها).
اطمینان از وجود برچسب زمانی و عدم دستکاری لاگها.
پیادهسازی سیستم نظارت و هشدار برای شناسایی رفتارهای مشکوک.
داشتن طرح پاسخ به حوادث.
جعل درخواست سمت سرور (Server-Side Request Forgery - SSRF - A10)
محافظت در برابر حملاتی که سرور را مجبور به ایجاد درخواستهای مخرب میکنند.
ملزومات امنیتی:
اعتبارسنجی و فیلتر کردن تمام URLهای ورودی کاربر.
اجتناب از ارسال پاسخهای خام به کاربر.
جداسازی شبکهای و محدود کردن دسترسی منابع داخلی.
استفاده از لیست سفید (Allowlist) برای DNS و آدرسهای IP.