تا جایی که می دونم متغیر سشن مختص به هر کاربر هست و در دسترس سایر کاربران نیست، این متغیر هم فقط در حافظه سرور ذخیره می شود.
روش اعتبار سنجی هم به این صورت است که یک متغیر سشن را به محض لاگین صحیح مقدار دهی کرده و در صفحات دیگر آنرا بررسی می کنند. این روش کاملا تست شده و مشکلی نداره.
فقط بحث مصرف زیاد حافظه سرور در جایی که تعداد کاربر زیاد باشد ممکن است شاید مساله ساز شود.
اسنیف کردن http headers‌ در یک شبکه داخلی بر اساس متغیرهای post شده از صفحه کاملا میسر است ولی ارتباطی به سشن که در فقط سرور وجود خارجی دارد ، ندارد. (البته session_id را می شود اسنیف کرد)
بحث مربوط به های‌جک کردن یک سشن بین php و asp و asp.net متفاوت است. در php متغیرهای سشن در دایرکتوری tmp عموما ذخیره می شوند و در یک shared server اگر صاحب هاست موارد امنیتی محدود کردن کاربران را رعایت نکرده باشد ممکن است شاید بشود کارهایی کرد. و یا از طریق XSS exploits شاید بشود session_id شخص را بدست آورد و آنرا ایجاد و با سطح دسترسی او وارد شد. (شاید و متاسفانه این مورد در ISP‌های ایرانی و اشخاصی که از IP های مانند هم در یک بازه زمانی یک روزه استفاده می کنند زیاد رخ می دهد. برای مثال در فوروم های php شاید دیده باشید که چرا من بجای دیگری وارد شدم؟!! )
همچنین Session ID ممکن است در انتهای url‌ در سایتهایی که از php استفاده می کنند قرار گیرد و باز هم این مورد اگر ملاحظه نشود خطرناک است.
تمام این موارد پس از لاگین مجدد شخص و با فراخوانی تابع session_regenerate_id تقریبا قابل حل است.
در asp و asp.net عمده موارد فوق به صورت توکار در موتورهای مربوطه حل شده است و نیاز آنچنانی به دقت نظر خاصی ندارد.