mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-27 23:20:49 +00:00
Translated ['network-services-pentesting/pentesting-mssql-microsoft-sql-
This commit is contained in:
parent
400bd5034f
commit
78a7e9e1c1
1 changed files with 18 additions and 18 deletions
|
@ -2,12 +2,12 @@
|
|||
|
||||
<details>
|
||||
|
||||
<summary><strong>Aprenda hacking na AWS do zero ao herói com</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
<summary><strong>Aprenda hacking AWS do zero ao herói com</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||||
|
||||
Outras maneiras de apoiar o HackTricks:
|
||||
|
||||
* Se você quiser ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF** Verifique os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
|
||||
* Adquira o [**swag oficial do PEASS & HackTricks**](https://peass.creator-spring.com)
|
||||
* Adquira o [**swag oficial PEASS & HackTricks**](https://peass.creator-spring.com)
|
||||
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
|
||||
* **Junte-se ao** 💬 [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-nos** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **Compartilhe seus truques de hacking enviando PRs para os** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.
|
||||
|
@ -50,7 +50,7 @@ nmap --script ms-sql-info,ms-sql-empty-password,ms-sql-xp-cmdshell,ms-sql-config
|
|||
msf> use auxiliary/scanner/mssql/mssql_ping
|
||||
```
|
||||
{% hint style="info" %}
|
||||
Se **não tiver credenciais**, você pode tentar adivinhá-las. Você pode usar nmap ou metasploit. Tenha cuidado, você pode **bloquear contas** se falhar ao fazer login várias vezes usando um nome de usuário existente.
|
||||
Se você **não tem credenciais**, pode tentar adivinhá-las. Você pode usar nmap ou metasploit. Tenha cuidado, você pode **bloquear contas** se falhar ao fazer login várias vezes usando um nome de usuário existente.
|
||||
{% endhint %}
|
||||
|
||||
#### Metasploit (necessita de credenciais)
|
||||
|
@ -153,13 +153,13 @@ SELECT * FROM sysusers
|
|||
#### Obter Permissões
|
||||
|
||||
1. **Securável:** Definido como os recursos gerenciados pelo SQL Server para controle de acesso. Estes são categorizados em:
|
||||
* **Servidor** – Exemplos incluem bancos de dados, logins, endpoints, grupos de disponibilidade e funções do servidor.
|
||||
* **Banco de Dados** – Exemplos abrangem função do banco de dados, funções de aplicativo, esquema, certificados, catálogos de texto completo e usuários.
|
||||
* **Esquema** – Inclui tabelas, visualizações, procedimentos, funções, sinônimos, etc.
|
||||
* **Servidor** - Exemplos incluem bancos de dados, logins, endpoints, grupos de disponibilidade e funções do servidor.
|
||||
* **Banco de Dados** - Exemplos abrangem função do banco de dados, funções de aplicativo, esquema, certificados, catálogos de texto completo e usuários.
|
||||
* **Esquema** - Inclui tabelas, visualizações, procedimentos, funções, sinônimos, etc.
|
||||
2. **Permissão:** Associada aos securáveis do SQL Server, permissões como ALTER, CONTROL e CREATE podem ser concedidas a um principal. A gestão de permissões ocorre em dois níveis:
|
||||
* Nível do **Servidor** usando logins
|
||||
* Nível do **Banco de Dados** usando usuários
|
||||
3. **Principal:** Este termo refere-se à entidade que recebe permissão para um securável. Os principais incluem principalmente logins e usuários de banco de dados. O controle sobre o acesso aos securáveis é exercido através da concessão ou negação de permissões ou incluindo logins e usuários em funções equipadas com direitos de acesso.
|
||||
3. **Principal:** Este termo refere-se à entidade que recebe permissão para um securável. Principais incluem principalmente logins e usuários de banco de dados. O controle sobre o acesso aos securáveis é exercido através da concessão ou negação de permissões ou incluindo logins e usuários em funções equipadas com direitos de acesso.
|
||||
```sql
|
||||
# Show all different securables names
|
||||
SELECT distinct class_desc FROM sys.fn_builtin_permissions(DEFAULT);
|
||||
|
@ -232,7 +232,7 @@ sudo impacket-smbserver share ./ -smb2support
|
|||
msf> use auxiliary/admin/mssql/mssql_ntlm_stealer
|
||||
```
|
||||
{% hint style="warning" %}
|
||||
Você pode verificar se quem (além dos sysadmins) tem permissão para executar essas funções MSSQL com:
|
||||
Você pode verificar se alguém (além dos sysadmins) tem permissão para executar essas funções MSSQL com:
|
||||
```sql
|
||||
Use master;
|
||||
EXEC sp_helprotect 'xp_dirtree';
|
||||
|
@ -258,7 +258,7 @@ Você pode ver como usar essas ferramentas em:
|
|||
|
||||
### **Escrever Arquivos**
|
||||
|
||||
Para escrever arquivos usando `MSSQL`, nós **precisamos habilitar** [**Procedimentos de Automação Ole**](https://docs.microsoft.com/en-us/sql/database-engine/configure-windows/ole-automation-procedures-server-configuration-option), o que requer privilégios de administrador, e então executar alguns procedimentos armazenados para criar o arquivo:
|
||||
Para escrever arquivos usando `MSSQL`, **precisamos habilitar** [**Procedimentos de Automação Ole**](https://docs.microsoft.com/en-us/sql/database-engine/configure-windows/ole-automation-procedures-server-configuration-option), que requer privilégios de administrador, e então executar alguns procedimentos armazenados para criar o arquivo:
|
||||
```bash
|
||||
# Enable Ole Automation Procedures
|
||||
sp_configure 'show advanced options', 1
|
||||
|
@ -346,11 +346,11 @@ Para **mais exemplos** confira a [**fonte original**](https://blog.waynesheffiel
|
|||
|
||||
[**Seguindo este link**](../../pentesting-web/sql-injection/mssql-injection.md#mssql-user-defined-function-sqlhttp) para ver um exemplo.
|
||||
|
||||
### Outras maneiras de RCE
|
||||
### Outras maneiras de obter RCE
|
||||
|
||||
Existem outros métodos para obter execução de comandos, como adicionar [procedimentos armazenados estendidos](https://docs.microsoft.com/en-us/sql/relational-databases/extended-stored-procedures-programming/adding-an-extended-stored-procedure-to-sql-server), [Assemblies CLR](https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/sql/introduction-to-sql-server-clr-integration), [Trabalhos do Agente SQL Server](https://docs.microsoft.com/en-us/sql/ssms/agent/schedule-a-job?view=sql-server-ver15) e [scripts externos](https://docs.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sp-execute-external-script-transact-sql).
|
||||
|
||||
## Escalação de Privilégios MSSQL
|
||||
## Escalonamento de Privilégios MSSQL
|
||||
|
||||
### De db\_owner para sysadmin
|
||||
|
||||
|
@ -445,9 +445,9 @@ Invoke-SqlServer-Escalate-ExecuteAs -SqlServerInstance 10.2.9.101 -SqlUser myuse
|
|||
|
||||
## Extraindo senhas dos Servidores Vinculados do SQL Server
|
||||
|
||||
Um atacante pode extrair senhas dos Servidores Vinculados do SQL Server das Instâncias SQL e obtê-las em texto claro, concedendo ao atacante senhas que podem ser usadas para obter uma posição mais forte no alvo. O script para extrair e descriptografar as senhas armazenadas para os Servidores Vinculados pode ser encontrado [aqui](https://www.richardswinbank.net/admin/extract\_linked\_server\_passwords)
|
||||
Um atacante pode extrair as senhas dos Servidores Vinculados do SQL Server das Instâncias SQL e obtê-las em texto claro, concedendo ao atacante senhas que podem ser usadas para obter uma posição mais forte no alvo. O script para extrair e descriptografar as senhas armazenadas para os Servidores Vinculados pode ser encontrado [aqui](https://www.richardswinbank.net/admin/extract\_linked\_server\_passwords)
|
||||
|
||||
Alguros requisitos e configurações devem ser feitos para que esse exploit funcione. Primeiramente, você deve ter direitos de Administrador na máquina, ou a capacidade de gerenciar as Configurações do SQL Server.
|
||||
Alguns requisitos e configurações devem ser feitos para que essa exploração funcione. Em primeiro lugar, você deve ter direitos de Administrador na máquina ou a capacidade de gerenciar as Configurações do SQL Server.
|
||||
|
||||
Após validar suas permissões, você precisa configurar três coisas, que são as seguintes:
|
||||
|
||||
|
@ -457,13 +457,13 @@ Após validar suas permissões, você precisa configurar três coisas, que são
|
|||
|
||||
Para automatizar essas configurações, [este repositório](https://github.com/IamLeandrooooo/SQLServerLinkedServersPasswords/) possui os scripts necessários. Além de ter um script em PowerShell para cada etapa da configuração, o repositório também possui um script completo que combina os scripts de configuração e a extração e descriptografia das senhas.
|
||||
|
||||
Para mais informações, consulte os seguintes links sobre esse ataque: [Descriptografando Senhas de Servidores de Banco de Dados MSSQL](https://www.netspi.com/blog/technical/adversary-simulation/decrypting-mssql-database-link-server-passwords/)
|
||||
Para mais informações, consulte os seguintes links sobre esse ataque: [Descriptografando Senhas de Servidores de Links de Banco de Dados MSSQL](https://www.netspi.com/blog/technical/adversary-simulation/decrypting-mssql-database-link-server-passwords/)
|
||||
|
||||
[Resolvendo problemas de Conexão de Administrador Dedicado do SQL Server](https://www.mssqltips.com/sqlservertip/5364/troubleshooting-the-sql-server-dedicated-administrator-connection/)
|
||||
|
||||
## Escalação de Privilégios Local
|
||||
## Escalação Local de Privilégios
|
||||
|
||||
O usuário executando o servidor MSSQL terá habilitado o token de privilégio **SeImpersonatePrivilege.**\
|
||||
O usuário que executa o servidor MSSQL terá habilitado o token de privilégio **SeImpersonatePrivilege.**\
|
||||
Provavelmente você será capaz de **escalar para Administrador** seguindo uma dessas 2 páginas:
|
||||
|
||||
{% content-ref url="../../windows-hardening/windows-local-privilege-escalation/roguepotato-and-printspoofer.md" %}
|
||||
|
@ -556,8 +556,8 @@ Command: msfconsole -q -x 'use auxiliary/scanner/mssql/mssql_ping; set RHOSTS {I
|
|||
|
||||
Outras maneiras de apoiar o HackTricks:
|
||||
|
||||
* Se você deseja ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF** Verifique os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
|
||||
* Adquira o [**swag oficial do PEASS & HackTricks**](https://peass.creator-spring.com)
|
||||
* Se você deseja ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF** Confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
|
||||
* Adquira o [**swag oficial PEASS & HackTricks**](https://peass.creator-spring.com)
|
||||
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
|
||||
* **Junte-se ao** 💬 [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-nos** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
||||
* **Compartilhe seus truques de hacking enviando PRs para os** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositórios do github.
|
||||
|
|
Loading…
Reference in a new issue