انواع آسیب پذیری های تحت وب
آسیب پذیریهای تحت وب یکی از مهمترین مسائل امنیتی مرتبط با فضای آنلاین است که میتواند به سرقت اطلاعات حساس، دسترسی غیرمجاز و حتی آسیبهای جدی برای سایتها و کاربران منجر شود. در این مقاله، به بررسی انواع آسیب پذیریهای تحت وب مانند تزریق، اسکریپتنویسی عبور از مرز، ناامنی در ذخیره سازی و موارد دیگر میپردازیم و راهکارهایی برای جلوگیری و مقابله با این نقاط ضعف را مورد بررسی قرار میدهیم. اهمیت شناسایی و رفع این آسیب پذیریها برای حفظ امنیت دادهها و اطلاعات به عنوان یک پیشنیاز اساسی در دنیای دیجیتال از اهمیت بالایی برخوردار است.
در اینجا لیست تعدادی از مهم ترین آسیب پذیری های تحت وب را داریم:
- Injection Vulnerabilities (SQL injection, command injection)
- Cross-Site Scripting (XSS)
- Cross-Site Request Forgery (CSRF)
- Insecure Direct Object References
- Security Misconfigurations
- Broken Authentication and Session Management
- Insecure Cryptographic Storage
- Improper Input Validation
- Insufficient Transport Layer Protection
- Security Bypass (such as URL manipulation or business logic bypass)
- فهرست ۱۰۰ آسیب پذیری تحت وب
۱. آسیب پذیریهای تزریق (SQL injection, command injection)
آسیب پذیریهای تزریق میتواند یکی از خطرناکترین نقاط ضعف در امنیت وب سایتها باشد. در این نوع حملات، افراد مهاجم با وارد کردن عبارتهای آسیبزا به command یا پرسوجوی SQL، قادرند اطلاعات حساس و حتی کنترل سایت را در اختیار بگیرند. در این مقاله، به بررسی عملکرد این دو نوع آسیب پذیری و اهمیت شناسایی و رفع آنها برای حفظ امنیت سایتها خواهیم پرداخت.
نمونه کد PHP آسیب پذیر به SQLi
این کد بدون فیلتر کردن ورودی کاربر، مستقیماً از آن در کوئری SQL استفاده میکند. این میتواند به مهاجم اجازه دهد تا کوئریهای SQL مخرب را اجرا کند.
۲. اسکریپتنویسی (Cross-Site Scripting – XSS)
اسکریپتنویسی یکی از شایعترین و خطرناکترین آسیبپذیریهای تحت وب است. در این نوع حمله، مهاجم کدهای جاوااسکریپت مخرب را به یک وبسایت قابل اعتماد تزریق میکند. این کدهای مخرب میتوانند در مرورگر کاربر اجرا شوند و به دادههای حساس مانند کوکیها، اطلاعات نشست و دیگر اطلاعات شخصی دسترسی پیدا کنند. برای جلوگیری از این حملات، وبسایتها باید تمام ورودیهای کاربر را به درستی اعتبارسنجی و کدگذاری کنند.
نمونه کد PHP آسیب پذیر به XSS
این کد ورودی کاربر را بدون هیچگونه فیلتر یا کدگذاری در صفحه وب نمایش میدهد، که میتواند منجر به اجرای کدهای جاوااسکریپت مخرب شود.
۳. جعل درخواست (Cross-Site Request Forgery – CSRF)
در حملات CSRF، مهاجم کاربر را ترغیب میکند تا یک درخواست جعلی را به وبسایت معتبر ارسال کند. این درخواست میتواند عملیاتهای ناخواستهای مانند تغییر تنظیمات کاربر یا انتقال پول را انجام دهد. برای مقابله با CSRF، از توکنهای CSRF استفاده میشود که به هر درخواست مشروع اضافه میشوند و سرور اعتبار آنها را بررسی میکند.
نمونه کد PHP آسیب پذیر به CSRF
این کد از هیچ توکن CSRF برای محافظت از درخواستها استفاده نمیکند، که میتواند به مهاجم اجازه دهد تا کاربر را به اجرای درخواستهای مخرب ترغیب کند.
۴. ارجاع مستقیم ناامن (Insecure Direct Object References – IDOR)
این آسیبپذیری زمانی رخ میدهد که یک برنامه وب به اشیای داخلی بهطور مستقیم از طریق ورودیهای کاربر دسترسی دارد، بدون اینکه دسترسی مناسب را بررسی کند. مهاجمان میتوانند این آسیبپذیری را بهرهبرداری کنند تا به دادههای دیگر کاربران دسترسی پیدا کنند. برای جلوگیری از IDOR، باید دسترسیهای مناسب و اعتبارسنجیها را اعمال کرد.
نمونه کد PHP آسیب پذیر به IDOR
این کد بدون بررسی مجوز دسترسی، اطلاعات کاربر را بازیابی میکند. مهاجم میتواند با تغییر ID در URL، به دادههای دیگر کاربران دسترسی پیدا کند.
۵. پیکربندیهای امنیتی نادرست (Security Misconfigurations)
پیکربندیهای نادرست میتواند منجر به افشای اطلاعات حساس، دسترسی غیرمجاز و دیگر مشکلات امنیتی شود. این شامل تنظیمات نادرست سرورها، دیتابیسها و دیگر اجزای سیستم است. برای پیشگیری، باید پیکربندیهای امنیتی را بهدرستی تنظیم و بهروزرسانی کرد و از ابزارهای اسکن امنیتی استفاده نمود.
نمونه کد PHP آسیب پذیر به پیکربندی نادرست
این کد تنظیمات نادرست گزارش خطا را دارد که میتواند اطلاعات حساس سیستم را فاش کند. همچنین، فایلهای حساس را بهطور ناامن شامل میکند.
۶. احراز هویت و مدیریت نشست شکسته (Broken Authentication and Session Management)
در این نوع آسیبپذیری، مهاجمان میتوانند با استفاده از نقاط ضعف در فرآیندهای احراز هویت و مدیریت نشست، به حسابهای کاربری دسترسی پیدا کنند. برای مقابله، استفاده از رمزهای قوی، پیادهسازی روشهای احراز هویت چندمرحلهای و مدیریت صحیح نشستها ضروری است.
نمونه کد PHP آسیب پذیر به احراز هویت و نشست
این کد از رمزهای عبور ساده و بدون هش استفاده میکند و در برابر حملات جستجوی فراگیر (brute force) و سرقت نشست آسیبپذیر است.
۷. ذخیرهسازی رمزنگاری شده ناامن (Insecure Cryptographic Storage)
ذخیرهسازی ناامن اطلاعات حساس بدون استفاده از تکنیکهای رمزنگاری قوی میتواند منجر به سرقت دادهها شود. برای جلوگیری از این مشکل، باید از الگوریتمهای رمزنگاری قوی و کلیدهای امنیتی مناسب استفاده کرد.
نمونه کد PHP آسیب پذیر به ذخیره سازی ناامن
این کد رمز عبور کاربر را بهصورت متنی ساده ذخیره میکند که میتواند به راحتی توسط مهاجم به سرقت رود.
۸. اعتبارسنجی ورودیهای نادرست (Improper Input Validation)
عدم اعتبارسنجی صحیح ورودیهای کاربر میتواند به آسیبپذیریهایی مانند XSS و SQL Injection منجر شود. بنابراین، باید تمامی ورودیهای کاربر را به دقت اعتبارسنجی و پاکسازی کرد.
نمونه کد PHP آسیب پذیر به اعتبارسنجی ورودی ها
این کد ورودی کاربر را بدون اعتبارسنجی صحیح دریافت میکند که میتواند منجر به سوءاستفاده و حملات مختلفی شود.
۹. محافظت ناکافی از لایه انتقال (Insufficient Transport Layer Protection)
استفاده از پروتکلهای ناامن برای انتقال دادهها میتواند منجر به رهگیری و دستکاری اطلاعات شود. برای جلوگیری، باید از پروتکلهای امن مانند HTTPS استفاده کرد.
نمونه کد PHP آسیب پذیر به انتقال داده ها به صورت ناامن
این کد اطلاعات حساس را بدون استفاده از پروتکلهای امنیتی مانند HTTPS انتقال میدهد که میتواند منجر به رهگیری اطلاعات شود.
۱۰. عبور از امنیت (Security Bypass)
این آسیبپذیریها شامل روشهایی مانند دستکاری URL، تغییر منطق تجاری و بهرهبرداری از نقاط ضعف امنیتی در برنامههای وب است. برای مقابله با این نوع حملات، باید تمامی جنبههای امنیتی برنامه را بهطور کامل بررسی و تست کرد.
نمونه کد PHP آسیب پذیر
این کد بررسی مناسبی برای تشخیص کاربر مدیر ندارد و مهاجم میتواند با دستکاری URL به سطح دسترسی مدیر دست پیدا کند.
فهرست ۱۰۰ آسیب پذیری تحت وب
در اینجا انواع آسیب پذیری های تحت وب را داریم که برای شما عزیزان لیست شده است، متأسفانه به دلیل حجم بالای اطلاعات این امکان وجود نداشت که به تمام این آسیب پذیری ها داخل این مقاله بپردازیم، با این حال این لیست در اختیار شما قرار دارد که می توانید از طریق آن داخل اینترنت جستجو های بیشتری انجام بدهید.
آیا این مطلب برای شما مفید بود ؟
![بنر تبلیغاتی ج](https://www.bubbleslearn.ir/wp-content/uploads/2024/01/banner-c.jpg)