Az - Bancos de Dados PostgreSQL
Reading time: 6 minutes
tip
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Aprenda e pratique Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Support HackTricks
- Confira os planos de assinatura!
- Junte-se ao 💬 grupo do Discord ou ao grupo do telegram ou siga-nos no Twitter 🐦 @hacktricks_live.
- Compartilhe truques de hacking enviando PRs para o HackTricks e HackTricks Cloud repositórios do github.
Azure PostgreSQL
Azure Database for PostgreSQL é um serviço de banco de dados relacional totalmente gerenciado baseado na edição comunitária do PostgreSQL. Ele é projetado para fornecer escalabilidade, segurança e flexibilidade para diversas necessidades de aplicativos. Semelhante ao Azure MySQL, o PostgreSQL oferece dois modelos de implantação:
- Servidor Único (em caminho de aposentadoria):
- Otimizado para implantações de PostgreSQL simples e econômicas.
- Possui backups automatizados, monitoramento básico e alta disponibilidade.
- Ideal para aplicativos com cargas de trabalho previsíveis.
- Servidor Flexível:
- Oferece maior controle sobre a gestão e configuração do banco de dados.
- Suporta alta disponibilidade, tanto na mesma zona quanto entre zonas.
- Possui escalabilidade elástica, manutenção automatizada e funcionalidade de economia de custos.
- Permite iniciar e parar o servidor para otimizar custos.
Principais Recursos
- Janelas de Manutenção Personalizadas: Agende atualizações para minimizar interrupções.
- Monitoramento Ativo: Acesse métricas e logs detalhados para rastrear e melhorar o desempenho do banco de dados.
- Parar/Iniciar Servidor: Os usuários podem parar e iniciar o servidor.
- Backups Automáticos: Backups diários integrados com períodos de retenção configuráveis de até 35 dias.
- Acesso Baseado em Funções: Controle as permissões dos usuários e o acesso administrativo através do Azure Active Directory.
- Segurança e Rede: pode gerenciar regras de firewall do servidor para acesso seguro ao banco de dados e desanexar configurações de rede virtual conforme necessário.
- Identidades Gerenciadas: permitem que seu servidor autentique com segurança outros serviços do Azure sem armazenar credenciais. Permitem acessar outros serviços que teriam identidade gerenciada atribuída pelo sistema e serem acessados por outros serviços com outras identidades, que é a identidade gerenciada atribuída pelo usuário.
Enumeração
# List servers in a resource group
az postgres flexible-server list --resource-group <resource-group-name>
# List databases in a flexible-server
az postgres flexible-server db list --resource-group <resource-group-name> --server-name <server_name>
# Show specific details of a Postgre database
az postgres flexible-server db show --resource-group <resource-group-name> --server-name <server_name> --database-name <database_name>
# List firewall rules of the a server
az postgres flexible-server firewall-rule list --resource-group <resource-group-name> --name <server_name>
# List parameter values for a felxible server
az postgres flexible-server parameter list --resource-group <resource-group-name> --server-name <server_name>
# List private link
az postgres flexible-server private-link-resource list --resource-group <resource-group-name> --server-name <server_name>
# List all ad-admin in a server
az postgres flexible-server ad-admin list --resource-group <resource-group-name> --server-name <server_name>
# List all user assigned managed identities from the server
az postgres flexible-server identity list --resource-group <resource-group-name> --server-name <server_name>
# List the server backups
az postgres flexible-server backup list --resource-group <resource-group-name> --name <server_name>
# List all read replicas for a given server
az postgres flexible-server replica list --resource-group <resource-group-name> --name <server_name>
# List migrations
az postgres flexible-server migration list --resource-group <resource-group-name> --name <server_name>
# Get the server's advanced threat protection setting
az postgres flexible-server advanced-threat-protection-setting show --resource-group <resource-group-name> --name <server_name>
# List all of the maintenances of a flexible server
az postgres flexible-server maintenance list --resource-group <resource-group-name> --server-name <server_name>
# List log files for a server.
az postgres flexible-server server-logs list --resource-group <resource-group-name> --server-name <server_name>
Conexão
Com a extensão rdbms-connect você pode acessar o banco de dados com:
az postgres flexible-server connect -n <server-name> -u <username> -p <password> --interactive
#or execute commands
az postgres flexible-server execute \
-n <server-name> \
-u <username> \
-p "<password>" \
-d <database-name> \
--querytext "SELECT * FROM <table-name>;"
Ou
psql -h testpostgresserver1994.postgres.database.azure.com -p 5432 -U adminuser <database-name>
Referências
- https://learn.microsoft.com/en-us/azure/postgresql/
- https://learn.microsoft.com/en-us/azure/postgresql/flexible-server/service-overview
- https://learn.microsoft.com/en-us/azure/postgresql/flexible-server/overview
Escalação de Privilégios
Pós Exploração
Az - PostgreSQL Post Exploitation
ToDo
- Procure uma maneira de acessar com ad-admin para verificar se é um método de privesc
tip
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Aprenda e pratique Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Support HackTricks
- Confira os planos de assinatura!
- Junte-se ao 💬 grupo do Discord ou ao grupo do telegram ou siga-nos no Twitter 🐦 @hacktricks_live.
- Compartilhe truques de hacking enviando PRs para o HackTricks e HackTricks Cloud repositórios do github.