rpcclient enumeration
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Identificadores Relativos (RID) e Identificadores de Segurança (SID) são componentes chave nos sistemas operacionais Windows para identificar e gerenciar objetos, como usuários e grupos, dentro de um domínio de rede.
SIDs servem como identificadores únicos para domínios, garantindo que cada domínio seja distinguível.
RIDs são anexados aos SIDs para criar identificadores únicos para objetos dentro desses domínios. Essa combinação permite um rastreamento e gerenciamento precisos das permissões de objetos e controles de acesso.
Por exemplo, um usuário chamado pepe
pode ter um identificador único combinando o SID do domínio com seu RID específico, representado em formatos hexadecimal (0x457
) e decimal (1111
). Isso resulta em um identificador completo e único para pepe dentro do domínio como: S-1-5-21-1074507654-1937615267-42093643874-1111
.
O utilitário rpcclient
do Samba é utilizado para interagir com pontos finais RPC através de pipes nomeados. Abaixo estão os comandos que podem ser emitidos para as interfaces SAMR, LSARPC e LSARPC-DS após uma sessão SMB ser estabelecida, frequentemente necessitando de credenciais.
Para obter Informações do Servidor: o comando srvinfo
é utilizado.
Usuários podem ser listados usando: querydispinfo
e enumdomusers
.
Detalhes de um usuário por: queryuser <0xrid>
.
Grupos de um usuário com: queryusergroups <0xrid>
.
O SID de um usuário é recuperado através de: lookupnames <username>
.
Aliases de usuários por: queryuseraliases [builtin|domain] <sid>
.
Grupos por: enumdomgroups
.
Detalhes de um grupo com: querygroup <0xrid>
.
Membros de um grupo através de: querygroupmem <0xrid>
.
Grupos de alias por: enumalsgroups <builtin|domain>
.
Membros de um grupo de alias com: queryaliasmem builtin|domain <0xrid>
.
Domínios usando: enumdomains
.
O SID de um domínio é recuperado através de: lsaquery
.
Informações do domínio são obtidas por: querydominfo
.
Todos os compartilhamentos disponíveis por: netshareenumall
.
Informações sobre um compartilhamento específico são obtidas com: netsharegetinfo <share>
.
SIDs por nome usando: lookupnames <username>
.
Mais SIDs através de: lsaenumsid
.
Ciclo RID para verificar mais SIDs é realizado por: lookupsids <sid>
.
Comando | Interface | Descrição |
queryuser | SAMR | Recuperar informações do usuário |
querygroup | Recuperar informações do grupo | |
querydominfo | Recuperar informações do domínio | |
enumdomusers | Enumerar usuários do domínio | |
enumdomgroups | Enumerar grupos do domínio | |
createdomuser | Criar um usuário do domínio | |
deletedomuser | Deletar um usuário do domínio | |
lookupnames | LSARPC | |
lookupsids | ||
lsaaddacctrights | Adicionar direitos a uma conta de usuário | |
lsaremoveacctrights | Remover direitos de uma conta de usuário | |
dsroledominfo | LSARPC-DS | Obter informações do domínio primário |
dsenumdomtrusts | Enumerar domínios confiáveis dentro de uma floresta AD |
Para entender melhor como as ferramentas samrdump e rpcdump funcionam, você deve ler Pentesting MSRPC.
Procurar nomes de usuários para valores SID
Procurar SIDs para nomes de usuários (ciclo RID)
Aprenda e pratique Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprenda e pratique Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)