Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
msdat — MSDAT: Ferramenta de Ataque a Banco de Dados Microsoft SQL | Kitploit
Ferramentas/GitHubGitHub/quentinhardy/msdat
Escalada de PrivilégiosAtaques de SenhaExploraçãoColeta de InformaçõesTestes de PenetraçãoSegurança de Banco de Dados
GitHubquentinhardy/msdat

msdat

MSDAT: Ferramenta de Ataque a Banco de Dados Microsoft SQL

Ver Repositório
1.0k14528há 3 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
Quentin HARDY
[email protected]
[email protected]

MSDAT

MSDAT (Microsoft SQL Database Attacking Tool - Ferramenta de Ataque a Bancos de Dados Microsoft SQL) é uma ferramenta de teste de penetração de código aberto que testa a segurança de bancos de dados Microsoft SQL remotamente.

Exemplos de uso do MSDAT:

  • Você tem um banco de dados Microsoft ouvindo remotamente e deseja encontrar credenciais válidas para se conectar ao banco de dados
  • Você tem uma conta Microsoft SQL válida em um banco de dados e deseja escalar seus privilégios
  • Você tem uma conta Microsoft SQL válida e deseja executar comandos no sistema operacional que hospeda este BD (ex.: xp_cmdshell, Automação OLE, Trabalhos)

Testado em bancos de dados Microsoft SQL 2005, 2008, 2012, 2014, 2016 e 2019.

Changelog

  • Versão 2.4 (2022/12/28) :
    • 2 novas opções no módulo search: --privs e --privs-full para obter as funções e privilégios do usuário atual (ex.: privilégios de login e banco de dados)
    • 1 nova opção no módulo search: --config para obter configurações e informações do banco de dados (versão, bancos de dados, usuários, usuários desabilitados, procedimentos armazenados, etc.)
  • Versão 2.3 (2022/12/18) :
    • compatível com Microsoft SQL Server 2019
    • nova opção --schema-dump no módulo search para extrair o esquema e salvar em arquivo (exceto para BDs padrão)
    • nova opção --table-dump no módulo search para extrair todas as tabelas e salvar em arquivo (exceto para BDs padrão)
    • nova opção --sql-shell no módulo search para obter um shell SQL pseudo mínimo
  • Versão 2.2 (2022/04/29) :
    • --nmap-file e -l agora podem ser usados no módulo all e no módulo passwordguesser. Você pode fornecer uma lista de alvos com -l ou um arquivo nmap com --nmap-file.
    • Várias correções de bugs
  • Versão 2.1 (2020/03/04) :
    • Opção --nmap-file para carregar todos os serviços mssql de um arquivo XML nmap (python-libnmap precisa estar instalado)
  • Versão 2.0 (2020/03/04) :
    • Python 2 para Python 3: MSDAT agora é compatível apenas com Python 3. Python 2 não é suportado.
    • Opção de separador no módulo password guesser
    • Melhorias na captura de erros na opção --put-file do módulo xpcmdshell
    • Melhorias na opção de shell reverso do módulo jobs
    • Módulo de automação OLE - melhorias na execução de comandos
    • Módulo de automação OLE - shell reverso Powershell implementado
    • nova opção para imprimir lista de trabalhos de agentes e seu código: --print-jobs
  • Versão 1.2 (2020/02/26) :
    • Novo método no módulo xpCmdShell: Fazer upload de um arquivo binário com powershell (--put-file)
    • Melhoria no oleAutomation: fazer upload do arquivo em modo binário em vez de arquivo de texto
  • Versão 1.1 (2019/07/12) :
    • muitas outras credenciais padrão. Obrigado a https://github.com/govolution/betterdefaultpasslist/
  • Versão 1.0 (2017/02/15) :
    • primeira versão lançada

Funcionalidades

Graças ao MSDAT (Microsoft SQL Database Attacking Tool), você pode (lista não exaustiva):

  • obter informações técnicas (ex.: versão do banco de dados) de um banco de dados MSSQL sem estar autenticado
  • carregar um arquivo nnmap para escanear todos os alvos MSSQL
  • procurar contas MSSQL com um ataque de dicionário
  • testar cada login como senha (autenticação necessária)
  • obter um shell do Windows no servidor de banco de dados com
    • xp_cmdshell
    • Automação OLE
    • Trabalhos
  • baixar arquivos remotamente com:
    • Automação OLE
    • bulkinsert
    • openrowset
  • enviar arquivos para o servidor com:
    • Automação OLE
    • openrowset
  • capturar uma autenticação SMB graças a:
    • bulkinsert
    • openrowset
    • xp_dirtree
    • xp_fileexist
    • xp-getfiledetails
  • roubar senhas hashadas do MSSQL, em qualquer versão do MSSQL
  • escanear portas através do banco de dados:
    • openrowset
  • executar consultas SQL em um servidor MSSQL remoto através do banco de dados (alvo) com:
    • bulkinsert
    • openrowset
  • listar arquivos/diretórios com:
    • xp_subdirs
    • xp_dirtree
  • listar unidades/mídias com:
    • xp_fixeddrives
    • xp_availablemedia
  • criar pasta com:
    • xp_create_subdir
  • pesquisar dados sensíveis em tabelas (ex.: credenciais)
  • obter configuração do banco de dados (bancos de dados, usuários, procedimentos armazenados, etc.)
  • extrair informações do esquema e de todas as tabelas
  • executar comandos SQL básicos em um shell SQL pseudo

Instalação

Algumas dependências devem ser instaladas para executar o MSDAT.

No Ubuntu:

sudo apt-get install freetds-dev 

ou baixe o freetds em http://www.freetds.org/

Instale as dependências Python:

sudo pip3 install -r requirements.txt
sudo activate-global-python-argcomplete

ou

sudo pip3 install cython colorlog termcolor pymssql argparse python-libnmap
sudo pip3 install argcomplete && sudo activate-global-python-argcomplete

Adicione "use ntlmv2 = yes" no seu arquivo de configuração do freetds (ex.: /etc/freetds/freetds.conf ou /usr/local/etc/freetds.conf). Exemplo:

[global]
        # TDS protocol version
        tds version = 8.0
        use ntlmv2 = yes

Como começar

python3 msdat.py -h                                                                                                                                                                                                                                                    2 ⨯
usage: msdat.py [-h] [--version]
                {all,mssqlinfo,passwordguesser,passwordstealer,xpcmdshell,jobs,smbauthcapture,oleautomation,bulkopen,xpdirectory,trustworthype,userlikepwd,search,cleaner}
                ...

               _   _  __  __   _  ___ 
              | \_/ |/ _||  \ / \|_ _|
              | \_/ |\_ \| o ) o || | 
              |_| |_||__/|__/|_n_||_| 
                        
------------------------------------------------------
 _   _  __            __           _           ___ 
| \_/ |/ _|         |  \         / \         |_ _|
| \_/ |\_ \         | o )         o |         | | 
|_| |_||__/icrosoft |__/atabase |_n_|ttacking |_|ool 
                        
-------------------------------------------------------

By Quentin Hardy ([email protected])

positional arguments:
  {all,mssqlinfo,passwordguesser,passwordstealer,xpcmdshell,jobs,smbauthcapture,oleautomation,bulkopen,xpdirectory,trustworthype,userlikepwd,search,cleaner}
                        
                        Choose a main command
    all                 to run all modules in order to know what it is possible to do
    mssqlinfo           to get information without authentication
    passwordguesser     to know valid credentials
    passwordstealer     to get hashed passowrds
    xpcmdshell          to get a shell
    jobs                to execute system commands
    smbauthcapture      to capture a SMB authentication
    oleautomation       to read/write file and execute system commands
    bulkopen            to read a file and scan ports
    xpdirectory         to list files/drives and to create directories
    trustworthype       to become sysadmin with the trustwothy database method
    userlikepwd         to try each MSSQL username stored in the DB like the corresponding pwd
    search              to search in column names
    cleaner             clean local traces

optional arguments:
  -h, --help            show this help message and exit
  --version             show program's version number and exit

Exemplos

Módulos

  • Você pode listar todos os módulos:
./msdat.py -h
  • Quando você escolheu um módulo (exemplo: all), pode usá-lo e listar todas as funcionalidades e opções do módulo:
./msdat.py all -h
Baixar ferramenta