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

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

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

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

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

Категории

Все категории
Loading categories
PySQLRecon — Наступательный инструментарий для MSSQL, написанный на Python, основанный на SQLRecon | Kitploit
Инструменты/GitHubGitHub/tw1sm/pysqlrecon
ЭксплуатацияПост-эксплуатацияТестирование на ПроникновениеКомандование и УправлениеRed TeamingБезопасность Баз Данных
GitHubtw1sm/pysqlrecon

PySQLRecon

Наступательный инструментарий для MSSQL, написанный на Python, основанный на SQLRecon

Репозиторий
212163 месяцев назадПроверено Kitploit

Популярное

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

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

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

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

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

PySQLRecon

Python PyPi

PySQLRecon — это Python-порт замечательного проекта SQLRecon от @sanjivkawa. Список возможностей см. в разделе команды.

Статья о демонстрации SCCM TAKEOVER-1 с помощью PySQLRecon.

Установка

PySQLRecon можно установить с помощью pip3 install pysqlrecon или клонировав этот репозиторий и выполнив pip3 install .

Команды

Все основные модули из SQLRecon имеют эквивалентные команды. Команды, отмеченные [PRIV], требуют повышенных привилегий или прав sysadmin для выполнения. Команды, отмеченные [NORM], скорее всего могут выполняться обычными пользователями и не требуют повышенных привилегий.

Поддержка олицетворения ([I]) или выполнения на связанных серверах ([L]) обозначена в конце описания команды.

root@kitploit:~
adsi                 [PRIV] Получить учетные данные ADSI с ADSI связанного сервера [I,L]
agentcmd             [PRIV] Выполнить системную команду, используя задания агента [I,L]
agentstatus          [PRIV] Получить информацию о статусе агента SQL и заданиях [I,L]
checkrpc             [NORM] Проверить статус RPC связанных серверов [I,L]
clr                  [PRIV] Загрузить и выполнить сборку .NET в хранимой процедуре [I,L]
columns              [NORM] Получить список столбцов в таблице [I,L]
databases            [NORM] Получить список баз данных на сервере [I,L]
disableclr           [PRIV] Отключить интеграцию CLR [I,L]
disableole           [PRIV] Отключить процедуры OLE-автоматизации [I,L]
disablerpc           [PRIV] Отключить RPC и RPC Out на связанном сервере [I]
disablexp            [PRIV] Отключить xp_cmdshell [I,L]
enableclr            [PRIV] Включить интеграцию CLR [I,L]
enableole            [PRIV] Включить процедуры OLE-автоматизации [I,L]
enablerpc            [PRIV] Включить RPC и RPC Out на связанном сервере [I]
enablexp             [PRIV] Включить xp_cmdshell [I,L]
impersonate          [NORM] Получить список пользователей, которых можно олицетворить
info                 [NORM] Собрать информацию о SQL-сервере
links                [NORM] Получить список связанных серверов [I,L]
olecmd               [PRIV] Выполнить системную команду с помощью процедур OLE-автоматизации [I,L]
query                [NORM] Выполнить произвольный SQL-запрос [I,L]
rows                 [NORM] Получить количество строк в таблице [I,L]
sample               [NORM] Выполнить выборку данных из таблицы [I,L]
sccm                 [SUBM] Подмодуль для специфических команд SCCM
search               [NORM] Поиск имени столбца в таблице [I,L]
smb                  [NORM] Принудить аутентификацию NetNTLM через xp_dirtree [I,L]
tables               [NORM] Получить список таблиц в базе данных [I,L]
users                [NORM] Получить список пользователей с доступом к базе данных [I,L]
whoami               [NORM] Получить информацию о текущем пользователе, сопоставленном пользователе и ролях [I,L]
xpcmd                [PRIV] Выполнить системную команду с помощью xp_cmdshell [I,L]

Команды SCCM

Команды SCCM можно найти, запустив pysqlrecon [OPTIONS] sccm -h (для работы необходимо указать обязательные глобальные флаги — см. использование)

root@kitploit:~
addadmin             [PRIV] Повысить привилегии учетной записи до полного администратора [I]
credentials          [NORM] Отобразить зашифрованные учетные данные [I]
logons               [NORM] Отобразить клиенты SCCM и последнего вошедшего пользователя [I]
removeadmin          [PRIV] Удалить повышенную учетную запись или повышенные привилегии [I]
sites                [NORM] Собрать информацию о сайте SCCM [I]
taskdata             [NORM] Расшифровать последовательности задач [I]
tasklist             [NORM] Отобразить последовательности задач [I]
users                [NORM] Получить список пользователей SCCM [I]

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

PySQLRecon имеет глобальные опции (доступные для любой команды), при этом некоторые команды вводят дополнительные флаги. Все глобальные опции должны быть указаны до имени команды:

root@kitploit:~
pysqlrecon [GLOBAL_OPTS] COMMAND [COMMAND_OPTS]

Просмотр глобальных опций:

root@kitploit:~
pysqlrecon --help

Просмотр опций конкретной команды:

root@kitploit:~
pysqlrecon [GLOBAL_OPTS] COMMAND --help

Измените базу данных, для которой выполняется аутентификация или которая используется в некоторых командах PySQLRecon (query, tables, columns, rows), с помощью флага --database.

Направьте выполнение команды PySQLRecon на связанный сервер (вместо SQL-сервера, к которому выполняется аутентификация) с помощью флага --link.

Олицетворите учетную запись пользователя при выполнении команды PySQLRecon с помощью флага --impersonate.

--link и --impersonate несовместимы.

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

PySQLRecon можно использовать с proxychains для использования ретранслированной аутентификации, направленной на службу mssql://. Из-за особенностей сессий ntlmrelayx параметр --database не будет учитываться при запуске PySQLRecon (ретранслированная сессия всегда будет подключена к базе данных master). Это может быть важно, особенно при использовании модулей SCCM, которые требуют указания базы данных сайта. Чтобы это исправить, сначала измените контекст базы данных с помощью модуля query (это сохранится при любом последующем использовании PySQLRecon в той же ретранслированной сессии). Пример:

root@kitploit:~
proxychains4 pysqlrecon -t <target> -d <DOMAIN> -u <username> -p FAKE query --query 'use new_db_name'

Теперь вы можете запускать модули/запросы, которые обращаются к ресурсам в этой конкретной базе данных, даже без указания --database, в той же сессии ntlmrelayx.

Разработка

pysqlrecon использует uv для управления зависимостями. Установка из исходников и настройка для разработки:

root@kitploit:~
# Install uv
curl -LsSf https://astral.sh/uv/install.sh | sh

# Install pysqlrecon
git clone https://github.com/tw1sm/pysqlrecon
cd pysqlrecon
uv sync
uv run pysqlrecon --help

Добавление команды

PySQLRecon легко расширяется — см. шаблон и инструкции в resources

TODO

  • Добавить команды SCCM из SQLRecon
  • Добавить поддержку Azure SQL DB?

Ссылки и благодарности

  • Impacket
  • @sanjivkawa за проект SQLRecon
  • https://securityintelligence.com/x-force/databases-beware-abusing-microsoft-sql-server-with-sqlrecon/
  • https://gist.github.com/skahwah/a585e176e4a5cf319b0c759637f5c410
  • Также обратите внимание на MSSqlPwner — другие наступательные возможности MSSQL на Python
  • PXEThief
Скачать инструмент