SMB

Server Message Block( SMB) é um protocolo cliente-servidor que regula o acesso a arquivos e diretórios inteiros e outros recursos de rede, como impressoras, roteadores ou interfaces liberadas para a rede.

  • Nmap

sudo nmap <FQDN/IP> -sV -sC -p139,445
  • SMBclient - Conectando ao Compartilhamento

smbclient -N -L //<FQDN/IP>
  • Conectar-se a um compartilhamento

smbclient //<FQDN/IP>/notes
  • O Smbclient também nos permite executar comandos do sistema local usando um ponto de exclamação no início ( !<cmd>) sem interromper a conexão.

  • RPCclient

rpcclient -U "" <FQDN/IP>

O rpcclientnos oferece muitas requisições diferentes com as quais podemos executar funções específicas no servidor SMB para obter informações.

Consulta

Descrição

srvinfo

Informação do servidor.

enumdomains

Enumere todos os domínios implantados na rede.

querydominfo

Fornece informações de domínio, servidor e usuário de domínios implantados.

netshareenumall

Enumera todos os compartilhamentos disponíveis.

netsharegetinfo <share>

Fornece informações sobre um compartilhamento específico.

enumdomusers

Enumera todos os usuários do domínio.

queryuser <RID>

Fornece informações sobre um usuário específico.

  • Força bruta de RIDs de usuários

for i in $(seq 500 1100);do rpcclient -N -U "" <FQDN/IP> -c "queryuser 0x$(printf '%x\n' $i)" | grep "User Name\|user_rid\|group_rid" && echo "";done
  • Uma alternativa para isso seria um script Python da Impacket chamado samrdump.py .

  • Impacket - Samrdump.py

samrdump.py <FQDN/IP>
  • Informações que podemos obter com rpcclienttambém podem ser obtidas usando outras ferramentas.

  • SMBmap

smbmap -H <FQDN/IP>
  • CrackMapExec

crackmapexec smb <FQDN/IP> --shares -u '' -p ''
  • Enum4Linux-ng - Instalação

git clone https://github.com/cddmp/enum4linux-ng.git
cd enum4linux-ng
pip3 install -r requirements.txt
  • Enum4Linux-ng - Enumeração

./enum4linux-ng.py <FQDN/IP> -A

Precisamos usar mais de duas ferramentas para enumeração. Porque pode acontecer que, devido à programação das ferramentas, obtenhamos informações diferentes que temos que verificar manualmente. Portanto, nunca devemos confiar apenas em ferramentas automatizadas onde não sabemos precisamente como foram escritas.

Last updated