
أداة ترحيل NTLM إلى نقطة نهاية EWS لخوادم Exchange المحلية. توفر واجهة OWA للمتسللين.
الإصدار 1.0.0. هذه الأداة هي إثبات مفهوم (PoC) لتوضيح قدرة المهاجم على تنفيذ هجوم ترحيل NTLM قائم على SMB أو HTTP إلى نقطة نهاية EWS على خادم Microsoft Exchange محلي لاختراق صندوق بريد الضحية. توفر هذه الأداة للمهاجم واجهة مشابهة لـ OWA مع إمكانية الوصول إلى صندوق البريد وجهات الاتصال الخاصة بالمستخدم.
تم إصدارها في Defcon26. يمكنك الاطلاع على خلفية الأداة، المشكلات الأساسية التي يتم استغلالها، وعرض توضيحي مسجل هنا: https://blog.quickbreach.io/one-click-to-owa/
pip install -r requirements.txt
./exchangeRelayx.py -t https://mail.quickbreach.com
ينقسم التطبيق إلى owaServer، وخوادم الترحيل (relay servers)، وعميل هجوم HTTP (exchangePlugin) الذي يتم إنشاؤه لكل اتصال مُرحّل جديد.
خادم owaServer هو خادم ويب مبني على Flask يستمع على http://127.0.0.1:8000 افتراضيًا. يقدم خادم الويب هذا ملفات HTML ثابتة مثل index.html وOWA.html وComposeEmail.html – ويتم تحميل كل شيء آخر من طلبات JSON (من EWS.js) إلى نقاط نهاية owaServer. عند تقديم طلب إلى owaServer، يقوم owaServer بإنشاء استدعاء EWS المناسب وإدخاله في القاموس المشترك في الذاكرة الذي يستخدمه كل من owaServer وexchangePlugin. بمجرد أن يستقبل exchangePlugin الطلب، يرسله إلى Exchange ثم يحمل الاستجابة في نفس القاموس المشترك. أخيرًا، عندما يحصل owaServer على الاستجابة من القاموس، يقوم بتحليل البيانات وإرجاع النتائج. ستلاحظ أن وظيفة تنزيل الملفات ليست كموقع ويب عادي، وذلك بسبب الطبيعة غير المتزامنة للتطبيق.
خوادم الترحيل هي خوادم ترحيل NTLM قياسية تعتمد على impacket عبر HTTP وSMB، وتقوم بإنشاء مثيل جديد من exchangePlugin لكل اتصال مُرحّل جديد.
باختصار، exchangePlugin هو عميل HTTP الفعلي الذي يقوم بإرسال واستقبال الطلبات من خادم EWS. يتم تمرير نفس القاموس المشترك في الذاكرة إلى جميع مثيلات exchangePlugin عند التهيئة، وتستخدمه للاتصال بين العمليات. يتيح ذلك إعادة توجيه الطلبات من owaServer إلى الاتصال المُرحّل المناسب للمستخدم – مما يوفر مرونة أكبر لإدارة ضحايا متعددين.
تم بناء هذه الأداة واختبارها ضد Exchange 2013 على نظام Server 2012 R2، لذا أراهن أنه سيلزم إجراء تعديلات لبيئات أخرى. بعض الأهداف للتكرارات القليلة القادمة للأداة هي:
طلبات السحب (Pull requests) موضع تقدير كبير