
Фреймворк для фишинга с использованием Slack-бота для упражнений Red Teaming

Фреймворк для атак на Slack, предназначенный для проведения упражнений Red Team и фишинга в рабочих пространствах Slack.
Этот инструмент предназначен только для специалистов по безопасности. Не используйте этот инструмент против любого рабочего пространства Slack без явного разрешения на тестирование. Используйте на свой страх и риск.
Тысячи организаций используют Slack для общения, совместной работы и взаимодействия своих сотрудников. Многие из этих рабочих пространств Slack устанавливают приложения или ботов, которые можно использовать для автоматизации различных задач внутри Slack. Эти боты получают индивидуальные разрешения, определяющие, какие задачи бот может запрашивать через Slack API. Для аутентификации в Slack API каждому боту присваивается токен API, который начинается с xoxb или xoxp. Часто эти токены где-то утекают. Когда эти токены перехватываются во время упражнения Red Team, их правильное использование может быть затруднительным. Теперь EvilSlackbot здесь, чтобы автоматизировать и упростить этот процесс. Вы можете использовать EvilSlackbot для отправки поддельных сообщений Slack, фишинговых ссылок, файлов и поиска секретов, утекших в Slack.
В дополнение к Red Team, 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>