nexpay

Session Hijacking

شروع موضوع توسط phpkar ‏20 فوریه 2006 در انجمن PHP

  1. phpkar

    phpkar Registered User

    تاریخ عضویت:
    ‏11 آگوست 2005
    نوشته ها:
    388
    تشکر شده:
    0
    محل سکونت:
    Mashhad
    سلام

    حتما تاپیک قبلی من رو در مورد امنیت برنامه نویسی با موضوع SQL Injection دیدین .
    در این تاپیک قصد دارم بازهم از تجربیات دوستان در مورد مساله مهم امنیتی دیگری با عنوان Session hijacking استفاده کنیم .

    Session hijacking یک روش ماهرانه هک شدن سایتها است که از طریق جا زدن هکر جای admin سایت از طریق دزدیدن Session اونه ... hijacking اصولا واژه ای بوده که به منظور دزدیدن هواپیما بهش در انگلیسی اشاره میشه اما برای اینکار واژه بهتری توی انگلیسی که بیانگر این کار و اهمیتش باشه ظاهرا پیدا نشده . من فکر میکنم واسه این این کلمه رو انتخاب کردن که توش کلمه کلیدی hack دیده میشه !
    معمولا session hijacking با خوندن cookie های مدیر سایت توسط قرار دادن کدهای جاوااسکریپتی در بعضی ورودیهای صفحه برای خوندن کوکی فعال مدیر سایت در موقع فعال بودن session یا کوکی یا خوندن session ID از طریق فرستادن مدیر سایت در هنگام فعال بودن session به یک لینک دیگر است که در صفحه مذبور با خواندن refferer صفحه و مشاهده session id میشه session را شبیه سازی کرد .
    و همونطور که خودتونم میدونید با لو رفتن session مربوط به admin به راحتی کل اختیار سایت در دست هکر قرار خواهد گرفت .

    نرم افزارهای خاصی هم برای اینکار وجود دارن که به hijacker ها معروفند .

    اینها خلاصه مقالاتی بود که من در مورد session hijacking مطالعه کرده بودم .

    دوستانی که اطلاعات دارن لطفا ادامه بدن ...
     
  2. artin

    artin کاربر تازه وارد

    تاریخ عضویت:
    ‏19 می 2004
    نوشته ها:
    2,112
    تشکر شده:
    2
    خوب می تونی مثال هم بزنی که چجوری عمل می کنه ؟
    یعنی کلا session امنیتش پایینه ؟
     
  3. first saeed

    first saeed Registered User

    تاریخ عضویت:
    ‏25 آگوست 2005
    نوشته ها:
    813
    تشکر شده:
    2
    محل سکونت:
    PubliC_HtmL
    البته من اصلان از این چیزا سر در نمی یارم
    اما من برای اینکه امنیت بالاتر بره کد اتصال به بانک رو یا جاهایی که پسورد رو به صورت ثابت می خوام تعریف کنم همیشه کدهای مربوط رو توی فایل جدا ذخیره می کنم به صورت رمز شده و هر جا بخوام تو صفحات دیگه اینکلودش می کنم .
    حالا نمی دونم این اصلا ربطی به این تاپیک داشت یا نه
     
  4. phpkar

    phpkar Registered User

    تاریخ عضویت:
    ‏11 آگوست 2005
    نوشته ها:
    388
    تشکر شده:
    0
    محل سکونت:
    Mashhad
    اینا کل اطلاعاتی بود که من جمع کرده بودم

    من خودم منتظر اطلاعات جدید تری هستم منجمله :

    روشهای هک کردن با session hijacking
    روش های جلوگیری از آن
     
  5. artin

    artin کاربر تازه وارد

    تاریخ عضویت:
    ‏19 می 2004
    نوشته ها:
    2,112
    تشکر شده:
    2
    من هم دارم می گردم ولی اولین چیزی که پیدا کردم این بود


    PHP:
    session_start();

    if(!isset(
    $sid) || empty($sid))
    {
       
    $sess_addr $REMOTE_ADDR;
       
    session_register(sess_addr);
    }
    elseif(
    $sess_addr != $REMOTE_ADDR)
    {
       echo 
    "This sessions has been hijacked.";
       
    extt;
    }
     
  6. artin

    artin کاربر تازه وارد

    تاریخ عضویت:
    ‏19 می 2004
    نوشته ها:
    2,112
    تشکر شده:
    2
    این هم یکی دیگه

    http://xqus.com/archives/2004/10/19/secure-php-sessions/
     
  7. phpkar

    phpkar Registered User

    تاریخ عضویت:
    ‏11 آگوست 2005
    نوشته ها:
    388
    تشکر شده:
    0
    محل سکونت:
    Mashhad
    مرسی

    چیزای جالبی بود ...
    در مورد hijacker ها چیزی پیدا کردی ؟
     
  8. shankimout

    shankimout Registered User

    تاریخ عضویت:
    ‏17 می 2004
    نوشته ها:
    1,491
    تشکر شده:
    3
    محل سکونت:
    ساری . . . . . . . . . . . . . . Permanently Bann
    با این حساب برنامه های قدیمه ما که الان رو چند تا سایت دارن کار میکنن همه این باگو دارن :D
     
  9. gavbandy

    gavbandy Registered User

    تاریخ عضویت:
    ‏15 فوریه 2005
    نوشته ها:
    364
    تشکر شده:
    3
  10. miladmovie

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

    تاریخ عضویت:
    ‏25 دسامبر 2002
    نوشته ها:
    1,936
    تشکر شده:
    2
    راستش تا اونجای که من می دونم باز هم خوده PHP این کار رو انجام می ده
    وقتی که تنظیم :
    session.use_cookies ست شده باشه
    دیگه این مشکل پیش نمیاد چون ID سشن باید با ID که در کوکی ذخیره می شه یک باشه !
     
  11. artin

    artin کاربر تازه وارد

    تاریخ عضویت:
    ‏19 می 2004
    نوشته ها:
    2,112
    تشکر شده:
    2
  12. miladmovie

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

    تاریخ عضویت:
    ‏25 دسامبر 2002
    نوشته ها:
    1,936
    تشکر شده:
    2
    آرتین جان یعنی چی ؟
    در تایید حرف من بود یا رد ؟ :D
     
  13. avajang.com .leftjee.ir.right
  14. artin

    artin کاربر تازه وارد

    تاریخ عضویت:
    ‏19 می 2004
    نوشته ها:
    2,112
    تشکر شده:
    2
    در تایید حرف شما بود

    حالا این دقیقا چطوری عمل می کنه ؟
    یعنی رو هر سیستمی قابل اجرا شدنه ؟ یعنی هر کی از حالت عادی استفاده می کنه احتماله هک شدن داره ؟
     
  15. shankimout

    shankimout Registered User

    تاریخ عضویت:
    ‏17 می 2004
    نوشته ها:
    1,491
    تشکر شده:
    3
    محل سکونت:
    ساری . . . . . . . . . . . . . . Permanently Bann
    بعضی از سایت ها که روی لینوکس و آپاچی هستن اخر همه صفحه های php یه PHPSESSID اضافه میکنه . این SESSID چرا تو url هست . در ویندوز و iis اینجوری نیست .

    میشه با اینکود دیتا های سشن کاری کرد که اگه توسط کس دیگه ای خونده شدن قابل استفاده نباشن . ولی کسی میتونه با این روش سشن ایجاد کنه ؟
     
  16. shankimout

    shankimout Registered User

    تاریخ عضویت:
    ‏17 می 2004
    نوشته ها:
    1,491
    تشکر شده:
    3
    محل سکونت:
    ساری . . . . . . . . . . . . . . Permanently Bann
  17. shankimout

    shankimout Registered User

    تاریخ عضویت:
    ‏17 می 2004
    نوشته ها:
    1,491
    تشکر شده:
    3
    محل سکونت:
    ساری . . . . . . . . . . . . . . Permanently Bann
    اینم بر میگرده به sql injection چون با جاوااسکریپت میشه کوکی که حاوی SESSID باشه ساخت ( البطه باید یه اسم کلی تر میزاشتن که اینجا هم کاربرد داشت ;( . منظورم به sql injection هست )
     
  18. miladmovie

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

    تاریخ عضویت:
    ‏25 دسامبر 2002
    نوشته ها:
    1,936
    تشکر شده:
    2
    نه نمی شه ! اونی کوکی که با javascript ساخته می شه فرق می کنه با کوکی که برای PHP ساخته می شه
     
  19. hba

    hba کاربر فعال صفحات داینامیک کاربر فعال

    تاریخ عضویت:
    ‏8 آگوست 2004
    نوشته ها:
    1,511
    تشکر شده:
    1
    محل سکونت:
    تهران-ونک-php-mysql
    خوب پس اصلا session hijacking نمی دونید من یه مقدار توضیح می دم زیاد نمی گم چون روش های هکری هست و خیلی لو نمی دیم

    خیلی از برنامه نویسان فکر می کنند session خیلی امن هست ولی این طور نیست

    با روش هایی که نمی گم می شه session تقلبی ساخت مثلا فرض در برنامه ای بعد لاگین session به نام admin ساخته می شه و برنامه در جا هایی فقط وجود session رو برسی می کنه و این خیلی بده چون تقلبی می شه یه سشن با همون نام ساخت و برنامه چون فقط ووجود رو چک می کنه راحت وارد می شه

    روش های جلوگیریش رو هم بعدا می گم
     
  20. zfarhad2003

    zfarhad2003 Registered User

    تاریخ عضویت:
    ‏19 ژانویه 2004
    نوشته ها:
    1,152
    تشکر شده:
    3
    محل سکونت:
    R7 register
    به نظرم اگه از قابلیت ذخیره session در پایگاه داده استفاده بشه بیشتر مشکلات مربوط به این روش هک حل می شه.

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

    artin کاربر تازه وارد

    تاریخ عضویت:
    ‏19 می 2004
    نوشته ها:
    2,112
    تشکر شده:
    2

    دادشه من یا خوش خوشی می گی یا .... :cigar:

    اگه session با ورودی باشه چی ؟
    من معمولا اینجوری می کنم
    که اگه مثلا Session login برابر با yes شد مثلا لاگین بشه !
    حالا اینجوری هم مورد امنیتی پیش می یاد ؟

    صفحه قبل من یه کد گذاشتم که IP رو چک می کنه این جطوریه میشه روش حساب کرد ؟
     
zarpopخرید بک لینک عسل طبیعی و گرده گل ایرانیfootbal