ملفات تعريف الارتباط (Web Cookies)

Security
ما هي ملفات تعريف الأرتباط بالويب(web Cookies)؟ما الخطر الناتج عنها؟ كيفية التصدي له؟
Omnia
Dec. 15, 2022, 9:17 p.m.
omnia
ملفات تعريف الارتباط  (Web Cookies)

ما هي ملفات تعريف الارتباط (Cookies) ؟

هي مجموعة من البيانات التي يكونها ال web server عند تصفح المستخدم  بال HTTP ويتم وضعها في ال hard drive حيث إن بروتوكول ال HTTP هو (Stateless Protocol) مما يعني ان ال server غير ملزم بالاحتفاظ بالبيانات أو معلومات الجلسة قبل بدأها أو بعد الانتهاء منها فلذاك يحتاج إلى مجموعة البيانات هذه للتعرف على تفاصيل معلومات الجملة حتى تنتهي.

كيف يتم إرسال البيانات ؟

عند تصفح المستخدم المتصفح يتم إرسال طلب HTTP يحتوي على ال Cookie التي تحتوي على البيانات وعند الرد من ال web server على هذا الطلب يكون يحتوي على ال set cookie لكي يتمكن من حفظ هذه المعلومات ولكن عند إنهاء الجلسة يتم مسح هذه البيانات من قبل ال server ولكن من جهة المستخدم يختلف هل سيتم مسحها أو لا باختلاف نوع ال cookie. 

ما هي أنواع ملفات تعريف الارتباط(Cookies)؟

1. ملفات تعريف الارتباط للجلسة (Session Cookie)

ملفات تعريف الارتباط للجلسة هي ملفات تعريف الارتباط التي تدوم لجلسة. تبدأ الجلسة عند إطلاق موقع ويب أو تطبيق ويب وتنتهي عند مغادرة موقع الويب أو إغلاق نافذة المتصفح. تحتوي ملفات تعريف الارتباط الخاصة بالجلسة على معلومات يتم تخزينها في موقع ذاكرة مؤقت يتم حذفها بعد انتهاء الجلسة. على عكس ملفات تعريف الارتباط الأخرى حيث انه لا يتم تخزين ملفات تعريف الارتباط الخاصة بالجلسة أبدًا.

2. ملف تعريف ارتباط دائم (Persistent Cookie)

ملف تعريف الارتباط  المستمر هو ملف مخزن على كمبيوتر المستخدم يتذكر المعلومات أو الإعدادات أو التفضيلات أو بيانات اعتماد تسجيل الدخول التي حفظها المستخدم سابقًا. يوفر هذا الوقت . ويحدد ال Web servers تاريخ انتهاء الصلاحية على ملفات تعريف الارتباط هذه.

3. ملف تعريف الارتباط  الخاص  بالطرف الأول (First-party cookies)

 يتم وضع ملفات تعريف الارتباط الخاصة بالطرف الأول على متصفح المستخدم بواسطة موقع ويب أو نطاق يزوره المستخدم مباشرة. يتم إعداد هذه الأنواع من ملفات تعريف الارتباط لأغراض مثل جمع بيانات التحليلات، وتذكر خيارات التصفح مثل اللغة أو إعدادات الموقع، وتنفيذ أنشطة أخرى تعمل على تحسين تجربة التصفح للمستخدمين.

4. ملف تعريف الارتباط من الطرف الثالث (ملفات تعريف ارتباط الطرف الثالث)

يتم إصدار ملفات تعريف الارتباط الخاصة بالجهات الخارجية من قبل أي طرف باستثناء موقع الويب أو المجال الذي يزوره المستخدم مباشرة. يمكن الإشارة إلى طرف ثالث على أنه معلن يقدم إعلانات مستهدفة ؛ أو الخدمات التي تساعد مشغلي مواقع الويب على إضافة عناصر طرف ثالث (مثل الدردشة الحية، وأزرار الوسائط الاجتماعية، وعنصر خرائط Google، وما إلى ذلك) على موقعهم.

الخطر الناجم عن ملفات تعريف الارتباط (Cookies Risk)
ملفات تعريف الارتباط  نفسها ليست ضارة - لكن يمكن لمجرمي الإنترنت اختطاف ملفات تعريف الارتباط وتتبع تاريخ تصفح المستخدم و نظرًا لأن معظم مواقع الويب تستخدم ملفات تعريف الارتباط باعتبارها المعرفات الوحيدة لجلسات المستخدم، إذا تم اختطاف ملف تعريف الارتباط، فقد يتمكن المهاجم من انتحال شخصية المستخدم والحصول على وصول غير مصرح به. وهذا يتم بطرق مختلفه من ضمنها :

  • التقاط ملفات تعريف الارتباط عبر القنوات غير الآمنة (Capturing cookies over insecure channels): يجب دائمًا إرسال أي ملف تعريف ارتباط يتعلق بالمصادقة بشكل آمن، ولكن هذا ليس هو الحال دائمًا. أحد الأمثلة على ذلك هو ملفات تعريف الارتباط بدون علم أمني. عندما يتم تعيين ملف تعريف الارتباط مع العلم الآمن، فإنه يوجه المتصفح بأنه لا يمكن الوصول إلى ملف تعريف الارتباط إلا عبر قنوات SSL/TLS الآمنة. إذا لم يتم تعيين العلم الآمن، يمكن نقل ملف تعريف الارتباط بنص واضح - على سبيل المثال، إذا زار المستخدم أي عناوين URL HTTP ضمن نطاق ملف تعريف الارتباط. سيسمح هذا للمهاجم بالتنصت على حركة مرور الشبكة لالتقاط ملف تعريف الارتباط بسهولة واستخدامه للوصول غير الشرعي.
  • تثبيت الجلسة (Session fixation): هجوم يسمح للمهاجم باختطاف جلسة مستخدم صالحة. يستكشف الهجوم قيدًا في الطريقة التي يدير بها تطبيق الويب معرف الجلسة، وبشكل أكثر تحديدًا تطبيق الويب الضعيف. عند المصادقة على المستخدم، فإنه لا يخصص معرف جلسة جديد، مما يجعل من الممكن استخدام معرف الجلسة الموجود. يتكون الهجوم من الحصول على بطاقة هوية صالحة للجلسة (على سبيل المثال عن طريق الاتصال بالتطبيق)، وحث المستخدم على توثيق نفسه ببطاقة هوية الجلسة، ثم اختطاف الجلسة التي تم التحقق من صحتها من قبل المستخدم من خلال معرفة معرف الجلسة المستخدم. يجب على المهاجم تقديم معرف شرعي لجلسة تطبيق الويب ومحاولة جعل متصفح الضحية يستخدمه. وهناك عدة تقنيات لتنفيذ الهجوم ؛ يعتمد على كيفية تعامل تطبيق الويب مع رموز الجلسة. فيما يلي بعض التقنيات الأكثر شيوعًا:

  1. رمز الجلسة في وسيطة URL: يتم إرسال معرّف الجلسة إلى الضحية في ارتباط تشعبي وتقوم الضحية بالوصول إلى الموقع من خلال عنوان URL الضار.

  2. معرف الجلسة في ملف تعريف  الارتباط: تدعم معظم المتصفحات تنفيذ البرمجة النصية لجانب العميل. في هذه الحالة، يمكن للمعتدي استخدام هجمات حقن الشفرة كهجوم XSS (البرمجة النصية عبر الموقع) لإدخال رمز ضار في الوصلة التشعبية المرسلة إلى الضحية وإصلاح معرف الجلسة في ملف تعريف الارتباط الخاص به. باستخدام الوظيفة (document.cookie)، يصبح المتصفح الذي ينفذ الأمر.

  • البرمجة النصية  عبر المواقع (XSS) : هناك طريقة أخرى لسرقة ملفات تعريف الارتباط وهي استخدام البرمجة النصية عبر المواقع لاستغلال مواقع الويب التي تسمح للمستخدمين بنشر محتوى HTML و JavaScript غير المصفى. على سبيل المثال، إذا نقر المستخدم على رابط ضار نشره مهاجم، فقد ينفذ رمز JavaScript ويتسبب في إرسال متصفح الويب الخاص بالضحية إلى موقع الويب الذي يتحكم فيه المهاجم.
  • تزوير الطلبات  عبر المواقع (Cross-site request forgery (CSRF)): هذا نوع من الهجمات التي تستغل موقعًا إلكترونيًا بجعله ينفذ أوامر غير مصرح بها يتم نقلها من مستخدم يثق به تطبيق الويب. في هجوم CSRF، يتمثل هدف المهاجم في استخدام ضحية بريئة لتقديم طلب ويب مصمم بشكل خبيث عن غير قصد إلى موقع ويب تتمتع الضحية بامتياز الوصول إليه. نظرًا لأن الضحية قد تم تسجيلها بالفعل، فسيتم اعتبار أي طلب قادم من متصفحه جديرًا بالثقة ويتم تنفيذه. لكي يعمل هجوم CSRF، يجب على المهاجم أولاً تحديد طلب ويب قابل للتكرار ينفذ إجراءً محددًا - على سبيل المثال، تغيير كلمة مرور على الصفحة المستهدفة. بمجرد تحديد مثل هذا الطلب، يمكن إنشاء رابط يولد هذا الطلب الضار ويمكن تضمين هذا الرابط في صفحة ضمن سيطرة المهاجم. والأسوأ من ذلك، قد لا يكون من الضروري حتى للضحية النقر فوق الرابط. على سبيل المثال، قد يتم تضمينه في علامة صورة html على رسالة بريد إلكتروني يتم إرسالها إلى الضحية، والتي سيتم تحميلها تلقائيًا عندما تفتح الضحية بريدها الإلكتروني.
  • رمي ملفات تعريف  الارتباط(Cookie tossing): يعتمد هجوم رمي ملفات تعريف الارتباط على تزويد المستخدم بملف تعريف ارتباط ضار تم تصميمه ليبدو وكأنه جاء من المنطقة الفرعية للموقع المستهدف. بالطبع، يصبح هذا مشكلة بشكل خاص عندما يسمح موقع ويب للأشخاص غير الموثوق بهم باستضافة مناطق فرعية تحت مجاله. عندما يزور المستخدم الموقع المستهدف، يتم إرسال جميع ملفات تعريف الارتباط، سواء كانت صالحة أو تبدو من مناطق فرعية.

التدابير المضادة: هناك طرفان يلعبان دورًا في منع سرقة ملفات تعريف الارتباط واختطاف الجلسات:

مالك موقع الويب

  •  تثبيت شهادة SSL: ستقوم SSL (Secure Sockets Layer) بتشفير البيانات (ملفات تعريف الارتباط) قبل نقلها.
  • قم بتثبيت ملحق أمان: سي منع جدار الحماية الخاص بالملحق محاولات الاختراق على موقع الويب الخاص بك ويحظر عناوين IP الضارة. بالإضافة إلى ذلك، سيقوم بمسح موقعك بانتظام وتنبيهك إذا تم إدخال أي رمز ضار بواسطة متسلل.
  • قم بتحديث موقع الويب الخاص بك: لا تحمل هذه التحديثات ميزات جديدة وإصلاحات للأخطاء فحسب، بل إنها تصلح أيضًا العيوب الأمنية من وقت لآخر.

زوار موقع الويب

  • تركيب مضاد فعال للفيروسات: سينبهك هذا إذا تم اكتشاف برامج ضارة عند زيارة موقع ويب ضار. سيؤدي أيضًا إلى إزالة أي برامج ضارة قد تقوم بتنزيلها أو تثبيتها عن طريق الخطأ على نظامك.

  • لا تنقر أبدًا على الروابط المشبوهة

  • تجنب تخزين البيانات الحساسة: إن تخزين معلومات بطاقات الائتمان على مواقع التسوق يجعل الخروج أسرع وأكثر ملاءمة. قد يوفر لك بضع ثوان، لكنه يعرضك أيضًا لخطر التعرض للهجوم.

  • التصفح في وضع خاص المتخفي (Incognito mode): سيتم حذف أي ملفات تعريف ارتباط أثناء جلستك تلقائيًا عند إغلاق المتصفح.

  • استخدام VPN: تقوم  هذه الخدمات بنفق اتصال الويب الخاص بك إلى خادم بعيد يطرح مثلك. سيتم تصنيف ملفات تعريف الارتباط لهذا الخادم البعيد في بلد آخر، بدلاً من جهاز الكمبيوتر المحلي الخاص بك.

  • السماح أو إزالة ملفات تعريف الارتباط: يمكن أن تكون ملفات تعريف الارتباط جزءًا اختياريًا من تجربتك على الإنترنت. يمكن أن تساعدك إزالة ملفات تعريف الارتباط في التخفيف من مخاطر انتهاكات الخصوصية. يمكنه أيضًا إعادة ضبط تتبع المتصفح والتخصيص.


web cookies risks countermeasures HTTP