Continuo publicando soluções enviadas para processamento adicional no site da HackTheBox .Neste artigo, coletamos informações sobre a máquina, executamos a pulverização de senha para obter o usuário e também aumentamos nossos direitos do DnsAdmin para o SYSTEM usando uma DLL maliciosa.A conexão ao laboratório é via VPN. É recomendável não conectar-se a partir de um computador de trabalho ou de um host em que os dados importantes estejam disponíveis, pois você acaba em uma rede privada com pessoas que sabem alguma coisa no campo da segurança da informação :)Informações Organizacionais, ,
Telegram . , ,
.
. , - , .
Recon
Esta máquina possui um endereço IP 10.10.10.169, que eu adiciono ao / etc / hosts.10.10.10.169 resolute.htb
Primeiro, examinamos portas abertas. Como leva muito tempo para varrer todas as portas com o nmap, primeiro farei isso com o masscan. Examinamos todas as portas TCP e UDP da interface tun0 a uma velocidade de 500 pacotes por segundo.masscan -e tun0 -p1-65535,U:1-65535 10.10.10.169 --rate=500
O host tem muitas portas abertas. Agora digitalize-os com o nmap para filtrar e selecionar os que você precisa.nmap resolute.htb -p53,88,135,139,389,445,464,593,636,3268,3269,5985,9389,47001,49664,49665,49666,49667,49671,49676,49677,49688,49915
Agora, para obter informações mais detalhadas sobre os serviços que operam nas portas, executaremos uma varredura com a opção -A.nmap -A resolute.htb -p53,88,135,139,389,445,464,593,636,3268,3269,5985,9389,47001,49664,49665,49666,49667,49671,49676,49677,49688,49915

Na saída do nmap, encontramos o nome de domínio megabank.local, que adicionamos ao / etc / hosts. A primeira coisa na inteligência do Windows é uma lista básica. Pessoalmente, ao testar em uma máquina Linux, eu uso o enum4linux.enum4linux -a megabank.local




E entre as informações sobre a política de domínio, usuários, grupo e senha, encontramos um comentário interessante sobre a marca da conta do usuário. O comentário contém sua senha. Mas, depois de fazer login com essas credenciais, falhamos em todos os serviços.DO UTILIZADOR
Como já temos uma senha e uma lista de usuários destacadas no sistema, podemos usar uma das técnicas de Movimento Lateral - Pulverização de Senha. Eu escrevi sobre tudo isso em detalhes aqui . A linha inferior é que tentamos senhas conhecidas para todos os usuários conhecidos.Primeiro de tudo, tentamos classificar através do SMB. Você pode usar o módulo smb_login para o Metasploit Framework para isso.
Nós indicamos os parâmetros necessários.
E encontramos com sucesso o usuário a quem essa senha é adequada.
E verifique as credenciais. Eu prefiro o smbmap, que especifica o usuário, senha, domínio e host.
E temos uma lista de recursos disponíveis. Se você retornar à lista de portas, haverá um serviço WinRM em execução no 5985. Para um trabalho conveniente com esse serviço no linux, você pode usar o Evil-WinRM .
USER2
O Evil-WinRM funciona bem, mas o metterpter ainda é mais conveniente. Felizmente, este programa permite que você especifique um diretório com arquivos do PowerShell ou C # durante a conexão, que será carregado automaticamente na sessão. Geraremos um arquivo do PowerShell que conterá a carga do Meterpreter.
E crie um ouvinte para ouvir a conexão.
Agora estamos conectados ao Evil-WinRM e especificamos um diretório com um script.
Mas depois de iniciar o arquivo com o carregamento, vemos que o script funcionou sem erros, mas não há conexão.
Provavelmente, o script foi bloqueado. Como esse é o PowerShell, é mais provável que você esteja usando o AMSI. Mas o Evil-WinRM possui seus próprios módulos úteis.
Como você pode imaginar, precisamos do primeiro. Vamos aplicar este módulo e executar nosso arquivo com a carga novamente.
E observamos uma conexão bem-sucedida.
Depois de executar os scripts do Recon, ignorando a máquina, encontramos um diretório interessante.
Este é o diretório que armazena o arquivo de texto das sessões gravadas do PowerShell, após o comando "Iniciar-Transcrição". Estamos procurando um arquivo.
Vamos ver o conteúdo.
Portanto, esta é uma sessão de usuário do Ryan. E um pouco mais adiante, encontramos o comando com o qual a senha foi transmitida.
Tentamos credenciais para o serviço WinRM.
E, no final, faça o login como Ryan.RAIZ
E antes de tudo, verificando as informações sobre o usuário atual, encontramos um recurso interessante. Ele é um membro do grupo DnsAdmins.
Isso nos dá a oportunidade de atualizar nossos privilégios para o SYSTEM. Podemos solicitar que você carregue a DLL na próxima vez que o serviço for iniciado. Vamos gerar a DLL que contém a carga do meterpreter.
E execute o ouvinte.
Agora ative o servidor smb. Indicamos o diretório, nome e suporte para a versão 2 do SMB.
Agora, usando o dnscmd, indicaremos qual DLL carregar.
O comando foi concluído com êxito, agora reinicie o serviço DNS.
E após uma reinicialização, vemos uma conexão via SMB.
Bem como uma sessão aberta.
E temos direitos do sistema.Você pode se juntar a nós no Telegram. Lá você encontra materiais interessantes, cursos mesclados e softwares. Vamos montar uma comunidade na qual haverá pessoas versadas em muitas áreas da TI, para que possamos sempre ajudar-nos mutuamente em qualquer problema de segurança da informação e da TI.