Home / CVE-2021-36934 / HiveNightmare – Laboratório de teste de penetração
HiveNightmare - Laboratório de teste de penetração

HiveNightmare – Laboratório de teste de penetração

O registro do gerenciador de contas de segurança (SAM) contém os hashes de senha dos usuários em um sistema Windows. Por ser considerado um registro secreto, é necessário ter privilégios de nível de SISTEMA para visualizar seu texto. Portanto, o SAM é um registro de interesse para qualquer envolvimento de Pentest, pois os hashes de senha podem ser recuperados para cracking offline, uma vez que o escalonamento de privilégio lugar tenha sido conseguido. No entanto, uma vez que foi revelado por Jonas Lyk várias versões do Windows 10 e Windows 11 permitindo que um usuário padrão leia o registro SAM devido a uma formato incorreta das permissões do registro.

Se o registro SAM contém os hashes de senha de todos os usuários do sistema, incluindo o Gestor, ele pode ser usado uma vez que um método para aumentar os privilégios. Para que um sistema seja vulnerável a esta técnica, que é chamada de HiveNightmare, as duas condições a seguir devem ser aplicadas:

  1. Proteção de sistema habilitada
  2. Ponto de restauração (reprodução de sombra de volume)

A Proteção do Sistema é ativada por padrão nos sistemas operacionais Windows, portanto, se um ponto de restauração foi criado, um usuário normal pode acessar e ler o registro SAM da reprodução de sombra do volume e os arquivos SEGURANÇA e SISTEMA. Originalmente, todos esses arquivos podem ser encontrados no seguinte diretório:

C:WindowsSystem32configSAM
C:WindowsSystem32configSECURITY
C:WindowsSystem32configSYSTEM
Proteção do sistema

Há uma variedade de operações de segurança ofensivas que podem ser conduzidas por meio da técnica HiveNightmare:

  1. Dumping Hashes
  2. Escalonamento de privilégios
  3. Roubo de identidade de usuário
  4. Modificação de senhas
  5. Controle de conta (por meio das respostas das perguntas de segurança)

Despejando Hashes

A armaização da técnica era trivial e existem várias ferramentas que podem ser usadas dependendo do cenário em uma avaliação. Originalmente Kevin Beaumont desenvolveu em C ++ um praticável chamado HiveNightmare. A utensílio copiará os arquivos SAM, SECURITY e SYSTEM da reprodução de sombra do volume para o diretório atual.

HiveNightmare – versão C ++

A versão C # do HiveNightmare foi desenvolvida por Cube0x0 que permite às equipes vermelhas usá-lo na memória por meio da montagem de realização do Cobalt Strike ou por meio de qualquer outro comando e estrutura de controle uma vez que o Covenant. Hashes de senha, respostas às perguntas de segurança e qualquer outra informação interessante serão exibidos no console, evitando a gravação de arquivos no disco.

HiveNightmare – C #

Da mesma forma, há também um script PowerShell chamado Invoke-HiveNightmare de Fernando Tomlison que pode esvaziar as seções SAM, SECURITY e SYSTEM para o diretório de trabalho atual uma vez que o praticável HiveNightmare.

HiveNightmare – PowerShell

Uma vez que selecção, o script SeriousSam pode plagiar da reprodução de sombra do volume os arquivos de um sistema que é vulnerável.

Sam sério

Christian Mehlmauer implementou a técnica na linguagem Go. O hive.exe praticável descarregará os arquivos no diretório de trabalho atual com um sinete de data / hora.

HiveNighmare – Go

Por termo, o Mimikatz contém um módulo “lsadump :: alone”Que pode ler o registro SAM se o sinalizador“/ sam”É usado com o caminho completo do registro SAM na reprodução de sombra do volume.

lsadump::sam /system:?GLOBALROOTDeviceHarddiskVolumeShadowCopy1Windowssystem32configSYSTEM /sam:?GLOBALROOTDeviceHarddiskVolumeShadowCopy1Windowssystem32configSAM
Mimikatz – Esvaziar Hashes
Mimikatz – NTLM Hash

As ferramentas que foram capazes de plagiar os arquivos da reprodução de sombra do volume e não exibiram os hashes na saída de um console uma vez que o Mimikatz podem ser transferidas para outro sistema onde o pacote impacket está instalado para ser usado por meio da utensílio secretsdump python.

Escalonamento de privilégios

Os hashes de senha para contas com aproximação ressaltado (gestor lugar) podem ser quebrados offline para serem usados ​​no sistema e louvar privilégios. No entanto, a obtenção do hash da senha do gestor lugar pode ser usada diretamente por meio do pLifeE-ec para autenticação no envolvente com privilégios de nível SYSTEM. O secretsdump do pacote impacket pode ler dados armazenados na seção de registro SAM e SECURITY executando o seguinte comando:

secretsdump.py -sam SAM -system SYSTEM -security SECURITY LOCAL
HiveNightmare – secretsdump

A tentativa de autenticação com pLifeE-ec usando o valor hash da conta do gestor lugar pode fornecer aproximação ao shell uma vez que SYSTEM. Esta técnica criará um serviço no sistema Windows e não é considerado seguro para opsec. No entanto, elimina a urgência de quebrar o hash NTLM no caso de uma senha possante ter sido selecionada.

pLifeE-ec.py -hashes aad3b435b51404eeaad3b435b51404ee:58a478135a93ac3bf058a5ea0e8fdb71 pentestlab@10.0.0.9 cmd.exe
HiveNightmare – pLifeE-ec

Deve-se observar que para que o pLifeE-ec funcione, a conta precisa fazer segmento do grupo de administradores locais e o controle de conta de usuário remoto deve ser desabilitado. Isso é regido pelo “LocalAccountTokenFilterPolicy”Chave de registro que precisa estar presente no sistema e ter um valor de“ 1 ”(desabilitado).

HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem
Política de filtro de token de conta lugar

Roubo de identidade de usuário

Uma abordagem selecção é usar uma utensílio C # chamada SharpNamedPipePTH que foi desenvolvida por ShitSecure para se passar por outros usuários do sistema. A utensílio usa o pipe nomeado lugar e a técnica de hash para autenticação a termo de executar binários uma vez que outro usuário ou um prompt de comando. Uma vez que a utensílio foi desenvolvida em C #, ela pode ser aproveitada por vários frameworks C2. Obter um shell ressaltado ou restrito dependendo das permissões do usuário pode ser usado para vários cenários, uma vez que acessar documentos, arquivos contendo cadeias de conexão e limitar as atividades do usuário comprometido ao que for necessário.

SharpNamedPipePTH.exe username:pentestlab hash:8c3efc486704d2ee71eebe71af14d86c binary:C:windowssystem32cmd.exe
HiveNightmare – SharpNamedPipePTH
HiveNightmare – Roubo de identidade de token

Modificação de senhas

Várias vezes, durante uma avaliação, os sistemas podem sofrear contas antigas que não foram usadas por um longo período. Uma vez que essas contas não são usadas ativamente, é muito provável que não sejam monitoradas e, portanto, possam ser usadas uma vez que um método para interpolar de uma conta para outra e ocultar faixas. Mimikatz “lsadump :: alone”Módulo pode ser usado para esvaziar hashes da reprodução de sombra do volume, conforme discutido anteriormente neste item:

lsadump::sam /system:?GLOBALROOTDeviceHarddiskVolumeShadowCopy1Windowssystem32configSYSTEM /sam:?GLOBALROOTDeviceHarddiskVolumeShadowCopy1Windowssystem32configSAM
Mimikatz – Módulo lsadump
Mimikatz – Usuário NTLM Hash pentestlab

O módulo “lsadump :: changentlm”Do Mimikatz pode ser usado para modificar a senha de um usuário exclusivamente usando seu hash de senha atual.

lsadump::changentlm /user:pentestlab /oldntlm:58a478135a93ac3bf058a5ea0e8fdb71 /newpassword:Password1234
Mimikatz – Mudança de senha

Tomada de conta

Para fins de recuperação, nos casos em que o valor da senha foi esquecido pelo usuário, o Windows pode exigir que o usuário use três perguntas de segurança com base em eventos de vida durante a formato da conta. No entanto, examinando a saída de secretdump, fica simples que as respostas são visíveis em texto simples.

HiveNightmare – Perguntas de segurança

Da mesma forma, o Mimikatz também exibirá as respostas das perguntas de segurança de forma clara quando o módulo “lsadump :: secrets” está sendo usado. As informações são armazenadas no registro SEGURANÇA, portanto, a chave “/segurança”Precisa ser usado para indicar para a localização do registro na reprodução de sombra do volume.

Mudar a senha da conta por meio do processo de recuperação de perguntas de segurança não é recomendado para usuários ativos no domínio. No entanto, pode ser usado para contas antigas ou exclusivamente para provar o impacto para o cliente em um relatório pentest ou red team.

 

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *