جزئیات مقاله
مشکلات امنیتی سایت
6123
0

مشکلات امنیتی سایت

  • شنبه 5 تیر 1395
  • ()
  • 12رأی

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

SQL Injection

یکی ازمهم ترین مشکلات امنیتی سایت آسیب پذیری SQLInjection می باشد.بدلیل این که امکان دسترسی به پایگاه داده سایت را به نفوذ کننده می دهد.

این آسیب پذیری در مواقعی اتفاق می افتد که به صورت مستقیم از query های SQL استفاده می شود و قسمتی ازquery بدون فیلتر شدن از کار برگرفته می شود.برای مثال برای یافتن پست در خواستی کاربر با این آدرس:

http://example.com/Posts.php?post_id=5

ازquery زیر استفاده شود:

SELECT * FROM Posts WHERE id={post_id}

در اینصورت کاربر می تواند با وارد کردن آدرس زیر تمام پست های شما را حذف کند.

http://example.com/Posts.php?post_id=5;DROP TABLE Posts;

البته این نوع مشکل می تواند دسترسی به تمام پایگاه داده را برای فرد مخرب فراهم کند.

برای جلوگیری از بروز این مشکل بهترین راه استفاده از prepared statement می باشد.

CSRF(Cross-Site Request Forgery)

این آسیب پذیری با فریب کاربر وارد شده به سایت می تواند باعث انجام تغییراتی در سایت بشود.برای مثال کاربر ادمین با وارد کردن آدرس زیر می تواند پستی را حذف کند:

http://example.com/Admin/DeletePost.php?post_id=5

حال اگرفرد مخرب کاربر ادمین را فریب دهد تا روی لینکی با آدرس بالا کلیک کند بدون متوجه شدن کاربر ادمین می تواند پستی را حذف کند.

برای جلوگیری از این مشکل می توان به ازای هر درخواست referrer آن را برسی کرد و اگر referer از سایت دیگری بود اجازه انجام عملیات داده نشود.

همچنین می توان از شناسه مشخص برای هر نشست کاربر استفاده کرد.برای مثال برای حذف پست لینک  زیر تولید شود:

http://example.com/Admin/DeletePost.php?post_id=5&token=UNIQUEID(e.g.:11222a0756cc9ff760155f9f28b61e0a)

XSS(Cross-site-scripting)

این آسیب پذیری در مواقعی که ورودی کاربر در قسمتی از سایت نمایش داده می شود به وجود می آید.

برای مثال در قسمت نظرات سایت متنی وارد شده ونمایش داده می شود در این صورت اگر ورودی فیلتر نشود کاربر می تواند با وارد کردن اسکریپت خاص عمل کرد سایت را مختل کند.

خطرناک ترین حالت این باگ برای بدست آوردن sessionid افراد است. به این طریق که مخرب از طریق اسکریپت cookie های افراد را خوانده و می تواند خود را به جای آنها جا بزند.

برای جلوگیری از این آسیب پذیری باید کد های html ورودی کاربر را فیلتر کرده و درهنگام نمایش حتی المقدور از نمایش غیر html اطلاعات استفاده کنید.

همچنین در هنگام ایجاد cookie ها باید دسترسی script ها را قطع کرد غیر از مواردی که اطلاعات ارزش سروری ندارند و فقط در نمایش سایت تاثیر دارند و باید اسکریپت به انها دسترسی داشته باشد.

DDOS

این حملات به این صورت انجام می شوند که تعداد زیادی درخواست به صورت همزمان به سرور فرستاده می شوند و مشکلاتی را برای آن ایجاد می کنند تا در نهایت سایت از دسترس خارج شود.

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

برای کاهش آسیب این حملات باید درخواست های کاربر را کنترل کرد تا از حد معمول بیشتر نشود.

همچنین بخش هایی از سایت که استفاده زیادی ازمنابع می کنند باید با کد capcha محافظت شوند.

برای مثال بخش ثبت نام سایت علاوه بر استفاده از منابع باعث به وجود آمدن تعداد زیادی سطر در پایگاه داده می شود که باعث کندی سایت و زود تر از دسترس خارج شدن آن می شود.

این بخش ها را حتماً با capcha محافظت کنید(پیشنهاد ما استفاده از recapcha است)

Cracking

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

LFD

این مشکل به این صورت است که در برخی از سایت ها اسکریپتی برای دانلود فایل ها قرار داده می شود(به منظورش شمارش دانلود و اعتبار سنجی یا ...).اگر در این اسکریپت ها فیلتری برای فایل ها قرار داده نشود کاربر می تواند با درخواست دانلود فایل های حیاتی سایت به اطلاعات آن دسترسی پیدا کند.

برای مثال فایلی درون سرور قرار داده شده که اطلاعات پایگاه داده درون آن ذخیره شده است و اسکریپت دانلود فایل نیز به صورت زیر عمل می کند.

http://example.com/download.php?file=musics/music.mp3

کاربر می تواند با وارد کردن ادرس زیر فایل حاوی اطلاعات پایگاه داده شما را دانلود کند.

http://example.com/download.php?file=db_config.php

بخش های تغییر مسیر(redirect) سایت

این بخش ها برای لینک هایی که به خارج از سایت می شوند استفاده می گردند.اگر این بخش ها بدون کنترل کار کنند می توانند زمینه برای افراد نفوذ گر فراهم آورند.

برای مثال فرد نفوذگر صفحه ای تقلبی (fakepage) از صفحه ورود به سایت شما درست می کند. همچنین در سایت بخش تغییر مسیر کنترل نشده ای وجود دارد.

نفوذ گر می تواند با استفاده از این تغییر مسیر دهنده لینک صفحه جعلی خود را بگونه ای طراحی کند تا کاربران سایت را فریب دهد برای مثال:

http://example.com/goto.php?http://afakepage.com

کاربر بادیدن نام سایت شما در آدرس به آن اعتماد کرده و به صفحه طراحی شده نفوذ گر وارد می شود و با وارد کردن اطلاعات باعث ایجاد دسترسی به حسابش در سایت شما توسط نفوذگر می شود.

اسفاده از ابزار هایی با مشکل شناخته شده و عدم بروزرسانی آنها

استفاده از ابزار هایی که مشکلات امنیتی شناخنه شده دارند می توانند به نفوذ گر کمک زیادی در نفوذ به سایت بکنند.زیرا راه نفوذ به این ابزار ها از قبل مشخص شده و نفوذ گر می تواند به راحتی به سایت نفوذ کند.(اغلب نفوذ های انجام شده به مدیریت محتوا های آماده نظیر وردپرس به این دلیل اند)

فعال بودن directory listing

فعال بودن نمایش محتوای پوشه های سایت می تواند به نفوذگر در یافتن فایل های آسیب پذیر کمک کند برای جلوگیری از این مشکل در قسمت تنظیمات میزبان سایت directory listing را غیر فعال کنید.

درهم کردن (hash) اطلاعات مهم سایت

این کار به این منظور انجام می گیرد که اگر اطلاعات سایت به دست نفوذ گر نیز افتاد نتواند از آنها استفاده کند و با اطلاعاتی نامفهوم مواجه بشود.

برای این کار باید اطلاعات مهم سایت توسط الگوریتم های مناسب نظیر sha یا md5 به صورت hash شده در آیند.

در صورت لزوم به بازگشت این اطلاعات میتوانید با یک کلید امن اطلاعات خود را کد (encrypt) کنید تا در موقع نیاز آنها را باز گردانی کنید.

حرف آخر

امن سازی وبسایت و از بین بردن مشکلات امنیتی سایت می تواند از هک شدن سایت و افشای اطلاعات شخصی آنها جلوگیری کند و خطر از بین رفتن سرمایه را به حد اقل برساند

باتشکر از توجه شما

 

 

این مطلب را با دوستانتان به اشتراک بگذارید:
دیدگاه کاربران
تاکنون دیدگاهی ثبت نشده است
گروه مقالات
مقالات مرتبط
ارسال دیدگاه