در توسینسو تدریس کنید

و

با دانش خود درآمد کسب کنید

معرفی حمله Session Hijacking و قابلیت Cookieless در ASP.NET

اگر شما برنامه نویس وب باشید حتما با مفهوم Session و Cookie آشنایی دارید. یک مهاجم در صورتیکه شما در کدنویسی خودتان اشتباه کرده باشید ، می تواند اطلاعات Session شما را Exploit کند. در برنامه نویسی ASP.NET و بعضا در زبان های برنامه نویسی مختلف شما قابلیتی به نام Cookieless Authentication دارید که برای کاربر تعریف می کند که آیا در شرایط به وجود آمده باید از Cookie ها استفاده کند یا خیر ، اگر این قابلیت به درستی در موارد مورد نیاز پیکربندی نشود ممکن است باعث Hijack شدن Session ارتباطی و احراز هویتی کاربر و در نهایت افشا شدن رمز عبور و Token احراز هویتی کاربر شود. در Cookieless authentication شما می توانید دو حالت تعریف کنید که یکی بصورت UseUri و یکی بصورت UseCookies استفاده می شود که از نامشان هم پیداست ، زمانیکه از UseUri استفاده می کنید در شرایط به وجود آمده کاربر سعی می کند که اطلاعات احراز هویتی خودش به همراه Token امنیتی را در قالب URL در درخواستی که توسط Browser ارسال می شود به سرور ارسال کند ، اگر از UseCookies استفاده کنید به جای اینکه درخواست مجددا به سرور از طریق Browser ارسال شود از طریق Cookie های موجود بر روی سیستم احراز هویت انجام می شود. به قطعه کد زیر دقت کنید :

<configuration>
<system.Web>
<authentication mode="Forms">
<forms cookieless="UseUri"> 

به قطع کد بالا دقت کنید ، زمانیکه توسط کد بالا Authentication Token یا توکن احراز هویت در آدرس URL به جای استفاده از Cookie ها به سمت سرور ارسال می شود ، یک مهاجم می تواند با استفاده از یک ابزار مانیتورینگ یا شنود شبکه این Session ارتباطی را شنود و آن را Hijack کرده و خودش را به جای کاربر اصلی جا بزند. اما این فقط مشکل اصلی نیست ، بعد از اینکه فرآیند Session Hijacking انجام شد تازه مشکلات بعدی بعد از احراز هویت و استفاده از کاربر اصلی صورت می گیرد. برای مثال توجه کنید که سرویس ها و فروشگاه های آنلاینی که ویترینی برای فروش دارند به کاربران اجازه می دهند بدون اینکه نیاز به Login به وب سایت داشته باشند صفحات فروشگاه را مرور کنند و هیچ ID یا Password ای نیز برای اینکار درخواست نمی کنند. اما زمانیکه کاربران می خواهند سفارش خودشان را ثبت کنند بایستی ابتدا به سیستم Login کنند و احراز هویت شوند تا بتوانند سفارش ها را ثبت کنند. بعد از اینکه کاربر به وب سایت مورد نظر Login کردن می تواند سفارش های خودش را ببیند و آدرس خودش را به همراه اطلاعات کارت اعتباری وارد کند و خرید را انجام دهد. خوب حالا همینجا صبر کنید ، اگر هکر قبل از اینکه کاربر در وب سایت مورد نظر Login کردن باشد بتواند Session آن را Hijack کند اطلاعات چندانی به دست نیاورده است اما اگر بعد از انجام شدن فرآیند احراز هویت Session را هکر Hijack کند تمامی اطلاعات مربوط به کاربر در اختیار هکر خواهد بود. در چنین مواردی است که استفاده کردن از کوکی ها توصیه می شود در مثال بالا UseUri باعث می شود که برای احراز هویت از Cookie ها استفاده نشود و هر بار اطلاعات احراز هویتی به سمت سرور ارسال شود ، حالا به قطعه کد زیر توجه کنید :

<configuration>
<system.Web>
<authentication mode="Forms">
<forms cookieless="UseCookies">

همانطور که در قطعه کد بالا مشاهده می کنید به جای استفاده از UseUri ازUseCookies استفاده شده است به معنی اینکه برای مراحل بعدی احراز هویت نیازی نیست هر بار یک Session به سمت سرور ایجاد شود و کاربر می تواند از Cookie هایی که بر روی سیستم خودش ذخیره شده اند برای احراز هویت استفاده کند که درجه امنیت را به طبع بالا می برد و احتمال Session Hijacking را به شدت کاهش می دهد. در واقع ما با استفاده از قطعه کد بالا کاربر را ملزم به استفاده از Cookie کرده ایم و در اصطلاح فنی تر Cookieless Authentication را غیرفعال یا Disable کرده ایم. از این به بعد برای احراز هویت کاربر از Authentication Token هایی که در Cookie ها ذخیره شده اند برای احراز هویت استفاده می کند. ITPRO باشید

نویسنده : محمد نصیری

منبع : انجمن تخصصی فناوری اطلاعات ایران

هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد

#session_hijacking_در_لایه_هفتم #امنیت_در_cookie_ها #session_hijacking_در_asp.net #session_hijacking_چیست؟ #کاربرد_usecookies_در_asp.net #cookieless_authentication_چیست #فرق_session_token__و_session_id_چیست؟ #کاربرد_useuri_در_asp.net #application_session_hijacking_چیست #نقش_cookie_در_حملات_session_hijacking
2 نظر
hani66

فوق العاده عالیه ممنون

مهندس من ي خواهشي دارم اگه ميشه PDF هر صفحه را زير هر صفحه بزاريد تا بچه هاي مثل ما كه اينترنت كمي دارند بتونيم بعدا از طريق آفلاين استفاده مي كنيم.

با تشكر.....

محمد نصیری

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

نظر شما
برای ارسال نظر باید وارد شوید.
از سرتاسر توسینسو
تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره تابستانه می تونی امروز ارزونتر از فردا خرید کنی ....