
Набор инструментов C# для MS SQL, предназначенный для наступательной разведки и пост-эксплуатации.
SQLRecon — это набор инструментов Microsoft SQL Server, предназначенный для наступательной разведки и постэксплуатации. Подробную информацию о каждом методе можно найти в вики.
Вы можете скачать копию SQLRecon со страницы релизов. Кроме того, можете скомпилировать решение самостоятельно. Для этого достаточно склонировать репозиторий, дважды щелкнуть файл решения и выполнить сборку.
Рекомендации по предотвращению, обнаружению и смягчению последствий также предоставлены для всех защитников.
Ознакомьтесь с моей статьей на сайте IBM Security Intelligence. Если предпочитаете видео, то посмотрите мою презентацию на Black Hat.
Модули перечисления не требуют указания поставщика аутентификации. Эти модули должны передаваться в флаг модуля перечисления (/e:, /enum:). В вики есть подробности об использовании модулей перечисления.```
Info - Show information about the SQL server.
/h:, /host -> SQL server hostname or IP. Multiple hosts supported.
/port: -> (OPTIONAL) Defaults to 1434 (UDP).
/t:, timeout: -> (OPTIONAL) Defaults to 3s.
SqlSpns - Use the current user token to enumerate the AD domain for MSSQL SPNs. /d:, /domain: -> (OPTIONAL) NETBIOS name or FQDN of domain.
# Провайдеры аутентификации
SQLRecon поддерживает разнообразный набор провайдеров аутентификации (`/a:, /auth:`) для взаимодействия с Microsoft SQL Server.```
WinToken - Use the current users token to authenticate against the SQL database
/h:, /host: -> SQL server hostname or IP
WinDomain - Use AD credentials to authenticate against the SQL database
/h:, /host: -> SQL server hostname or IP. Multiple hosts supported.
/d:, /domain: -> NETBIOS name or FQDN of domain.
/u:, /username: -> Username for domain user.
/p:, /password: -> Password for domain user.
Local - Use local SQL credentials to authenticate against the SQL database
/h:, /host: -> SQL server hostname or IP. Multiple hosts supported.
/u:, /username: -> Username for local SQL user.
/p:, /password: -> Password for local SQL user.
EntraID - Use Azure EntraID credentials to authenticate against the Azure SQL database
/h:, /host: -> SQL server hostname or IP. Multiple hosts supported.
/d:, /domain: -> FQDN of domain (DOMAIN.COM).
/u:, /username: -> Username for domain user.
/p:, /password: -> Password for domain user.
AzureLocal - Use local SQL credentials to authenticate against the Azure SQL database
/h:, /host: -> SQL server hostname or IP. Multiple hosts supported.
/u:, /username: -> Username for local SQL user.
/p:, /password: -> Password for local SQL user.
Pth - Authenticate using an NT hash (pass-the-hash) over raw TDS/NTLM. Elevated privileges or SeImpersonate is not required.
/h:, /host: -> SQL server hostname or IP. Multiple hosts supported.
/d:, /domain: -> NETBIOS domain name.
/u:, /username: -> Domain username.
/hash: -> NT hash (32 hex chars, 8846f7eaee8fb117ad06bdd830b7586c) or LM:NT format.
/h:, host:) обязателен и указывает один или несколько SQL-серверов. Чтобы выполнить модуль для нескольких SQL-серверов, перечислите хосты через запятую, например /h:SQL01,10.10.10.2,SQL03.master, однако это можно изменить, указав имя пользовательской базы данных через флаг database (/database:)./debug необязателен и отображает все SQL-запросы, выполняемые модулем, без их фактического выполнения на удалённых хостах. Пример можно найти в вики.1433 по умолчанию, однако это можно изменить с помощью флага /port:.3 секунды, однако это значение можно изменить, указав значение тайм-аута (/t:, /timeout:), которое соответствует количеству секунд до завершения попытки подключения./v, /verbose необязателен и отображает все SQL-запросы, выполняемые модулем, перед их выполнением на удалённых хостах. Пример можно найти в вики.Обратите внимание, что поставщик аутентификации EntraID требует, чтобы на системе, с которой выполняется SQLRecon, существовала библиотека аутентификации Azure Active Directory (ADAL) или библиотека аутентификации Microsoft (MSAL). Это необходимо для функциональности аутентификации и авторизации Azure EntraID.
Модули SQL выполняются для одного или нескольких экземпляров Microsoft SQL Server. Эти модули необходимо передать через флаг модуля (/m:, /module:).