پرش به محتوای اصلی

دسته

آسیب‌پذیری‌های سایت

معرفی آسیب‌پذیری‌های رایج وب‌سایت و روش‌های شناسایی و کاهش ریسک آن‌ها.

آسیب‌پذیری‌های سایت

Web Cache Deception چیست؟ چگونه اطلاعات کاربران از طریق Cache افشا می‌شود؟

Web Cache Deception زمانی ایجاد می‌شود که Cache یک Response شخصی و داینامیک را به دلیل تفسیر اشتباه URL، به‌عنوان محتوای عمومی ذخیره کند و آن را در اختیار کاربران دیگر قرار دهد. این ضعف معمولاً از اختلاف میان Path Mapping، URL Normalization یا Cache Rule در CDN و Origin Server ناشی می‌شود و می‌تواند اطلاعات حساب، سفارش‌ها یا داده‌های شخصی کاربران را افشا کند.

۴۱ دقیقه مطالعه
آسیب‌پذیری‌های سایت

Web Cache Poisoning چیست؟ بررسی مسموم‌سازی کش سایت و روش‌های جلوگیری

Web Cache Poisoning زمانی رخ می‌دهد که مهاجم بتواند Response دستکاری‌شده‌ای را زیر یک Cache Key عمومی ذخیره کند تا همان محتوا بعداً به کاربران دیگر تحویل داده شود. ریشه این ضعف معمولاً اختلاف میان Inputهایی است که Backend برای تولید Response پردازش می‌کند و Inputهایی که Cache در Cache Key لحاظ می‌کند. شناسایی Unkeyed Inputها، تنظیم صحیح Cache-Control و Vary، محدود کردن Cache صفحات حساس و هماهنگ‌سازی Cache Key با رفتار واقعی Application از مهم‌ترین روش‌های جلوگیری از Web Cache Poisoning هستند.

۴۴ دقیقه مطالعه
آسیب‌پذیری‌های سایت

Open Redirect چیست؟ بررسی آسیب‌پذیری ریدایرکت باز و خطرات آن

Open Redirect یا ریدایرکت باز زمانی ایجاد می‌شود که یک وب‌سایت مقصد انتقال کاربر را از داده قابل‌کنترل Client دریافت کند و بدون اعتبارسنجی کافی به همان مقصد Redirect شود. این ضعف می‌تواند برای Phishing استفاده شود و در بعضی سناریوها به بخشی از زنجیره حملات OAuth یا دور زدن کنترل‌های مبتنی بر Domain تبدیل شود. جلوگیری از دریافت URL Arbitrary، استفاده از Server-Side Mapping، Allowlist دقیق مقصدها و Validation صحیح Scheme و Host از مهم‌ترین روش‌های جلوگیری از Open Redirect هستند.

۳۸ دقیقه مطالعه
آسیب‌پذیری‌های سایت

امنیت OAuth چیست؟ آسیب‌پذیری‌های OAuth 2.0 و روش‌های پیاده‌سازی امن

امنیت OAuth مجموعه کنترل‌هایی است که از فرایند صدور و استفاده از مجوزهای OAuth 2.0 و Tokenهای دسترسی محافظت می‌کند. ضعف در Redirect URI، PKCE، Scope، Audience، State یا مدیریت Access و Refresh Token می‌تواند به سرقت Token، دور زدن Authorization یا دسترسی غیرمجاز به API منجر شود. استفاده از Authorization Code همراه با PKCE، اعتبارسنجی دقیق Redirect و Issuer، محدود کردن Tokenها و محافظت در برابر Replay از مهم‌ترین اصول پیاده‌سازی امن OAuth هستند.

۴۴ دقیقه مطالعه
آسیب‌پذیری‌های سایت

Host Header Injection چیست؟ بررسی حملات HTTP Host Header و روش‌های جلوگیری

Host Header Injection زمانی ایجاد می‌شود که وب‌سایت یا زیرساخت HTTP مقدار Host یا Authority ارسال‌شده توسط Client را بدون اعتبارسنجی کافی قابل اعتماد فرض کند. این ضعف می‌تواند باعث Redirect ناخواسته، Web Cache Poisoning، دستکاری لینک‌های بازیابی رمز عبور یا Routing به Virtual Host اشتباه شود. استفاده از Allowlist دامنه‌ها، رد کردن Hostهای ناشناخته، ساخت URLهای حساس براساس Base URL ثابت و مدیریت صحیح Trusted Proxy و Forwarded Headerها از مهم‌ترین روش‌های جلوگیری از Host Header Injection هستند.

۳۹ دقیقه مطالعه
آسیب‌پذیری‌های سایت

Business Logic Vulnerability چیست؟ بررسی آسیب‌پذیری منطق تجاری در وب‌سایت‌ها

Business Logic Vulnerability زمانی ایجاد می‌شود که وب‌سایت از نظر فنی درست کار کند اما قوانین واقعی کسب‌وکار، ترتیب Workflow یا محدودیت استفاده از قابلیت‌ها را به‌درستی enforce نکند. این ضعف می‌تواند باعث دور زدن مراحل ضروری، استفاده چندباره از مزایا، دستکاری فرایندهای مالی، ایجاد State نامعتبر یا سوءاستفاده گسترده از APIها شود.

۸۲ دقیقه مطالعه
آسیب‌پذیری‌های سایت

Information Disclosure چیست؟ چگونه نشت اطلاعات امنیت سایت را تهدید می‌کند؟

Information Disclosure یا افشای اطلاعات زمانی رخ می‌دهد که داده‌ای در اختیار فرد یا سیستمی قرار گیرد که مجوز مشاهده آن را ندارد. این اطلاعات می‌توانند از Credential و داده کاربران تا Stack Trace، Source Code، Backup، مسیرهای داخلی و تنظیمات سرور متغیر باشند و گاهی زمینه حملات پیچیده‌تر را فراهم کنند.

۴۰ دقیقه مطالعه
آسیب‌پذیری‌های سایت

Insecure Deserialization چیست؟ بررسی ناامن بودن پردازش داده‌های سریال‌شده

Insecure Deserialization یا Deserialization ناامن زمانی رخ می‌دهد که یک برنامه داده سریال‌شده غیرقابل‌اعتماد را بدون بررسی کافی به Object داخلی تبدیل کند. این ضعف می‌تواند باعث دستکاری وضعیت برنامه، دور زدن منطق و کنترل دسترسی، مصرف منابع و در برخی محیط‌ها اجرای کد شود. جلوگیری از Deserialization داده غیرقابل‌اعتماد، استفاده از JSON و DTO، بررسی Integrity با HMAC یا امضا، محدود کردن Typeها و اجرای برنامه با Least Privilege از مهم‌ترین روش‌های مقابله با Insecure Deserialization هستند.

۳۸ دقیقه مطالعه
آسیب‌پذیری‌های سایت

LFI و RFI چیست؟ تفاوت Local File Inclusion و Remote File Inclusion

LFI و RFI دو نوع آسیب‌پذیری File Inclusion هستند که در اثر کنترل ناکافی فایل یا Template مورد استفاده برنامه ایجاد می‌شوند. در LFI یک فایل محلی سرور Include می‌شود، درحالی‌که RFI به وارد کردن Resource از یک محل راه‌دور مربوط است و می‌تواند در شرایط آسیب‌پذیر پیامدهای جدی‌تری ایجاد کند. جلوگیری از Dynamic File Inclusion، استفاده از Allowlist و Mapping ثابت، محدود کردن Permissionها و غیرفعال نگه داشتن Remote Include از مهم‌ترین راهکارهای جلوگیری از LFI و RFI هستند.

۳۶ دقیقه مطالعه