
إضافة للكشف التلقائي عن فرض التفويض لـ Burp Suite مكتوبة بلغة Jython طورها Barak Tawily بهدف تسهيل عمل أشخاص أمن التطبيقات وتمكينهم من إجراء اختبارات تفويض تلقائية
Autorize هي إضافة مفتوحة المصدر لـ الكشف التلقائي عن فرض صلاحيات الوصول والمصادقة لـ Burp Suite.
وهي مصممة لمساعدة مهندسي أمن التطبيقات ومختبرين الاختراق في تحديد تجاوزات الصلاحيات و نقاط ضعف المصادقة في تطبيقات الويب—على نطاق واسع وبأقل جهد يدوي.
تقوم Autorize بمراقبة حركة المرور الناتجة عن مستخدم ذي صلاحيات عالية بشكل سلبي، وتعيد إرسال الطلبات تلقائياً باستخدام سياقات منخفضة الصلاحيات أو غير مصادقة، وتحلل استجابات الخادم لتحديد ما إذا كانت ضوابط الوصول مطبقة بشكل صحيح.
الإضافة مكتوبة بلغة Jython بواسطة Barak Tawily، باحث وممارس في أمن التطبيقات.

تكون Autorize فعالة بشكل خاص أثناء الاختبارات المصادقة، حيث تكون أدوات الزحف والمسح التقليدية غير كافية.
تنزيل Burp Suite
https://portswigger.net/burp/download.html
تنزيل Jython Standalone
https://www.jython.org/download.html
تكوين Jython في Burp
تثبيت Autorize
git clone https://github.com/Quitten/Autorize.git
Autorize.pyالتحقق من التثبيت
افتح علامة تبويب Autorize بعد التثبيت.
انتقل إلى Autorize → Configuration.
أدرج رأس التفويض لمستخدم منخفض الصلاحيات:
ملاحظة
سيتم استبدال الرؤوس المحددة هنا إذا كانت موجودة بالفعل أو إضافتها إذا كانت مفقودة.
الإعدادات الاختيارية:
انقر على "Intercept is off" لبدء الاعتراض.
قم بتكوين متصفحك لتمرير حركة المرور عبر Burp كوكيل.
تصفّح التطبيق كمستخدم ذي صلاحيات عالية.
لاحظ النتائج في جدول Autorize.
اختر أي إدخال لفحصه:
تقوم Autorize بتعيين إحدى الحالات التالية لكل نقطة نهاية تم اختبارها:
لم يتم فرض الصلاحيات أو المصادقة.
تم فرض ضوابط الوصول بشكل صحيح.
لم تستطع Autorize تحديد حالة الفرض بشكل موثوق وتتطلب تكوين بصمة يدوية.
عندما لا يمكن تحديد الفرض تلقائياً، يمكنك تكوين كاشفات الفرض (Enforcement Detectors).
هناك فئتان من الكاشفات:
إذا أعاد طلب مُعدّل استجابة تحتوي على:
You are not authorized to perform this action
أضف هذه السلسلة (أو تعبيراً منتظماً) كبصمة في كاشف الفرض. ستقوم Autorize بعد ذلك بالتعرف تلقائياً على فرض الصلاحيات للاستجابات المماثلة.
تتحكم مرشحات الاعتراض في الطلبات التي يتم تحليلها بواسطة Autorize، مما يساعد في تقليل الضوضاء وتحسين الأداء.
تتضمن Autorize مرشحات افتراضية لاستبعاد الأصول الثابتة مثل الصور والنصوص البرمجية.
مثال على التكوين:

تدعم Autorize مستخدمين متعددين منخفضي الصلاحيات في وقت واحد، مما يتيح لك مقارنة سلوك الصلاحيات عبر أدوار أو جلسات مختلفة.
يحصل كل مستخدم تم تكوينه على عارض طلب/استجابة مخصص على الجانب الأيمن من الجدول. عند تحديد صف، يتم تحديث جميع عارضي المستخدمين الظاهرين تلقائياً ببياناتهم الخاصة. وهذا يعني أنه يمكنك عرض استجابة المستخدم 1 والمستخدم 2 جنباً إلى جنب لاكتشاف الاختلافات في فرض الصلاحيات بسرعة.
النقر على خلايا عمود مستخدم معين (مثل "User 1 Modif. Len" أو "User 1 Authz. Status") سيؤدي إلى توسيع عارض ذلك المستخدم إلى الحجم الكامل للفحص المركز. يؤدي النقر على عمود URL إلى استعادة جميع العارضين الظاهرين للمقارنة.
تحتوي علامة التبويب "Request/Response Viewers" على زر رمز العين في رأس علامة التبويب. يؤدي النقر عليه إلى فتح قائمة منبثقة حيث يمكنك تبديل أقسام العارض التي سيتم عرضها:
يتيح لك ذلك تخصيص اللوحة اليمنى لعرض فقط المقارنات التي تهمك. على سبيل المثال:
يقوم تحديد الرؤية بضبط تخطيط اللوحة ديناميكياً، مما يمنح مساحة رأسية أكبر للعارضين المتبقيين.
المساهمات مرحب بها.
لا تتردد في فتح مشكلات (Issues)، أو تقديم طلبات سحب (Pull Requests)، أو اقتراح تحسينات.
Barak Tawily
المدير التنفيذي للتكنولوجيا @ Enso Security
باحث في أمن التطبيقات – https://quitten.github.io/
مستشار سابق لأمن التطبيقات @ AppSec Labs