المقدمة
يصف هذا المستند خطوات أستكشاف أخطاء السيناريو وإصلاحها حيث يتم تحميل سلسلة شهادات موقعة من قبل المرجع المصدق (CA) إلى Finesse لخادم ويب خارجي يستضيف أداة ذكية ولكن الأداة الذكية تفشل في التحميل عند تسجيل الدخول إلى Finesse وترى الخطأ "sslpIrUnverifiedException".
تمت المساهمة من قبل جينو شوينسبيرجر، مهندس مركز المساعدة الفنية من Cisco.
المتطلبات الأساسية
المتطلبات
توصي Cisco بأن تكون لديك معرفة بالمواضيع التالية:
- شهادات SSL
- إدارة فاينس
- إدارة خادم Windows
- تحليل التقاط الحزمة باستخدام Wireshark
المكونات المستخدمة
تستند المعلومات الواردة في هذا المستند إلى إصدارات البرامج التالية:
- Unified Contact Center Express (UCCX) 11.x
- Finesse 11.x
تم إنشاء المعلومات الواردة في هذا المستند من الأجهزة الموجودة في بيئة معملية خاصة. بدأت جميع الأجهزة المُستخدمة في هذا المستند بتكوين ممسوح (افتراضي). إذا كانت شبكتك قيد التشغيل، فتأكد من فهمك للتأثير المحتمل لأي أمر.
معلومات أساسية
هذه هي الظروف التي قد يحدث فيها الخطأ:
- افترض تحميل سلسلة الشهادات الموثوق بها إلى Finesse
- تأكد من إعادة تشغيل الخوادم/الخدمات الصحيحة
- افترض أنه تمت إضافة الأداة الذكية إلى تخطيط Finesse باستخدام عنوان URL ل HTTPS وأن عنوان URL يمكن الوصول إليه
هذا هو الخطأ الذي تم ملاحظته عند تسجيل العميل الدخول إلى Finesse:
"كانت هناك مشكلات في عرض هذه الأداة الذكية. javax.net.ssl.SSLPirUnverifiedException: لم تتم مصادقة النظير"
مشاكل
السيناريو 1: يقوم الخادم المضيف بالتفاوض على قوائم التحكم في الوصول (TLS) غير الآمنة
عند قيام Finesse Server بطلب اتصال بالخادم المضيف، تعلن Finesse Tomcat عن قائمة بتشفير التشفير التي تدعمها.
لا يتم دعم بعض التشفير بسبب الثغرات الأمنية،
إذا قام الخادم المضيف بتحديد أي من هذه الشفرات، يتم رفض الاتصال:
- TLS_DHE_RSA_WITH_AES_256_cbc_SHA
- TLS_DHE_RSA_WITH_AES_128_CBC_SHA
من المعروف أن هذه المشفرات تستخدم مفاتيح Diffie-hellman سريعة الزوال عند التفاوض على الاتصال، كما أن قابلية تأثر Logjam تجعل من هذه الخيارات خيارا سيئا لاتصالات TLS.
اتبع عملية مصافحة TLS في التقاط الحزمة لمعرفة أي تشفير يتم التفاوض عليه.
1. تقدم Finesse قائمة المشفرات المدعومة الخاصة بها في خطوة Client Hello:
2. لهذا الاتصال TLS_DHE_RSA_WITH_AES_256_CBC_SHA تم إختياره بواسطة الخادم المضيف أثناء خطوة Server Hello لأن هذا أعلى في قائمته للشفرات المفضلة.
3. ترسل Finesse تنبيها فادحا وتضع حدا للاتصال:
الحل
لمنع إستخدام هذه الشفرات، يجب تكوين خادم الاستضافة لمنح هذه الشفرات أولوية منخفضة، أو يجب إزالتها من قائمة الشفرات المتاحة بالكامل. يمكن القيام بذلك على Windows Server باستخدام محرر نهج مجموعة Windows (gpedit.msc).
ملاحظة: لمزيد من التفاصيل حول تأثير Logjam في Finesse واستخدام GPEDIT، راجع:
السيناريو 2: تحتوي الشهادة على خوارزمية توقيع غير مدعومة
يمكن لجهات ترخيص Windows Server إستخدام معايير توقيع أحدث لتوقيع الشهادات. حتى أنه يوفر قدرا أكبر من الأمان مقارنة بتقييم أنظمة التشغيل SHA، فإن تبني هذه المعايير خارج منتجات Microsoft منخفض ومن المحتمل أن يواجه المسؤولون مشاكل تتعلق بقابلية التشغيل البيني.
تعتمد Finesse Tomcat على موفر أمان SunMSCAPI من Java لتوفير الدعم لمختلف خوارزميات التوقيع ووظائف التشفير التي تستخدمها Microsoft. تدعم جميع الإصدارات الحالية من Java (1.7 و 1.8 و 1.9) خوارزميات التوقيع هذه فقط:
- MD5withRSA
- MD2withRSA
- NONEwithRSA
- SHA1withRSA
- SHA256withRSA
- SHA384withRSA
- SHA512withRSA
إنها لفكرة جيدة أن تتحقق من إصدار Java الذي يتم تشغيله على خادم Finesse لتأكيد الخوارزميات التي يتم دعمها في هذا الإصدار. يمكن التحقق من الإصدار من الوصول الجذر باستخدام هذا الأمر: Java -version
ملاحظة: لمزيد من التفاصيل حول موفر Java SunMSCAPI، ارجع إلى https://docs.oracle.com/javase/8/docs/technotes/guides/security/SunProviders.html#SunMSCAPI
إذا تم توفير شهادة مع توقيع آخر غير المذكور أعلاه، فلن يتمكن Finesse من إستخدام الشهادة لإنشاء اتصال TLS بخادم الاستضافة. يشمل ذلك الشهادات الموقعة بنوع توقيع مدعوم ولكن تم إصدارها من قبل هيئات التصديق التي لديها شهاداتها الوسيطة والجذرية موقعة مع شيء آخر.
إذا نظرت إلى التقاط حزمة، يقوم Finesse بإغلاق الاتصال بخطأ "تنبيه قاتل: الشهادة غير معروفة"، كما هو موضح في الصورة.
عند هذه النقطة من الضروري التحقق من الشهادات المقدمة من قبل الخادم المضيف والبحث عن خوارزميات توقيع غير مدعومة. من الشائع أن ترى RSA-PSS كخوارزمية التوقيع الإشكالي:
إذا تم توقيع أي شهادة في السلسلة مع RSASSA-PSS، يفشل الاتصال. في هذه الحالة يظهر التقاط الحزمة أن المرجع المصدق الجذر يستخدم RSAa-PSS لشهادته الخاصة:
الحل
لحل هذه المشكلة، يجب إصدار شهادة جديدة من موفر CA يستخدم نوع واحد فقط من أنواع توقيعات SunMSCAPI المدعومة المدرجة عبر سلسلة الشهادات بالكامل كما هو موضح مسبقا.
ملاحظة: لمزيد من التفاصيل حول خوارزمية توقيع RSA-PSS، راجع https://pkisolutions.com/pkcs1v2-1rsassa-pss/
ملاحظة: يتم تعقب هذه المشكلة في الخلل CSCve79330