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

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

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

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

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

Категории

Все категории
Loading categories
Octopus — Открытый исходный код C2-сервера предоперационной подготовки на основе Python и PowerShell | Kitploit
Инструменты/GitHubGitHub/mhaskar/octopus
Инструменты шифрования/дешифрованияГенерация полезной нагрузкиСбор информацииТестирование на ПроникновениеКомандование и УправлениеRed Teaming
GitHubmhaskar/octopus

Octopus

Открытый исходный код C2-сервера предоперационной подготовки на основе Python и PowerShell

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

Популярное

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

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

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

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

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

Что такое Octopus?

Octopus — это C2-сервер с открытым исходным кодом для предварительной эксплуатации (pre-operation), написанный на Python, который может управлять агентом PowerShell через HTTP/S.

Основная цель создания Octopus — использование перед любой операцией red team, когда вместо того, чтобы начинать взаимодействие с полным арсеналом операционных средств и инфраструктуры, можно сначала применить Octopus для атаки на цель и сбора информации, прежде чем начинать саму операцию red team.

Octopus работает очень простым способом: выполняет команды и обменивается информацией с C2 по хорошо зашифрованному каналу, что делает его незаметным и необнаруживаемым практически для любого антивируса, системы защиты конечных точек и решения мониторинга сети.

Одной из интересных функций Octopus является ESA (Endpoint Situational Awareness), которая собирает важную информацию о цели, помогая лучше понять состояние конечных точек сети противника, с которыми вы столкнётесь во время операции. Это позволяет адаптировать реальную операцию на основе полученных данных.

Octopus спроектирован скрытным и незаметным при связи с C2: по умолчанию используется AES-256 для зашифрованного канала между агентом PowerShell и сервером C2. Также можно использовать SSL/TLS, предоставив действующий сертификат для вашего домена и настроив сервер C2 Octopus на его использование.

Ключевые возможности Octopus

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

  • Управление агентами через HTTP/S.
  • Выполнение системных команд.
  • Загрузка / выгрузка файлов.
  • Загрузка внешних модулей PowerShell.
  • Использование зашифрованных каналов (AES-256) между C2 и агентами.
  • Использование незаметных методов для выполнения команд и передачи результатов.
  • Создание нескольких пользовательских слушателей для каждой цели.
  • Генерация различных типов полезных нагрузок.
  • Поддержка всех версий Windows с PowerShell 2.0 и выше.
  • Запуск исполняемого агента Windows Octopus без обращения к процессу powershell.exe.
  • Автоматический сбор информации с конечной точки (функция endpoint situational awareness).

Требования

Вы можете установить все зависимости Octopus с помощью:

pip install -r requirements.txt

Вам необходимо установить nasm для Linux и компилятор mingw-w64 для использования функции shellcoding и агента со спуфированными аргументами.

Установить nasm в дистрибутивах на основе Debian можно так:

apt install nasm

А установить mingw-w64 в дистрибутивах на основе Debian можно так:

apt install mingw-w64

Octopus протестирован на следующих операционных системах:

  • Ubuntu (18.04)
  • Ubuntu (16.04)
  • Kali Linux (2019.2)

Также потребуется установить mono, чтобы гарантировать успешную компиляцию C# исходного кода.

Octopus зависит от бинарного файла mono-csc для компиляции C# исходника; установить его можно командой apt install mono-devel, что протестировано на Kali и Ubuntu 16.04.

вы можете использовать Octopus без установки mono, но тогда команда generate_exe будет недоступна.

Также обратите внимание, что компиляция C# зависит от сборки System.Management.Automation.dll с SHA1-хешем a43ed886b68c6ee913da85df9ad2064f1d81c470.

Если у вас возникнут какие-либо проблемы при использовании Octopus, смело сообщайте о них в баг-репорт!

Установка

Прежде всего загрузите последнюю версию Octopus с помощью следующей команды:

git clone https://github.com/mhaskar/Octopus/

Затем установите зависимости с помощью команды:

pip install -r requirements.txt

После этого вы можете запустить сервер Octopus, выполнив:

./octopus.py

После запуска вы увидите следующее:

┌─[askar@hackbook]─[/opt/redteaming/Octopus]
└──╼ $python3 octopus.py



      ___           ___                       ___           ___         ___           ___
     /  /\         /  /\          ___        /  /\         /  /\       /__/\         /  /\
    /  /::\       /  /:/         /  /\      /  /::\       /  /::\      \  \:\       /  /:/_
   /  /:/\:\     /  /:/         /  /:/     /  /:/\:\     /  /:/\:\      \  \:\     /  /:/ /\
  /  /:/  \:\   /  /:/  ___    /  /:/     /  /:/  \:\   /  /:/~/:/  ___  \  \:\   /  /:/ /::\
 /__/:/ \__\:\ /__/:/  /  /\  /  /::\    /__/:/ \__\:\ /__/:/ /:/  /__/\  \__\:\ /__/:/ /:/\:\
 \  \:\ /  /:/ \  \:\ /  /:/ /__/:/\:\   \  \:\ /  /:/ \  \:\/:/   \  \:\ /  /:/ \  \:\/:/~/:/
  \  \:\  /:/   \  \:\  /:/  \__\/  \:\   \  \:\  /:/   \  \::/     \  \:\  /:/   \  \::/ /:/
   \  \:\/:/     \  \:\/:/        \  \:\   \  \:\/:/     \  \:\      \  \:\/:/     \__\/ /:/
    \  \::/       \  \::/          \__\/    \  \::/       \  \:\      \  \::/        /__/:/
     \__\/         \__\/                     \__\/         \__\/       \__\/         \__\/


                    v1.2 stable !


 Octopus C2 | Control your shells


Octopus >>

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

Пользоваться Octopus довольно просто: нужно лишь запустить слушатель и сгенерировать агента на основе информации этого слушателя.

Вы можете создать столько слушателей, сколько потребуется, а затем начать взаимодействие с подключившимися к ним агентами.

Настройка профиля

Перед началом использования Octopus необходимо настроить профиль обработки URL, который будет управлять поведением и функциями C2. Поскольку Octopus — это HTTP-основанный C2, он использует URL для обработки соединений. Чтобы гарантировать, что URL не станут сигнатурами или индикаторами компрометации (IoC) в атакуемой сети, URL можно легко настраивать и переименовывать по необходимости.

В настоящее время настройка профиля поддерживает только обработку URL, значение auto_kill и заголовки.

Настройка вашего профиля

Для начала настройки профиля отредактируйте файл profile.py, который содержит несколько ключевых переменных:

  • file_reciever_url: обрабатывает загрузку файлов.
  • report_url: обрабатывает отчёты ESA.
  • command_send_url: обрабатывает команды, которые будут отправлены цели.
  • command_receiver_url: обрабатывает команды, которые будут выполнены на цели.
  • first_ping_url: обрабатывает первое соединение от цели.
  • server_response_header: этот заголовок будет отображаться в каждом ответе.
  • auto_kill: переменная, управляющая тем, когда агент будет убит после N неудачных подключений к C2.

Пример:

#!/usr/bin/python3

# this is the web listener profile for Octopus C2
# you can customize your profile to handle a specific URLs to communicate with the agent
# TODO : add the ability to customize the request headers

# handling the file downloading
# Ex : /anything
# Ex : /anything.php
file_receiver_url = "/messages"


# handling the report generation
# Ex : /anything
# Ex : /anything.php
report_url = "/calls"

# command sending to agent (store the command will be executed on a host)
# leave <hostname> as it with the same format
# Ex : /profile/<hostname>
# Ex : /messages/<hostname>
# Ex : /bills/<hostname>
command_send_url = "/view/<hostname>"


# handling the executed command
# Ex : /anything
# Ex : /anything.php
command_receiver_url = "/bills"


# handling the first connection from the agent
# Ex : /anything
# Ex : /anything.php
first_ping_url = "/login"

# will return in every response as Server header
server_response_header = "nginx"

# will return white page that includes HTA script
mshta_url = "/hta"

# auto kill value after n tries

auto_kill = 10


Агент и слушатели будут настроены на использование этого профиля для связи друг с другом. Далее нам нужно узнать, как создать слушателя.

Слушатели

В Octopus есть два основных слушателя: «http listener» и «https listener», и их параметры в основном идентичны.

HTTP-слушатель:

Команда listen_http принимает следующие аргументы для запуска:

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