
ثغرة استخراج بيانات غير مصادق عليها في طابعات Kyocera، تسمح باسترجاع كلمات مرور دفتر العناوين والمجال بنص واضح.
ثغرة استخراج بيانات غير مصادق عليها في طابعات Kyocera، تسمح باستعادة كلمات المرور النصية الصريحة (cleartext) لدفتر العناوين والمجال المرتبط بالمجال.
في عام 2021 أثناء اختبار اختراق (pen test)، كنت أتلاعب بتطبيق العميل السميك (thick client) الخاص بشركة Kyocera المستخدم لإدارة الطابعات عن بُعد. أثناء وكالة حركة المرور من التطبيق، اكتشفت أن واجهة SOAP API الخاصة بـ Kyocera على المنفذ 9091/TCP لم تتعامل بشكل صحيح مع المصادقة عند تنفيذ إجراءات حساسة. يمكن تكوين أجهزة Kyocera متعددة الوظائف (MFPs) ببيانات اعتماد ربط (bind credentials) لمجالات الشركة، وبيانات اعتماد FTP، وبيانات اعتماد مشاركة الملفات، إلخ. من الممكن بدون مصادقة استرداد جميع بيانات الاعتماد المخزنة بواسطة الجهاز متعدد الوظائف، في النص الصريح.
يمكن العثور على كتابتي الكاملة على مدونة Rapid7: https://www.rapid7.com/blog/post/2022/03/29/cve-2022-1026-kyocera-net-view-address-book-exposure/
لا أعتقد أن هذا الأمر قد تم إصلاحه حاليًا في جميع الموديلات ولا يزال ثغرة يوم صفر (0-day)، على الرغم من التقارير المقدمة إلى البائع. تمكنت فقط من الاختبار على بضعة موديلات تم تحديدها على مر السنين، ولكن كلما وجدت طابعة Kyocera، لا يزال هذا يعمل.
يتصل النص البرمجي المكتوب بلغة بايثون بالجهاز متعدد الوظائف (MFP) على منفذ TCP 9091 ويصدر طلب SOAP لإنشاء تصدير جديد لدفتر العناوين. يستجيب الجهاز برقم كائن دفتر العناوين، ثم ينام النص البرمجي لبضع ثوانٍ أثناء إنشاء الدفتر. أخيرًا، يتم استرداد الدفتر عبر طلب SOAP آخر. داخل الدفتر ستجد جميع بيانات الاعتماد المكونة في النص الصريح.
لا تتردد في تقديم طلب سحب (PR) مع تحليل محسّن، حيث لم أعد أبدًا لتجميل المخرجات أو عملية الاستغلال.
python3 getKyoceraCreds.py <عنوان_ip_الطابعة>