البيئة موزيلا AWS لتحقيق بتنفيذ التعليمات البرمجية خدمة 0day الضعف عن بعد WebPageTest

في هذه المقالة، وفريق الأمن Assetnote CS في تحليل موزيلا AWS سحابة سطح الهجوم بيئة شبكة الخدمات، اكتشف نشر فيها شبكة اختبار الأداء أداة WebPageTest هناك نقاط الضعف 0day، تستغل ضعف وتنفيذ التعليمات البرمجية عن بعد في نهاية المطاف على الخادم موزيلا AWS ( RCE).

WebPageTest مقدمة

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

WebPageTest بما في ذلك خدمات نشر الشبكة، تمكن بعض اسم المستخدم وكلمة المرور الأساسي للتحقق منها عن طريق تعديل ملف settings.ini، لذلك فمن المستحسن لتكوين هذا من أجل منع بعض من وصول تسجيل الدخول للمستخدمين المجهولين.

في كثير من فريق تقييم أمن الشبكات Assetnote CS خدمة WebPageTest، وعدم وجود تدابير مصادقة المستخدم الأساسية، بحيث النتائج التي قد تنشأ هو أن المهاجم يستطيع استخدام سلسلة من اختبارات الأداء أداة WebPageTest لبدء SSRF (من جانب الخادم طلب التزوير ) الهجوم، مما يتيح الوصول إلى الوصول إلى الشبكة المستهدفة إلى الموارد.

نظرة عامة الضعف

نوفمبر 2017، فريق الأمن Assetnote CS في AWS على (خدمات أمازون السحابية) موزيلا الاختبارات البيئية، وجدت أصول الشبكة اثنين مما يلي:

wpt-vpn.stage.mozaws.net

wpt1.dev.mozaws.net

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

لأنه في الوقت الذي يعتبر الضعف 0day، ولذا فإننا الاتصالات في الوقت المناسب والتشاور مع الشركة وفريق موزيلا WebPageTest، وإصلاحات هذا الضعف. إصلاح إصدار 17 يناير 2018 يمكن أن ينظر فيها ارتكاب المعلومات المقدمة.

وجدت أن استخدام نقاط الضعف

في WebPageTest المصدر، يمثلون للمرة الأولى انتباهنا إلى أن أي بفك وظيفة ملف مضغوط وتحميل /www/work/workdone.php لها السيناريو، يحتوي الملف النصي فب منطق للحد من الوصول إلى مصدر آخر من 127.0.0.1، رمز كما يلي (على الخط 110):

... ! Strcmp ($ _ SERVER ، "127.0.0.1") ...

أيضا في هذا الملف بى، وجدنا خطرا آخر هو أن تحميل أي ملف مضغوط واستخراج لمنطق مكان معروف، رمز كما يلي (خط 133-136):

إذا (isset ($ _ FILES )) { ExtractZipFile ($ _ FILES ، $ testPath)؛ CompressTextFiles ($ testPath)؛ }

واستنادا إلى منطق رمز أعلاه، ما اذا كنا نستطيع IP يتنكر 127.0.0.1، ثم ليس من الممكن تنفيذ إعدام رمز server-side منه من خلالهم؟ ومع ذلك، فإن حقيقة أننا لم نكن نريد أن تكون بسيطة جدا، خط 321 /www/work/workdone.php في، هناك أيضا مثل وظيفة الأسلوب:

SecureDir ($ testPath)؛

طريقة تعريف رموز وظيفة SecureDir من 2322 /www/common_lib.inc ملفات --2347 السطر:

/ ** * تأكد من عدم وجود ملفات خطرة في الدليل وجعل كل شيء نظرا عدم تنفيذ * *param $ مسار مختلطة * / وظيفة SecureDir ($ المسار) { $ = الملفات scandir ($ المسار). foreach ($ الملفات كما $ ملف) { $ أسم دليل = "$ مسار / $ الملف". إذا (is_file ($ أسم دليل)) { $ أجزاء = pathinfo ($ ملف)؛ $ تحويلة = strtolower ($ أجزاء )؛ إذا (strpos ($ تحويلة، 'فب') === كاذبة && strpos ($ تحويلة، "رر ') === كاذبة && strpos ($ تحويلة، 'الحمر') === كاذبة && strpos ($ تحويلة، "CGI") === كاذبة && strpos ($ تحويلة، "آسيا والمحيط الهادئ ') === كاذبة && strpos ($ تحويلة، 'شبيبة') === كاذبة && strpos ($ تحويلة، "م ع") === كاذبة && strpos ($ تحويلة، 'هتكس') === كاذبة && strpos ($ تحويلة، 'جرة') === كاذبة) { chmod ($ أسم دليل، 0666)؛ } {شيء آخر chmod ($ أسم دليل، 0666)؛ // فقط في حالة فشل إلغاء الربط لسبب ما إلغاء الربط ($ أسم دليل)؛ } } ELSEIF ($ الملف! = '.' && $ الملف! = '..' && is_dir ($ أسم دليل)) { SecureDir ($ أسم دليل)؛ } } }

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

وفي هجوم نبني السلسلة، بشرط بسيط جدا، لأن الأصول الهدف wpt-vpn.stage.mozaws.net من WebPageTest الخدمة، بعد أداء القيادة تتبع المسار، يمكننا الحصول على WebPageTest توليد ID اختبار صحيح، هناك هذا رقم أسهل نسبيا في التعامل معها. على سبيل المثال، تنفيذ ونحن في تتبع المسار قيادة https://google.com:

بعد، وسوف WebPageTest خدمة يقفز إلى URL الذي يحتوي ID صفحة نتائج اختبار أداء الاختبار إلى:

هنا، 171124_GW_9 لاختبار ID.

هذا، فإننا لا نزال تزويرها 127.0.0.1 IP هذه الخطوة، إذا كانت هذه الخطوة يمكن أن تكون ناجحة، على نحو فعال الوصول إلى ملف workdone.php، وإطلاق يتم تنفيذ الأمر.

بعد التحليل، يمكننا خط 70 في ملف /www/common.inc جدت منطق التعليمات البرمجية التالية:

إذا (isset ($ _ SERVER )) $ _SERVER = $ _SERVER .

انها وجدت من هذا الجزء من الشفرة، يمكننا أن نرسل الطلب، طلب تعيين رأس فاستلي-CLIENT-IP إلى 127.0.0.1، مما يتيح للمستخدم بعيد مع تغير بشكل تعسفي $ _SERVER عنوان IP.

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

لكن لحسن الحظ هناك طلب بمساعدة عالية السرعة المكونات توربو دخيل، ونحن استغلال سلسلة هي أكثر استقرارا. في النهاية، نحن بيئة الشبكة موزيلا AWS، والتنفيذ الناجح لتنفيذ التعليمات البرمجية من جانب الملقم. أدناه، أدركنا الدعوة إلى phpinfo () يقرأ في wpt-vpn.stage.mozaws.net في:

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

* المصدر المرجعي: assetnote والسحب جمعت مستنسخة من FreeBuf.COM  

شخص مايكروسوفت رقم 2 توفي أبل، وجوجل وغيرها من عمالقة وقد أصدرت وثيقة لتقديم العزاء

"المنتقمون 4: المعركة النهائية"، وخاصة التعرض غطاء طبعة الرسمي، أرملة شقيقة الولايات المتحدة انفجر!

2017 معرض شنغهاي للسيارات جناح التنقيب: قوانغتشو للسيارات تشي تشوان GS4 PHEV

جامعة هارفارد GFL الصينية والتبادلات الثقافية الخارجية والبرنامج الصيفي البحوث

من NIKE الرعاية الإنسانية! SNKRS حتى 6 رفوف المال لا يشتري لك الأحذية؟

معرض شنغهاي للسيارات استكشاف جناح رسائل VOL1: GS7 / GE3 / GS4 EV

أثينا من خلال البندقية، الملك الجديد من أفرلورد الوادي منطقة البرية

رد: فيفو الجهاز الجديد غامضة كشفت GeekBench / سامسونج S10 + الأسعار

المؤسس المشارك مايكروسوفت بول آلن، توفي بمرض السرطان، مكافحة كانت المشكلة الكثير من الكراهية وهمية، غرفة مريحة للرد على المستأجر في حيازة كاميرا | لى فنغ الصباح

سوف تلعب سيرتدي أفضل لدفع؟ الطريق المد هو في الواقع ذلك!

2017 معرض شنغهاي للسيارات استكشاف جناح: T70 مباراة موستانج تجميل

9 الدخن ظهور التكوين أعلنت تقريبا اسمحوا لي أن أقول لكم سعره