illustrator Curse
  • 7Learn Android Course
  • 7Learn SEO Course
  • 7Learn WP Theme Course

    حرفه ای ترین دوره آموزش طراحی قالب وردپرس



  آیا می دانید با دوره های آموزشی سون لرن می توانید از 0 تا 100 طراحی وب را در منزل فراگیرید!

جلوگیری از حملات Session Hijacking در PHP

1 4592 ۲۳ شهریور ۹۳

یکی از حملات رایج در مورد سشن ها در PHP حملات Session Hijacking یا Session Fixation می باشد . رکن اصلی این حمله در امن سازی ورودی های کاربر و استفاده از یکی توابع سشن است . سشن به صورت فایل ذخیره می شود و اگر سایت شما عضویت داشته باشد هر کاربری که به سایت شما وارد شود و لاگین میکنه یک فایل سشن برای او ایجاد می شود که یه نام به خصوص دارد و یکتا هست و یک کوکی داخل مرورگر کاربر ایجاد می شود که اسم آن PHPSESSID که مقدار داخل آن نام اون سشن هست که تو سرور ذخیره شده .

با زبان های دیگه می شود کوکی های دیگر افراد را دزدید و راه های مختلفی داره فرض کنید یک ایمیل نا شناسی برای شما آمده که این لینک شما رو به یک جایی هدایت میکنه که باعث دزدیده شدن کوکی میشه . یا اینکه فردی به صورت فیزیکی پشت سیستم شما حضور داره و مقدار این کوکی رو بر میداره و داخل سیستم خودش میسازه و می تونه داخل پنل کاربری شما بشه . راه دیگه اینه که اگه ورودی های کاربر رو درست امن نکرده باشید هکر می تونه با نوشته کد جاوا کوکی های بقیه افراد رو بدزده و مقدار این کوکی PHPSESSID رو درون سیستم خودش بزاره و از نام کاربری شما استفاده کنه مانند این کد جاوا که کوکی رو میدزده :

خب برای جلوگیری از دزدیده شدن کوکی ها دو کار باید انجام شود اول اینکه ورودی های کاربران رو امن کنیم که اگر کدی مانند بالا وارد کردن کار نکنه برای اینکار باید از تابع htmlspecialchars استفاده کنیم ولی این تابع رو اکثر کاربر های غیر حرفه ایی وقتی استفاده می کنند نمی تونن تمام ورودی های کاربران رو امن کنن .

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

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

 

:: مطالب جدید سون لرن را از طریق ایمیل دریافت کنید :

دیدگاه ها یک نظر ارسال شده است.

  • ‏‏

    عالی بود اما ممکنه کد جاواتون رو بیشتر توضیج بدین؟

  • ارسال دیدگاه

    ورود/عضویت سریع با اکانت فیسبوک/جیمیل شما

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

    ورود به سایت

    ورود سریع با :
    در حال اتصال ...

    جستجو در سون لرن

    عبارت :
    7LearnTelegram