Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
SlackShell — PowerShell в Slack C2 | Kitploit
Инструменты/GitHubGitHub/bkup/slackshell
Пост-эксплуатацияТестирование на ПроникновениеКомандование и УправлениеRed TeamingИнструмент Удаленного ДоступаРазработка Полезной Нагрузки
GitHubbkup/slackshell

SlackShell

PowerShell в Slack C2

Репозиторий
1072018 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

SlackShell

Описание и журнал изменений

v1.0

Этот модуль PowerShell включает различные функции, использующие Slack API для создания канала управления и контроля. Основная функция Start-Shell подключается к указанному пользователем каналу Slack и выполняет аутентификацию с помощью предоставленного токена аутентификации API для заданной команды Slack и пользователя. Любая команда, введенная в канал, затем будет выполнена (в PowerShell) на хосте.

Проект SlackShell требует PowerShell версии 3 и выше из-за использования Invoke-RestMethod для вызовов API. Дальнейшая разработка будет продолжать использовать текущие командлеты и функции PowerShell. Однако версия для PowerShell v2 была создана в SlackShell-Poshv2.psm1.

v1.1

Дополнительные PS-скрипты могут быть импортированы в текущий сеанс путем их предварительной загрузки в канал Slack. Функция импорта загружает файлы, которые по умолчанию размещены на https://slack-files.com, и импортирует их в память. Файлы не сохраняются на диске. И наоборот, функция загрузки может использоваться для сохранения локальной копии любого файла на диск.

Локальные файлы могут быть загружены в канал Slack через API с помощью функции загрузки.

При необходимости можно запустить отдельный процесс PS для выполнения команды с использованием встроенного командлета Invoke-Command.

Функции

Start-Shell

Запускает мониторинг канала Slack для поиска команд, которые будут выполняться в PowerShell. Подключается к каналу Slack каждые $sleep секунд и извлекает все новые команды. Команды будут выполнены на хосте в PowerShell.

Send-Message

Отправляет сообщение в указанный канал Slack через API. Сообщения отправляются с текстовым заголовком, а основной текст сообщения представляет собой вложение Slack.

Invoke-Job

Запускает новый процесс и выполняет команду в PowerShell на хосте. Использует метод Start-Job в PowerShell для создания нового процесса, ожидает завершения задания и возвращает вывод.

Invoke-Command

Выполняет команду в PowerShell на хосте в текущем контексте запущенного процесса и возвращает вывод.

Get-SlackMessage

Возвращает все сообщения в указанном канале Slack от самого старого периода до настоящего времени. Сообщения возвращаются в формате JSON в соответствии со спецификациями API.

Test-Connection

Использует вызов Slack API для проверки, действителен ли предоставленный токен API.

Get-FileList

Использует вызов Slack API для возврата списка файлов, размещенных в данный момент в канале Slack.

Import-File

Обновляет список файлов, затем загружает указанный файл в память, создает новый модуль и импортирует его. Команды, специфичные для этого модуля, затем могут вводиться напрямую в канал Slack. Загруженный файл не сохраняется на диске. Эта функция считается бета-версией, пока проводится дополнительное тестирование. Некоторые модули работают нестабильно.

Receive-File

Обновляет список файлов, затем загружает указанный файл на диск. Можно указать дополнительный путь для сохранения; по умолчанию используется текущее расположение.

Send-File

Загружает локальный файл в канал Slack.

Ключевые параметры

Token

Токен API, используемый для аутентификации. Этот токен представляет конкретного пользователя в конкретной команде Slack. Более подробную информацию можно найти здесь: https://api.slack.com/custom-integrations/legacy-tokens

Channel

Идентификатор канала, указывающий, какой канал Slack в команде будет использоваться. Весь текст в этом канале будет обрабатываться как команды на хосте при запуске Start-Shell. ID канала можно найти в URL при доступе к странице канала через веб-интерфейс Slack.

Пример: https://slackteam1.slack.com/messages/ABC123456. ID канала — "ABC123456".

Использование

Import-Module ./SlackShell.psm1

Start-Shell -Token "xoxp-175828824580-175707545555-176600001223-826315a84e533c482bb7e20e8312fh45k" -Channel "ABC123456" -Sleep 5

Присоединитесь к тому же каналу Slack от имени другого пользователя, отличного от того, который использовался для создания токена. Все, что написано в канале другим пользователем, будет выполнено на хосте в том же контексте локального пользователя, который использовался для запуска скрипта. В качестве альтернативы можно использовать «runjob» для выполнения команд во вновь созданном процессе PowerShell.

Зарезервированные команды оболочки (в канале Slack)

exit

Закрывает оболочку и соединение.

cd <путь>

Изменяет каталог в контексте основного процесса. Можно использовать относительные пути (например, cd ..).

sleep <число>

Изменяет время паузы.

files

Выводит список доступных файлов в связанном канале Slack.

import <имя_файла>

Импортирует указанный файл. Файл должен быть опубликован в используемом канале Slack.

download <имя_файла> <путь>

Загружает указанный файл на диск и сохраняет его в указанном (необязательно) пути. Файл должен быть опубликован в используемом канале Slack.

upload <локальный_файл>

Загружает локальный файл в Slack и публикует его в используемом канале.

runjob <команда>

Выполняет указанную команду в новом процессе PowerShell.

Благодарности

Вдохновение для работы с Slack API в PowerShell приписывается Уоррену Фрейму (Warren Frame). Его репозиторий стал отличным ресурсом для начала: https://github.com/RamblingCookieMonster/PSSlack

Особая благодарность @thesubtlety за портирование на POSHv2 и добавленные улучшения.

Скачать инструмент