
استكشاف ثغرات WebLogic من المبتدئ إلى الخبير.
ملخص:في السنوات الأخيرة، تم اكتشاف ثغرات إلغاء التسلسل في Weblogic مع التركيز على نقطة تشغيل إلغاء التسلسل. ومع ذلك، هناك العديد من النقاط التي تنطوي على إلغاء التسلسل ولكن لا يمكن استغلالها في الوقت الفعلي، والتي يسهل التغاضي عنها أثناء أبحاث الثغرات المعتادة. كانت هناك مناقشات إضافية في الصناعة حول ثغرات "ما بعد إلغاء التسلسل"، حيث يمكن بالفعل استغلال الثغرات التي تبدو غير قابلة للاستغلال من خلال تقنيات لاحقة. على سبيل المثال، إذا لم يتم تشغيل الثغرة بعد إجراء عملية bind() أو rebind()، يمكنك تجربة طرق أخرى مثل lookup() أو lookupLink() لتشغيل الثغرة.
باستخدام هذا الأسلوب، اكتشفنا ثغرتين من ثغرات ما بعد إلغاء التسلسل في Weblogic (CVE-2023-21931، CVE-2023-21839)، وقد تم تأكيدهما رسميًا من قبل Oracle. في هذه المقالة، سنستخدم هاتين الثغرتين في Weblogic كأمثلة لمشاركة منهجية التفكير وراء استغلال ثغرات ما بعد إلغاء التسلسل. نعتقد أن هناك العديد من الثغرات المشابهة التي سيتم اكتشافها تدريجيًا في المستقبل، ونأمل أن توفر هذه المقالة بعض الإلهام للباحثين.
ملخص:تعتمد ثغرة التسلسل في Weblogic بشكل أساسي على بروتوكولي T3 وIIOP، اللذين يواجهان العديد من المشكلات في التفاعل التواصلي، مثل اختلاف اللغات والنقل عبر الشبكة، مما قد يسبب العديد من المضايقات في اكتشاف الثغرات واستغلالها. وفقًا لفلسفة WhiteHat Labs، فإن اكتشاف الثغرات واستغلالها هو عمل إبداعي يجب تنفيذه بأكثر الطرق إيجازًا وكفاءة لضمان قابلية الثغرة للاستخدام عبر المنصات وعمليتها. لذلك، قمنا بتنفيذ حل اتصال متعدد اللغات يعتمد على بروتوكول IIOP لحل مشكلة ثغرة التسلسل.
ملخص:تغطي هذه المقالة الثغرات التالية: CVE-2021-2135، CVE-2021-2394، CVE-2020-2555، CVE-2020-2883، CVE-2020-14645، CVE-2020-14825، CVE-2020-14841، CVE-2020-14756. في السنوات الأخيرة، تم الإبلاغ بشكل متكرر عن ثغرات إلغاء التسلسل في مكوّن Coherence الخاص بـ WebLogic. ومع ذلك، لا يوجد ملخص عام للثغرات التاريخية لإلغاء التسلسل في مكوّن Coherence الخاص بـ WebLogic، مما يجعل من الصعب على أولئك الذين يرغبون في تعلم أو فهم ثغرات إلغاء التسلسل في مكوّن Coherence الخاص بـ WebLogic. لذلك، تقدم هذه المقالة ملخصًا وتحليلًا للثغرات التاريخية لإلغاء التسلسل في مكوّن Coherence الخاص بـ WebLogic.
ملخص:في 21 يوليو 2021، أصدرت Oracle سلسلة من التحديثات الأمنية، شملت 342 ثغرة في منتجاتها، بما في ذلك Weblogic Server وDatabase Server وJava SE وMySQL وغيرها. من بينها، توجد ثغرة عالية الخطورة في منتج Oracle WebLogic Server، برقم ثغرة CVE-2021-2394 ودرجة CVSS تبلغ 9.8. تؤثر على إصدارات متعددة من WebLogic ويمكن استغلالها عن بُعد بسهولة باستخدام بروتوكولي T3 وIIOP.
ملخص:ثغرة إلغاء التسلسل RCE CVE-2020-14645 في Weblogic التي تم الكشف عنها مؤخرًا هي تجاوز لتصحيح CVE-2020-2883. استدعت ثغرة CVE-2020-2883 بشكل أساسي طرقًا عشوائية من خلال ReflectionExtractor، والتي نفذت بعد ذلك أوامر عشوائية باستخدام طريقة exec لكائن Runtime. قام التصحيح بوضع ReflectionExtractor في القائمة السوداء، لذا يمكن بناء سلسلة استغلال جديدة باستخدام UniversalExtractor. يمكن لـ UniversalExtractor استدعاء طريقتَي get وis بشكل عشوائي، مما يؤدي إلى استغلال التحميل الديناميكي للفئات عن بُعد عبر JDNI. UniversalExtractor خاص بإصدار Weblogic 12.2.1.4.0، وتحلل هذه المقالة بناءً على هذا الإصدار.
ملخص:في 15 يوليو 2020، أصدرت Oracle عددًا كبيرًا من التصحيحات الأمنية، ومن بينها حصلت ثغرة CVE-2020-14644 على تقييم خطورة بلغ 9.8، مما أثر على الإصدارات 12.2.1.3.0 و12.2.1.4.0 و14.1.1.0.0. تعتمد هذه المقالة على كود الإثبات العملي (POC) المتاح علنًا من الإنترنت لإعادة الإنتاج والتحليل. في النهاية، حققنا defineClass غير مقيد + instantiation، مما أدى إلى تنفيذ التعليمات البرمجية عن بُعد (RCE).
إذا كانت لديك مشكلة وظيفية، يمكنك فتح issue على GitHub أو في مجموعة المناقشة أدناه: