HACKING: Root Me, Active Directory -GPO

O desafio envolve analisar o arquivo .pcap com vários protocolos.

Neste desafio específico, precisamos analisar o protocolo SMB e encontrar o sinalizador que falta.

Pré-requisitos:

  • Conhecimento de uma ferramenta de análise de captura de rede.
  • Conhecimento da política de grupo.
  • Conhecimento de Python

Você pode encontrar o desafio no link abaixo:

https://www.root-me.org/en/Challenges/Forensic/Active-Directory-GPO

Declaração

Durante uma auditoria de segurança, foi registrado o tráfego de rede durante a sequência de inicialização de uma estação de trabalho conectada a um Active Directory. Analise esta captura e encontre a senha do administrador.

Primeiro vamos baixar o arquivo ch12.pcap do desafio e abri-lo no Wireshark.

Agora, antes de nos aprofundarmos na captura de pacotes, vamos dar uma visão de alto nível dos diferentes protocolos. Para fazer isso, navegue até Estatísticas → Hierarquia de protocolo.

E você verá a janela abaixo, mostrando diferentes protocolos.

Vamos dar uma olhada nos diferentes protocolos e imediatamente o SMB2 chamou minha atenção na lista.

O que é PME

A Wikipédia afirma:

Em redes de computadores , Server Message Block ( SMB ), cuja versão também era conhecida como Common Internet File System ( CIFS /sɪfs/ ), [1] [2] é um protocolo de comunicação [3] para fornecer acesso compartilhado a arquivos , impressoras e portas seriais entre nós em uma rede. Ele também fornece um mecanismo autenticado de comunicação entre processos .

Vamos filtrar os dados com o protocolo SMB2. Para fazer isso, basta digitar smb2 na barra de filtros e veremos apenas o tráfego usando o protocolo SMB2.

Depois de filtrarmos pelo protocolo SMB2, vamos dar uma olhada mais de perto.

  1. Existem 2 índices de fluxo numerados 14 e 24.
  2. O índice de fluxo 14 está tentando configurar a sessão e depois termina
  3. O índice de fluxo 24 contém mais dados em comparação com 14

Vamos seguir o índice de fluxo 24, para isso clique com o botão direito — -> Seguir fluxo TCP.

E podemos ver todas as solicitações e respostas em vermelho e azul, respectivamente.

Percorrendo o fluxo, encontramos um arquivo xml em texto não criptografado:

<?xml versão=”1.0" codificação=”utf-8"?>
<Grupos clsid=”{3125E937-EB16–4b4c-9934–544FC6D24D26}”><Usuário clsid=”{DF5F1855–51E5–4d24–8B1A-D9BDE98BA1D1}” nome=”Helpdesk” imagem=”2" alterado=”2015– 05–06 05:50:08 "UID =" {43F9FF29-C120–48B6–8333–9402C927BE09} ”> <Propriedades Action =” u ”newName =” ”FullName =” ”Descrição” ”" CPassword = ”PSMSCOUXQUME =” +w” changeLogon=”1" noChange=”0" neverExpires=”0" acctDisabled=”0" userName=”Helpdesk”/></User><User clsid=”{DF5F1855–51E5–4d24–8B1A-D9BDE98BA1D1} ”nome=”Administrador” imagem=”2" alterado=”2015–05–05 14:19:53" uid=”{5E34317F-8726–4F7C-BF8B-91B2E52FB3F7}” userContext=”0" removePolicy=”0" ><Properties action=”U” newName=”” fullName=”Admin Local” description=”” cpassword=”LjFWQMzS3GWDeav7+0Q0oSoOM43VwD30YZDVaItj8e0" changeLogon=”0" noChange=”0" neverExpires=”1" acctDisabled=”0" subAuthority =”” nome_do_usuário=”Administrador”/></Usuário>
</Grupos>

Se olharmos os dados acima, podemos ver:

nome=”Administrador”

cpassword=”LjFWQMzS3GWDeav7+0Q0oSoOM43VwD30YZDVaItj8e0″

Como você pode ver, temos a senha do Administrador, mas ela está criptografada. Agora, para completar o desafio, temos que quebrar a senha.

Descriptografando senha

Encontre a chave AES

Para descriptografar a senha criptografada AES, precisamos da chave que foi usada para criptografar a senha.

Para encontrar a chave que a MS está usando para criptografar senhas, vamos começar pesquisando a chave no Google. Depois de pesquisar por alguns minutos, encontrei a chave em:

https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-gppref/2c15cbf0-f086-4c74-8b70-1f2fa45dd4be

Todas as senhas são criptografadas usando uma chave derivada do Advanced Encryption Standard (AES).

A chave AES de 32 bytes é a seguinte:

4e 99 06 e8 fc b6 6c c9 fa f4 93 10 62 0f fe e8 
 f4 96 e8 06 cc 05 79 90 20 9b 09 a4 33 b6 6c 1b

Agora temos a chave que foi usada para criptografar a senha e o próximo passo é encontrar uma maneira de descriptografar a senha AES.

Descriptografando a senha AES

Como não estou muito familiarizado com criptografia, decidi usar o código python fornecido em https://github.com/MartinIngesen/gpocrack/blob/master/gpocrack.py

Infelizmente, o código fornecido não funcionou para mim e depois de olhar mais de perto e fazer algumas alterações, finalmente funcionou.

!pip install pycrypto
from Crypto.Cipher import AES
import base64
cpassword="LjFWQMzS3GWDeav7+0Q0oSoOM43VwD30YZDVaItj8e0="
decoded_password = base64.b64decode(cpassword)
key = b'\x4e\x99\x06\xe8\xfc\xb6\x6c\xc9\xfa\xf4\x93\x10\x62\x0f\xfe\xe8\xf4\x96\xe8\x06\xcc\x05\x79\x90\x20\x9b\x09\xa4\x33\xb6\x6c\x1b'
decryption_suite = AES.new(key, AES.MODE_CBC, '\x00'*16)
plain_text = decryption_suite.decrypt(decoded_password)
print("Password is: {}".format(plain_text.strip()))
password_list = (plain_text.decode().split('\x00')) # removing null bytes
password = ''.join(str(i) for i in password) # list to string
print(password)

Gostou? Se tiverem algumas sugestões, dica ou se ficou com alguma dúvida sobre este tutorial, não tem problema! Basta comentar no post que iremos responder suas dúvidas assim que for possível.

Referências

  1. https://github.com/MartinIngesen/gpocrack/blob/master/gpocrack.py
  2. https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-gppref/2c15cbf0-f086-4c74-8b70-1f2fa45dd4be
  3. Wikipedia > Tagged CryptographyGpoGroup PolicyRoot Me

Fonte: digitalitskills

WINDOWS: Sem acesso à internet ao se conectar à VPN

Ao configurar a VPN (Virtual Private Network), em alguns casos você pode perder acesso de navegação à internet. Te mostraremos aqui como resolver este problema.  Utilizaremos como exemplo de configuração o tipo de VPN PPTP (Point-to-Point Tunneling Protocol). Inicialmente, precisamos efetuar uma validação para entender o que está acontecendo em nosso ambiente.

Cenário:

Resolução

1. Abra o Connections de rede. Para fazer isso, use um dos seguintes métodos:

  • Deslize o dedo da borda direita da tela ou aponte para o canto inferior direito da tela e clique em Pesquisar. Em seguida, digite ncpa.cpl e clique no ícone Ncpa.cpl .
  • Pressione Win+R para abrir a janela Executar , digite ncpa.cpl e clique em OK.

2.  Identifique qual a rede local e qual sua rede VPN que você está configurando. Você precisa ter em mãos os IP’s e gatway das redes que está trabalhando.

3. Dê um duplo clique na conexão VPN e em seguida clique na opção “Propriedades” na janela que se abrirá.

4. Desmarque a opção “Protocolo IP Versão 6 (TCP/IPv6)”, selecione “Protocolo IP Versão 4 (TCP/IPv4)” e clique em Propriedades.

5. Na janela que se abrir clique em avançado

6. Desmarque a opção “Utilizar gateway padrão em uma rede remota”. Em seguida, clique em “OK”, salve e feche todas as janelas.

Podemos ver que agora estamos navegando normalmente à internet. Porém perdemos acesso às redes da VPN, mas não se assuste, vamos arrumar nos próximos passos.

7. Agora vamos precisar definir algumas rotas para que o computador consiga encontrar as redes do Site que estamos nos conectando via VPN. Abra o CMD no modo de Administrador. Digite o comando  route print para que possamos verificar quais as rotas existentes no nosso computador.  Marcarei de vermelho e negrito as informações que nos importam neste momento. Veja a saída gerada em nosso ambiente:

C:\Windows\system32>route print

===========================================================================
Lista de interfaces
 16...c8 4b d6 01 2e 25 ......Realtek PCIe GbE Family Controller
  9...........................Wintun Userspace Tunnel
 47...........................VPN
  6...00 ff 16 4f 66 e7 ......TAP-Windows Adapter V9
 14...00 d7 6d 95 ce 88 ......Microsoft Wi-Fi Direct Virtual Adapter
  4...02 d7 6d 95 ce 87 ......Microsoft Wi-Fi Direct Virtual Adapter #2
 11...00 d7 6d 95 ce 87 ......Intel(R) Wi-Fi 6 AX201 160MHz
  8...00 d7 6d 95 ce 8b ......Bluetooth Device (Personal Area Network)
  1...........................Software Loopback Interface 1
===========================================================================
Tabela de rotas IPv4
===========================================================================
Rotas ativas:
Endereço de rede          Máscara   Ender. gateway       Interface   Custo
          0.0.0.0          0.0.0.0      192.168.0.1    192.168.0.107     40
        127.0.0.0        255.0.0.0      No vínculo         127.0.0.1    331
        127.0.0.1  255.255.255.255      No vínculo         127.0.0.1    331
  127.255.255.255  255.255.255.255      No vínculo         127.0.0.1    331
      192.168.0.0    255.255.255.0      No vínculo     192.168.0.107    296
    192.168.0.107  255.255.255.255      No vínculo     192.168.0.107    296
    192.168.0.255  255.255.255.255      No vínculo     192.168.0.107    296
     192.168.10.0    255.255.255.0      192.168.10.1    192.168.10.148   26
    192.168.10.148  255.255.255.255      No vínculo     192.168.10.148  281
   201.22.108.200  255.255.255.255      192.168.0.1    192.168.0.107     41
        224.0.0.0        240.0.0.0      No vínculo         127.0.0.1    331
        224.0.0.0        240.0.0.0      No vínculo     192.168.0.107    296
        224.0.0.0        240.0.0.0      No vínculo     192.168.10.148   281
  255.255.255.255  255.255.255.255      No vínculo         127.0.0.1    331
  255.255.255.255  255.255.255.255      No vínculo     192.168.0.107    296
  255.255.255.255  255.255.255.255      No vínculo     192.168.10.148   281
===========================================================================
Rotas persistentes:
  Nenhuma


Tabela de rotas IPv6
===========================================================================
Rotas ativas:
 Se destino de rede de métrica      Gateway
  1    331 ::2/128                  No vínculo
  1    331 fe00::/8                 No vínculo
===========================================================================
Rotas persistentes:
Nenhuma

Podemos ver que não temos rotas persistentes criadas, e é exatamente o que faremos pois com a configuração que fizemos anteriormente, desativando o gateway da rede VPN como rota padrão, estamos acessando todos os endereços pelo gateway do nosso roteador interno.  O Resultado que temos é que não conseguimos comunicação:

C:\Windows\system32>ping 192.168.20.10
Disparando 192.168.20.10 com 32 bytes de dados:
Esgotado o tempo limite do pedido.

Podemos ver que sem a rota, não conseguimos chegar às redes 20, 30 e 40 pois nosso PC está  procurando o endereço na Internet e utilizando como rota padrão o roteador da operadora 192.168.0.1. Para criar uma rota, utilizaremos o seguinte comando:

route add 192.168.20.0 mask 255.255.255.0 192.168.10.1 -p

Explicando a sintaxe:

  • Adicionar uma rota: route add
  • Rede onde queremos chegar: 192.168.20.0
  • Máscara de rede de onde queremos chegar:  mask 255.255.255.0
  • IP do Gateway padrão para esta rota: 192.168.10.1
  • Quando usado com o comando ADD, torna uma rota persistente nas inicializações do sistema. Por padrão, as rotas não são preservadas quando o sistema é reiniciado. Ignorado para todos os outros comandos, que sempre afetam as rotas persistentes apropriadas. O comando significa persistente, ou seja, é o que vai tornar essa rota fixa, mesmo que o PC seja reiniciado essa rota será mantida: -p

Caso você execute o CMD sem privilégios administrativos terá  um erro, informando que você não possui direitos de administrador.

C:\Windows\system32>route add 192.168.20.0 mask 255.255.255.0 192.168.10.1 -p
A operação solicitada requer elevação.

Vamos executar o comando então para as 3 rotas:

Microsoft Windows [versão 10.0.19044.2251]
(c) Microsoft Corporation. Todos os direitos reservados.

C:\Windows\system32>route add 192.168.20.0 mask 255.255.255.0 192.168.9.1 -p
 OK!

C:\Windows\system32>route add 192.168.30.0 mask 255.255.255.0 192.168.9.1 -p
 OK!

C:\Windows\system32>route add 192.168.40.0 mask 255.255.255.0 192.168.9.1 -p
 OK!

Podemos ver que  a saída das 3 rotas adicionadas foi “OK!”. Então já devemos conseguir chegar nas redes mencionadas. Antes de olhar se há comunicação, vamos olhar novamente como estão as rotas após essa configuração:

C:\Windows\system32>route print
===========================================================================
Lista de interfaces
 16...c8 4b d6 01 2e 25 ......Realtek PCIe GbE Family Controller
  9...........................Wintun Userspace Tunnel
 47...........................VPN
  6...00 ff 16 4f 66 e7 ......TAP-Windows Adapter V9
 14...00 d7 6d 95 ce 88 ......Microsoft Wi-Fi Direct Virtual Adapter
  4...02 d7 6d 95 ce 87 ......Microsoft Wi-Fi Direct Virtual Adapter #2
 11...00 d7 6d 95 ce 87 ......Intel(R) Wi-Fi 6 AX201 160MHz
  8...00 d7 6d 95 ce 8b ......Bluetooth Device (Personal Area Network)
  1...........................Software Loopback Interface 1
===========================================================================
Tabela de rotas IPv4
===========================================================================
Rotas ativas:
Endereço de rede          Máscara   Ender. gateway       Interface   Custo
          0.0.0.0          0.0.0.0      192.168.0.1    192.168.0.107     40
     192.168.30.0    255.255.255.0      192.168.10.1    192.168.10.148   26
        127.0.0.0        255.0.0.0      No vínculo         127.0.0.1    331
        127.0.0.1  255.255.255.255      No vínculo         127.0.0.1    331
  127.255.255.255  255.255.255.255      No vínculo         127.0.0.1    331
      192.168.0.0    255.255.255.0      No vínculo     192.168.0.107    296
    192.168.0.107  255.255.255.255      No vínculo     192.168.0.107    296
    192.168.0.255  255.255.255.255      No vínculo     192.168.0.107    296
     192.168.10.0    255.255.255.0      192.168.10.1  192.168.10.148     26
   192.168.10.148  255.255.255.255      No vínculo    192.168.10.148    281
     192.168.20.0    255.255.255.0      192.168.10.1  192.168.10.148     26
     192.168.40.0    255.255.255.0      192.168.10.1  192.168.10.148     26
   201.22.108.200  255.255.255.255      192.168.10.1   192.168.0.107     41
        224.0.0.0        240.0.0.0      No vínculo         127.0.0.1    331
        224.0.0.0        240.0.0.0      No vínculo     192.168.0.107    296
        224.0.0.0        240.0.0.0      No vínculo    192.168.10.148    281
  255.255.255.255  255.255.255.255      No vínculo         127.0.0.1    331
  255.255.255.255  255.255.255.255      No vínculo     192.168.0.107    296
  255.255.255.255  255.255.255.255      No vínculo    192.168.10.148    281
===========================================================================
Rotas persistentes:
  Endereço de rede         Máscara  Ender. gateway    Custo
     192.168.20.0    255.255.255.0      192.168.10.1       1
     192.168.30.0    255.255.255.0      192.168.10.1       1
     192.168.40.0    255.255.255.0      192.168.10.1       1
===========================================================================
Tabela de rotas IPv6
===========================================================================
Rotas ativas:
 Se destino de rede de métrica      Gateway
  1    331 ::2/128                  No vínculo
  1    331 fe00::/8                 No vínculo
===========================================================================
Rotas persistentes:
  Nenhuma

Podemos ver as 3 rotas que criamos, agora vamos efetuar testes de comunicação. Utilizaremos o PING:

Rede 20

C:\Windows\system32>ping -t 192.168.20.1

Disparando 192.168.20.1 com 32 bytes de dados:
Resposta de 192.168.20.1: bytes=32 tempo=18ms TTL=63

Rede 30

C:\Windows\system32>ping -t 192.168.30.1

Disparando 192.168.30.1 com 32 bytes de dados:
Resposta de 192.168.30.1: bytes=32 tempo=18ms TTL=63

Rede 40

C:\Windows\system32>ping -t 192.168.40.1

Disparando 192.168.40.1 com 32 bytes de dados:
Resposta de 192.168.40.1: bytes=32 tempo=18ms TTL=63

Depois de executar todos os passos acima, você deve ser capaz de configurar seu PC com Windows para se comunicar às redes internas no Datacenter que se conectou pela VPN, os dispositivos de sua rede local e também à internet.

Gostou? Se tiverem algumas sugestões, dica ou se ficou com alguma dúvida sobre este tutorial, não tem problema! Basta comentar no post que iremos responder suas dúvidas assim que for possível.

Fonte: jbitcore

WINDOWNS: Erro! Não é possível acessar pastas compartilhadas.

Nesse porte vamos tratar de soluções de problemas gerais de acesso a compartilhamentos de rede, em todos os exemplos estamos utilizando um cenário com o Windows 10, então vamos lá:

ERROS COM SMB

Ative o recurso de suporte SMB 1.0 no Painel de Controle seguindo estas etapas:

  1. Abra o Painel de Controle.
  2. Selecione Programas>Programas e Recursos>Ativar ou desativar recursos do Windows>Suporte para Compartilhamento de Arquivos SMB 1.0/CIFS.
  3. Verifique o Cliente SMB 1.0/CIFS e pressione Enter.

Ative as opções descoberta de rede e compartilhamento de arquivos e impressoras seguindo estas etapas:

  1. Abra o Painel de Controle.
  2. Selecione Rede e Internet>Central de Rede e Compartilhamento>Configurações de compartilhamento avançadas.
  3. Selecione Ativar descoberta de rede.
  4. Selecione Ativar o compartilhamento de arquivos e impressoras em Privado.
  5. Selecionar Salvar alterações.

  • Defina o tipo de inicialização de serviços especificados como Automático para tornar o computador visível na rede. Veja como prosseguir:
    1. Vá para Iniciar.
    2. Vá para Pesquisar, insira a palavra Serviços e pressione Enter.
    3. Altere a propriedade Tipo de inicialização para Automático para os seguintes serviços.
      • Host de Provedor da Descoberta de Função
      • Publicação de Recursos de Descoberta de Função
      • Descoberta SSDP
      • Host de Dispositivo UPnP
    4. Reinicie o sistema.

ERRO: Você não tem permissão para acessar \\IPAdress ou Hostname>

Resolução

1. Veja como compartilhar a permissão para Todos na pasta que você deseja compartilhar:

  • Pressione e segure (ou clique com o botão direito do mouse) na pasta compartilhada.
  • Selecione Propriedades e, em seguida, selecione Compartilhamento Avançado na guia Compartilhamento.
  • Selecione Permissões, marque a opção Permitir em Controle Total de Todos e pressione Enter.
  • Selecione OK na caixa de diálogo Compartilhamento Avançado.

2. Veja como permitir a permissão Controle Total para Todos:

  • Selecione Editar na guia Segurança.
  • Selecione Adicionar, insira Todos no campo Digite os nomes de objeto a serem selecionados e pressione Enter.
  • Marque a opção Permitir para Controle Total de Todos e pressione Enter.
  • Feche a caixa de diálogo Propriedades.

3. Veja como garantir que o TCP/IP NetBIOS está habilitado:

  • Vá para Iniciar.
  • Vá para Pesquisar, insira a palavra Serviços e pressione Enter.
  • Clique duas vezes em Auxiliar TCP/IP NetBIOS no painel direito e certifique-se de que a propriedade Tipo de inicialização está definida como Automático.
  • Acesse Painel de Controle>Rede e Internet>Central de Rede e Compartilhamento, selecione Alterar Configurações do Adaptador no painel esquerdo e clique duas vezes em Ethernet.
  • Selecione Propriedades e clique duas vezes em Protocolo IP versão 4 (TCP/IPv4) na guia Rede.
  • Selecione Avançado, selecione Ativar NetBios sobre TCP/IP na guia WINS e pressione Enter.
  • Clique em OK duas vezes para fechar a caixa de diálogo.

ERRO: Você não pode acessar essa pasta compartilhada porque as políticas de segurança da sua organização bloqueiam o acesso de convidados não autenticados.

Resolução

Você pode ativar o acesso de convidados do seu computador usando um dos seguintes métodos:

Método 1: habilitar logons de convidados não seguros com o Editor do Registro

  1. Abra o Editor do Registro.
  2. Saiba mais em Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\LanmanWorkstation.
  3. Pressione e segure (clique com o botão direito do mouse) LanmanWorkstation, selecione Novo>Valor DWORD (32 bits) e o nomeie como AllowInsecureGuestAuth. Clique duas vezes nele, defina os Dados de valor como 1 e pressione Enter.

Método 2: habilitar logons de convidados não seguros com o Editor de Política de Grupo Local

  1. Vá para Iniciar.
  2. Acesse a opção Pesquisar, digite a palavra gpedit.msc e pressione Enter.
  3. Acesse Configuração do Computador>Modelos Administrativos>Rede>Estação de trabalho do LANMAN.
  4. No painel direito, clique duas vezes em Habilitar logons de convidados não seguros.
  5. Clique em Habilitado e pressione Enter.

erro: 0x80004005. Erro não especificado

Em vez de obter um endereço IP automaticamente, especifique um endereço IP. Siga estas instruções:

  1. Selecione Usar o seguinte endereço IP se quiser especificar o endereço IP do adaptador de rede.
  2. Na caixa Endereço IP, digite o endereço IP que você deseja atribuir a esse adaptador de rede. Esse endereço IP deve ser um endereço exclusivo no intervalo de endereços que estão disponíveis para sua rede. Entre em contato com o administrador de rede para obter uma lista de endereços IP válidos para sua rede.
  3. Na caixa Máscara de Sub-rede, digite a máscara de sub-rede da sua rede.
  4. Na caixa Gateway Padrão, digite o endereço IP do computador ou dispositivo em sua rede que conecta sua rede a outra rede ou à Internet.
  5. Na caixa Servidor DNS Preferencial, digite o endereço IP do computador que resolve nomes de host para endereços IP.
  6. Na caixa Servidor DNS Alternativo, digite o endereço IP do computador DNS que você deseja usar se o servidor DNS preferencial ficar indisponível.
  7. Selecione OK. Na caixa de diálogo Propriedades da Conexão Local, selecione Fechar.
  8. Na caixa de diálogo Status de Conexão da Área Local, selecione Fechar.

erro do sistema 53 ocorreu. O caminho de rede não foi encontrado

Quando você tenta acessar os compartilhamentos de arquivos do protocolo SMB, a seguinte mensagem de erro é exibida: O erro do sistema 53 ocorreu. O caminho de rede não foi encontrado.

Em rastreamentos de rede, o servidor não envia uma solicitação de estabelecimento de conexão (pacote SYN TCP). No entanto, você pode usar a telnet para se conectar ao servidor por meio da porta TCP 445.

Esse problema ocorrerá se o serviço Auxiliar TCP/IP NetBIOS for interrompido ou se o serviço estiver em execução como Sistema Local, mas não Serviço Local.

Para resolver esse problema, verifique se o serviço Auxiliar TCP/IP NetBIOS está em execução como um Serviço Local.

Gostou? Se tiverem algumas sugestões, dica ou se ficou com alguma dúvida sobre este tutorial, não tem problema! Basta comentar no post que iremos responder suas dúvidas assim que for possível

Fonte: learn.microsoft, chamados.dti