
إطار عمل اختراق عبر روبوت Slack لتمارين الفريق الأحمر

إطار عمل هجومي لـ Slack لإجراء تمارين الفريق الأحمر والتصيد داخل مساحات عمل Slack.
هذه الأداة مخصصة لمتخصصي الأمن فقط. لا تستخدم هذه الأداة ضد أي مساحة عمل Slack دون إذن صريح للاختبار. استخدمها على مسؤوليتك الخاصة.
تستخدم آلاف المؤسسات Slack لمساعدة موظفيها على التواصل والتعاون والتفاعل. تقوم العديد من هذه المساحات بتثبيت تطبيقات أو بوتات يمكن استخدامها لأتمتة مهام مختلفة داخل Slack. تُمنح هذه البوتات أذونات فردية تحدد المهام المسموح للبوت بطلبها عبر واجهة Slack API. للمصادقة على Slack API، يُخصص لكل بوت رمز API يبدأ بـ xoxb أو xoxp. في كثير من الأحيان، تتسرب هذه الرموز في مكان ما. عندما يتم تسريب هذه الرموز أثناء تمرين الفريق الأحمر، قد يكون من الصعب استخدامها بشكل صحيح. الآن EvilSlackbot هنا لأتمتة وتبسيط هذه العملية. يمكنك استخدام EvilSlackbot لإرسال رسائل Slack مزيفة، وروابط تصيد، وملفات، والبحث عن الأسرار المسربة في Slack.
بالإضافة إلى تمارين الفريق الأحمر، تم تطوير EvilSlackbot أيضًا مع مراعاة محاكاة التصيد في Slack. لاستخدام EvilSlackbot لإجراء تمرين تصيد في Slack، كل ما عليك فعله هو إنشاء بوت داخل Slack، ومنح البوت الأذونات المطلوبة لاختبارك المقصود، وتزويد EvilSlackbot بقائمة من عناوين البريد الإلكتروني للموظفين الذين ترغب في اختبارهم باستخدام عمليات تصيد محاكاة (روابط، ملفات، رسائل مزيفة).
يتطلب EvilSlackbot تثبيت Python3 و Slackclient.
pip3 install slackclient
usage: EvilSlackbot.py [-h] -t TOKEN [-sP] [-m] [-s] [-a] [-f FILE] [-e EMAIL]
[-cH CHANNEL] [-eL EMAIL_LIST] [-c] [-o OUTFILE] [-cL]
options:
-h, --help show this help message and exit
Required:
-t TOKEN, --token TOKEN
Slack Oauth token
Attacks:
-sP, --spoof Spoof a Slack message, customizing your name, icon, etc
(Requires -e,-eL, or -cH)
-m, --message Send a message as the bot associated with your token
(Requires -e,-eL, or -cH)
-s, --search Search slack for secrets with a keyword
-a, --attach Send a message containing a malicious attachment (Requires -f
and -e,-eL, or -cH)
Arguments:
-f FILE, --file FILE Path to file attachment
-e EMAIL, --email EMAIL
Email of target
-cH CHANNEL, --channel CHANNEL
Target Slack Channel (Do not include #)
-eL EMAIL_LIST, --email_list EMAIL_LIST
Path to list of emails separated by newline
-c, --check Lookup and display the permissions and available attacks
associated with your provided token.
-o OUTFILE, --outfile OUTFILE
Outfile to store search results
-cL, --channel_list List all public Slack channels
لاستخدام هذه الأداة، يجب عليك تقديم رمز xoxb أو xoxp.
Required:
-t TOKEN, --token TOKEN (Slack xoxb/xoxp token)
python3 EvilSlackbot.py -t <token>
اعتمادًا على الأذونات المرتبطة برمزك، هناك عدة هجمات يمكن لـ EvilSlackbot تنفيذها. سيتحقق EvilSlackbot تلقائيًا من الأذونات التي يمتلكها رمزك وسيعرضها بالإضافة إلى أي هجوم يمكنك تنفيذه باستخدام الرمز المقدم.

Attacks:
-sP, --spoof Spoof a Slack message, customizing your name, icon, etc (Requires -e,-eL, or -cH)
-m, --message Send a message as the bot associated with your token (Requires -e,-eL, or -cH)
-s, --search Search slack for secrets with a keyword
-a, --attach Send a message containing a malicious attachment (Requires -f and -e,-eL, or -cH)
بامتلاك الأذونات الصحيحة للرمز، يسمح لك EvilSlackbot بإرسال رسائل تصيد مع انتحال اسم البوت وصورته. يتطلب هذا الهجوم أيضًا إما عنوان البريد الإلكتروني (-e) للهدف، أو قائمة عناوين البريد الإلكتروني للهدف (-eL)، أو اسم قناة Slack (-cH). سيستخدم EvilSlackbot هذه الوسيطات للبحث عن SlackID للمستخدم المرتبط بعناوين البريد الإلكتروني أو اسم القناة المقدمة. لأتمتة هجومك، استخدم قائمة عناوين البريد الإلكتروني.
python3 EvilSlackbot.py -t <xoxb token> -sP -e <email address>
python3 EvilSlackbot.py -t <xoxb token> -sP -eL <email list>
python3 EvilSlackbot.py -t <xoxb token> -sP -cH <Channel name>
بامتلاك الأذونات الصحيحة للرمز، يسمح لك EvilSlackbot بإرسال رسائل تصيد تحتوي على روابط تصيد. ما يجعل هذا الهجوم مختلفًا عن هجوم الانتحال هو أن هذه الطريقة سترسل الرسالة كالبوت المرتبط بالرمز المقدم. لن تتمكن من اختيار اسم أو صورة البوت الذي يرسل رسالة التصيد. يتطلب هذا الهجوم أيضًا إما عنوان البريد الإلكتروني (-e) للهدف، أو قائمة عناوين البريد الإلكتروني للهدف (-eL)، أو اسم قناة Slack (-cH). سيستخدم EvilSlackbot هذه الوسيطات للبحث عن SlackID للمستخدم المرتبط بعناوين البريد الإلكتروني أو اسم القناة المقدمة. لأتمتة هجومك، استخدم قائمة عناوين البريد الإلكتروني.
python3 EvilSlackbot.py -t <xoxb token> -m -e <email address>
python3 EvilSlackbot.py -t <xoxb token> -m -eL <email list>
python3 EvilSlackbot.py -t <xoxb token> -m -cH <Channel name>
بامتلاك الأذونات الصحيحة للرمز، يسمح لك EvilSlackbot بالبحث عن الأسرار في Slack عبر كلمة مفتاحية. في الوقت الحالي، يتطلب هذا الهجوم رمز xoxp، لأنه لا يمكن منح رموز xoxb الأذونات المناسبة للبحث بالكلمات المفتاحية داخل Slack. استخدم الوسيطة -o لكتابة نتائج البحث إلى ملف خارجي.
python3 EvilSlackbot.py -t <xoxp token> -s -o <outfile.txt>
بامتلاك الأذونات الصحيحة للرمز، يسمح لك EvilSlackbot بإرسال مرفقات ملفات. يتطلب هجوم المرفقات مسار الملف (-f) الذي ترغب في إرساله. يتطلب هذا الهجوم أيضًا إما عنوان البريد الإلكتروني (-e) للهدف، أو قائمة عناوين البريد الإلكتروني للهدف (-eL)، أو اسم قناة Slack (-cH). سيستخدم EvilSlackbot هذه الوسيطات للبحث عن SlackID للمستخدم المرتبط بعناوين البريد الإلكتروني أو اسم القناة المقدمة. لأتمتة هجومك، استخدم قائمة عناوين البريد الإلكتروني.
python3 EvilSlackbot.py -t <xoxb token> -a -f <path to file> -e <email address>
python3 EvilSlackbot.py -t <xoxb token> -a -f <path to file> -eL <email list>
python3 EvilSlackbot.py -t <xoxb token> -a -f <path to file> -cH <Channel name>
Arguments:
-f FILE, --file FILE Path to file attachment
-e EMAIL, --email EMAIL Email of target
-cH CHANNEL, --channel CHANNEL Target Slack Channel (Do not include #)
-eL EMAIL_LIST, --email_list EMAIL_LIST Path to list of emails separated by newline
-c, --check Lookup and display the permissions and available attacks associated with your provided token.
-o OUTFILE, --outfile OUTFILE Outfile to store search results
-cL, --channel_list List all public Slack channels
بامتلاك الأذونات الصحيحة، يمكن لـ EvilSlackbot البحث عن جميع القنوات العامة داخل مساحة عمل Slack وعرضها. يمكن أن يساعد ذلك في التخطيط لمكان إرسال رسائل القنوات. استخدم -o لكتابة القائمة إلى ملف خارجي.
python3 EvilSlackbot.py -t <xoxb token> -cL