ریفرر ( Referrer ) در HTTP چیست؟ نکتهای که در رابطه با آن صحبت خواهد شد، هرچند که ظاهرا جزو دستهبندی برنامه نویسی و توسعه نرم افزار قرار دارد اما در بحث امنیت شبکه هم آنطور که مطلع هستید نکات مرتبط با این موضوع و همچنین زبانهای برنامه نویسی غریبه نیستند و بخشی از مفاهیم امنیت را در بر میگیرند.
از آنجایی که علاوه بر آشنایی با این مفهوم، دید امنیتی قضیه مد نظر است، در انجمن امنیت اطلاعات و ارتباطات آن را مطرح نمودیم.HTTP referrer (در اصل referrer است که بصورت اشتباه ولی عرفی referer نامیده میشود) یک HTTP Header field است که آدرس وب سایتی (مثل URL) را مشخص میکند که منبعی را که درخواست شده است، لینک داده است.
با بررسی referer، صفحه وب جدید میتواند در جایی(منبعی) که درخواست آن شده است، مشاهده شود. در اکثر حالات این بدان معنی است که هنگامی که کاربری بر روی یک هایپرلینک در مرورگر کلیک کرد، مرورگر درخواست را به سرور میزبان وبپیج ارسال میکند. درخواست شامل بخش referrer است که آخرین صفحهای راکه کاربر توی آن بوده (روی آن کلیک کرده) است را نشان میدهد.
Referrer logging هم بخشی است که به وبسایت ها و وب سرورها این امکان را میدهد تا بخش هایی را که کاربر از آن ها دیدن کرده است را برای اهداف تبلیغاتی و یا آماری شناسایی کند.هنگامی که از یک صفحه وب بازدید میشود، referrer صفحه، در واقع URL صفحه وب قبلی است که از طریق آن بواسطه کلیک بر روی لینکی، به این صفحه رسیدهاید.
بصورت کلی تر، referrer، URL جایی است که بشما اجازه ارسال این درخواست را داده است. Referrer برای یک عکس بطور مثال معمولا صفحه HTML ای است که عکس در آن نمایش داده میشود. بخش referrer بخشی دلخواه در یک درخواست HTTP است که از مرورگر به وبسرور ارسال میشود.
بسیاری از وبسایت ها برای ردیابی کاربرانشان، لاگ referrer را نگه میدارند. بسیاری از آنالیستهای نرم افزاری در زمینه لاگ های وب میتوانند این اطلاعات را پردازش کنند. از آنجایی که اطلاعات referrer جزو حریم خصوصی کاربران محسوب میشود، بسیاری از مرورگرها این امکان را به کاربرانشان میدهند تا ارسال referrer را غیرفعال کنند.
برخی از نرم افزارهای پروکسی و فایروال هم خروج اطلاعات referrer را به جهت عدم ردیابی مکان وب سایتهای غیر عمومیشان، فیلتر میکنند. این اقدام مشکلاتنی را هم باعث میشود: برخی از وبسرورها بخشی از از وبسایتشان را برای دسترسی آندسته از مرورگرهایی که اطلاعات صحیحی از referrer را ارسال نمیکنند، بلاک کردهاند. این کار به جهت جلوگیری از deep linking و یا استفاده غیرمجاز از عکسها( سرقت پهنای باند) میباشد.
امروزه بسیاری از وبلاگها اقدام به انتشار اطلاعات referrer میکنند تا از طریق آن بتوانند با کاربران که به آنها لینک زدهاند، ارتباط برقرار نمایند. و در نهایت وجود سوء استفاده ها در این زمینه نیز منجر به افزایش و گسترش referrer های هرز(Spam) میشود.بسیاری از سایتهای غیراخلاقی از اطلاعات referer برای امن کردن وبسایتشان استفاده میکنند.
از این رو فقط درخواست مرورگرهایی که از جانب تعدادی خاص از وبسایتها (در وبسایت قبلی احراز هویت شده باشند) آمده باشد، مورد قبول واقع میشود. این کار باعث تسهیل در به اشتراک گذاری محصولات سایتهایی که در زمینه فروش با یکدیگر همکاری دارند، میشود. با تکیه بر مطلب گفته شده، referrer spoofing معمولا برای بدست آوردن دسترسی رایگان به این سایتهای پرداخت است.
اکثر وبسرورها لاگ کل ترافیکشان را نگهداری و HTTP referrer ارسالی توسط مرورگر را به ازای هر درخواست ضبط میکنند. این موضوع تهدیدات نقض حریم شخصی را افزایش میدهد. بدین منظور سیستمهایی برای جلوگیری از ارسال refererهای صحیح از طرف وبسرورها بوجود آمدهاند. این سیستمها بخش referrer را خالی میگذارند و یا آن را با اطلاعات نادرست پر میکنند.
عموما مجموعه های امنیتی اینترنتی جای اطلاعات referrer را خالی میگذارند بنابراین سرورهای وب، اطلاعات نادرست URL راجایگزین آن میکنند که غالبا آدرس خودشان است. این موضوع مسئله referrer های هرز را افزایش میدهد. بسیاری از مرورگرها هنگامی که مجددا از طریق بخش Refresh فراخوانی میشوند، دیگر بخش referrer را ارسال نمیکنند.
البته این موضوع شامل مرورگر اپرا و بسیاری از مرورگرهای موبایل نمیشود.اگردرخواست وب از طرف یک منبع HTTPS به وبسایتی (غیر HTTPS) برسد، بخش referrer بطور خودکار ارسال نمیگردد. استاندارد HTML5 که در آینده خواهد آمد، ارزش rel = “noreferer” را به منظور ساخت Agent ای طرف کاربر برای عدم ارسال referrer، پشتیانی خواهد کرد.
کارشناس امنیت اطلاعات و ارتباطات
احسان امجدی ، مشاور امنیت اطلاعات و ارتباطات و تست نفوذ سنجی ، هکر کلاه سفید ، مدرس دوره های تخصصی امنیت اطلاعات و شبکه ، تخصص در حوزه های سرویس های مایکروسافت ، Routing و Switching ، مجازی سازی ، امنیت اطلاعات و تست نفوذ ، کشف جرائم رایانه ای و سیستم عامل لینوکس ، متخصص در حوزه SOC و ...
زمان پاسخ گویی روز های شنبه الی چهارشنبه ساعت 9 الی 18
فقط به موضوعات مربوط به محصولات آموزشی و فروش پاسخ داده می شود