الخلاصة

  • نُشر RFC 5159 بصفة Informational في مارس 2008 وسجّل أربع سمات SDP مرتبطة بخدمة OMA BCAST وحماية المحتوى.
  • كان SRTPAuthentication يختار RCCm1 أو RCCm2 أو RCCm3 ولا يصدر حكماً على حزمة محددة.
  • لا تتحقق المصادقة إلا عند جمع الحزمة والمفتاح وحالة التسلسل والعداد والخوارزمية المتفق عليها.
  • كان SRTPROCTxRate يعلن معدل إرسال rollover counter، وقيمته الافتراضية واحد.
  • لا يثبت المعدل المعلن أن العداد وصل موثَّقاً أو أن حالة المستقبِل بقيت متزامنة.
  • كان stkmstream يربط الوسائط المحمية بتدفقات Short Term Key Messages التي ينبغي للجهاز معالجتها.
  • تسمية التدفق الصحيح لا تثبت وصول مفتاح أو استحقاقه أو تثبيته أو نجاح فك التشفير والتشغيل.
  • تحل قيمة مستوى الوسيط محل قائمة مستوى الجلسة، ولذلك يدخل النطاق في القرار الفعلي.
  • لا يكون رقم التدفق فريداً إلا داخل جلسة SDP واحدة، وليس هوية دائمة.
  • قد يؤدي تعديل bcastversion غير المحمي إلى خفض الإصدار، وقد يؤدي تغيير خريطة التدفق إلى حجب الخدمة.
  • سجّل IETF وIANA الأسماء، بينما ظل التحكم في تغيير الدلالة لدى OMA.
  • يجب فصل نية الإشارة عن الحزمة المستلمة والحالة المقبولة ونتيجة المصادقة وفك التشفير والتشغيل.

التهيئة تصف القاعدة ولا تنفذ الاختبار

تحتاج حماية SRTP إلى اتفاق الطرفين على طريقة تفسير الحزم والتحقق منها. قدّم SRTPAuthentication في RFC 5159 قيماً تشير إلى RCCm1 وRCCm2 وRCCm3. حين تظهر القيمة في SDP يعرف البرنامج أي قاعدة متوقعة، وهذا يمنع قدراً من الغموض بين المرسل والمستقبِل.

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

يمكن أن تكون الجهتان متفقتين على الاسم بينما تختلفان في المفتاح أو rollover counter أو نافذة إعادة الإرسال. ويمكن أن ترفض جهة الاستقبال حزمة تالفة على النحو الصحيح. في هذه الحالة تكون التهيئة صحيحة، وتكون نتيجة الحزمة فشلاً مشروعاً. لوحة المتابعة التي تساوي «تم اختيار الخوارزمية» بـ«الحزم موثقة» تمحو هذا الفرق.

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

جدول إرسال العداد ليس حالة المستقبِل

أضاف RFC 5159 السمة SRTPROCTxRate لتحديد عدد مرات إرسال rollover counter. يتراوح الرقم بين 1 و65535، وعند غياب السمة تكون القيمة واحداً. يساعد ROC على تمديد فضاء رقم التسلسل القصير والمحافظة على تفسير متسق عبر الالتفاف.

القيمة المعلنة تخبر المستقبِل بما يفترض أن يرسله الطرف الآخر. لا تخبره بما وصل فعلاً. قد تضيع حزمة التحكم، أو تصل بعد الوقت الحرج، أو تفشل في فحص السلامة، أو تُطبّق على سياق آخر. وقد يحتفظ جهاز أعيد تشغيله بحالة تختلف عن حالة المرسل.

لهذا يلزم فصل أربعة سجلات: معدل الإرسال المعلن، والحزم التي أرسلها المصدر بالفعل، والحزم التي قبلها المستقبِل، وقيمة العداد المثبتة عند معالجة الوسائط. اتفاق ملفات التهيئة لا يثبت اتفاق الحالة الحية.

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

خريطة تدفق المفتاح لا تسلّم المفتاح

في البث متعدد التدفقات لا يكون من العملي أن يستمع الجهاز إلى كل شيء. سمح stkmstream لوصف SDP بأن يشير إلى تدفقات Short Term Key Messages اللازمة للوسيط المحمي. بذلك يستطيع الطرفية تقليل استهلاك الراديو والطاقة والمعالجة.

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

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

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

الرقم المحلي يفقد معناه عندما يفقد الجلسة

اشترطت المواصفة أن يكون معرّف تدفق رسالة المفتاح عدداً صحيحاً غير صفري وفريداً داخل جلسة SDP. لم تشترط فرادته بين الجلسات أو عبر الزمن. يمكن لجلسة لاحقة أن تستخدم الرقم نفسه لتدفق مختلف تماماً.

حين يرسل نظام القياس stream=9 إلى مستودع مركزي من دون أصل الجلسة وإصدار الوصف وقسم الوسيط، يصبح الرقم مفتاح ربط زائفاً. قد يجمع المستودع حوادث مستقلة في سلسلة واحدة، أو ينسب فشلاً إلى تدفق لم يكن فعالاً لأن قيمة مستوى الوسيط تجاوزت قيمة الجلسة.

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

حقل الإصدار يستطيع تغيير مستوى الحماية

يحمل bcastversion سلسلة تحدد إصدار BCAST. يبدو ذلك بيانات وصفية بسيطة، لكن قسم الأمن في RFC حذّر من أن تعديل قيمة غير محمية قد يجبر المستقبِل على العودة إلى إصدار أقدم. لم يحتج المهاجم إلى سر؛ كان يكفي أن يغيّر المدخل الذي يختار السلوك.

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

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

تسجيل الاسم لم ينقل سلطة المعنى

صدر RFC 5159 كوثيقة Informational لأن العمل التقني يعود إلى Open Mobile Alliance. وفّر IETF وIANA أسماء مستقرة داخل فضاء SDP، وبقيت سلطة تغيير التفسير لدى OMA. منع التسجيل التصادم، لكنه لم يجعل سجل IANA مواصفة كاملة ولم يشهد على جودة أي تنفيذ.

وفي إرشاد تعدد الوسائط اللاحق صُنّف bcastversion وstkmstream على أنهما NORMAL، بينما بقي تصنيف سمتي SRTP غير محدد. يتعلق هذا بكيفية النسخ بين أوصاف الوسائط المجمّعة، وليس بدرجة أمن أو دليل انتشار.

ذكر RFC أن الاستخدام كان متوقعاً مع 3GPP MBMS و3GPP2 BCMCS وDVB-H. هذا سياق تصميم من عام 2008، وليس إثباتاً بأن مشغلاً بعينه نشر السمات أو أن جهازاً بعينه شغّل المحتوى. التشغيل الفعلي يحتاج أدلة فعلية.

المصادر

  1. RFC 5159 بصيغة HTML
  2. نص RFC 5159
  3. سجل RFC Editor
  4. سجل IETF Datatracker
  5. تاريخ RFC 5159
  6. مراجع RFC 5159
  7. تصويبات RFC 5159
  8. RFC 4566
  9. RFC 8866
  10. RFC 4771
  11. RFC 3711
  12. RFC 8859
  13. RFC 5761
  14. RFC 7201
  15. RFC 5764
  16. RFC 8126
  17. معلمات SDP لدى IANA
  18. إفصاح الملكية الفكرية 2092
  19. RFC 2119
  20. RFC 8174
  21. RFC 3264
  22. المواصفة الابتدائية الدنيا
  23. حول طبقات الواقع
  24. أولوية الشيفرة العاملة