من از بحث درباره این سؤال SO و همچنین پست وبلاگ همراه من را تحت تأثیر قرار داد. من در حال تلاش برای درک بهتر مکانیک این دو سیستم هستم ، و یکی از سؤالاتی که من مطرح کردم این است که بدتر بودن شناسه سرقت شده در مقابل شناسه جلسه ، چقدر بدتر است؟

اینجا چیزی است که من تا الان می فهمم ، لطفاً در صورت اشتباه بودن ، مرا تصحیح کنید:

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

یک نشانه احراز هویت بخشی ساده از داده های کاربر JSON با امضای رمزنگاری است که صحت اطلاعات را تأیید می کند. این به دلیل امضایت دستکاری شده است ، بنابراین هیچ کس نمی تواند به سادگی اظهارات خود را مطرح کند. داده هایی که به آن دسترسی می یابند روی سرور ایمن است ، به جز البته آنچه در نشانه موجود است (که حتی در صورت نیاز می توان رمزگذاری کرد). این نشان اغلب برای ساده سازی درخواست های معتبر در یک کوکی ذخیره می شود.

بنابراین این همان چیزی است که من نمی فهمم. به روشی که در حال حاضر آن را مشاهده می کنم ، به نظر می رسد به همان اندازه احتمال دارد که یک نشانه به عنوان شناسه جلسه سرقت شود ، به عنوان مثال. هر کسی که از SSL من عبور کند و نشانه من را مشاهده کند ، می تواند شناسه جلسه را نیز مشاهده کند. در هر صورت دسترسی کامل به حساب من و همه مجوزهای مرتبط به مهاجم امکان دسترسی کامل را می دهد. بنابراین ، از نظر احتمال رویداد و خسارت ناشی از آن ، آیا یک نشانه تأیید هویت واقعاً بدتر از شناسه جلسه است ، همانطور که مقاله ادعا می کند؟

تنها چیزی که من می توانم ببینم به طور بالقوه برای نشانه ها بدتر است ، این است که اگر راز امضاء به نوعی باشد. فهمید که در این صورت مهاجم می تواند هر کاری را با حساب هر کسی انجام دهد ، نه فقط مال من. با این حال ، من تقریباً می خواهم این مسئله را به احتمال معقول کسی که ابتدا RSA را شکسته است ، منتقل کنم ، در این صورت می تواند SSL را پشت سر بگذارد ، و پس از آن چه شناسنامه ای به هر حال چه خوب است؟