Linux Active Directory
Uma máquina linux também pode estar presente em um ambiente Active Directory.
Uma máquina linux em um AD pode estar armazenando diferentes tickets CCACHE dentro de arquivos. Esses tickets podem ser usados e abusados como qualquer outro ticket kerberos. Para ler esses tickets, você precisará ser o usuário proprietário do ticket ou root dentro da máquina.
Enumeração
Enumeração AD a partir do linux
Se você tiver acesso a um AD no linux (ou bash no Windows), pode tentar https://github.com/lefayjey/linWinPwn para enumerar o AD.
Você também pode verificar a seguinte página para aprender outras maneiras de enumerar o AD a partir do linux:
389, 636, 3268, 3269 - Pentesting LDAPFreeIPA
FreeIPA é uma alternativa de código aberto ao Active Directory da Microsoft, principalmente para ambientes Unix. Ele combina um diretório LDAP completo com um Centro de Distribuição de Chaves Kerberos do MIT para gerenciamento semelhante ao Active Directory. Utilizando o Sistema de Certificados Dogtag para gerenciamento de certificados CA e RA, suporta autenticação multifatorial, incluindo smartcards. O SSSD está integrado para processos de autenticação Unix. Saiba mais sobre isso em:
FreeIPA PentestingBrincando com tickets
Pass The Ticket
Nesta página, você encontrará diferentes lugares onde pode encontrar tickets kerberos dentro de um host linux, na página seguinte você pode aprender como transformar esses formatos de tickets CCache para Kirbi (o formato que você precisa usar no Windows) e também como realizar um ataque PTT:
Pass the TicketReutilização de ticket CCACHE de /tmp
Os arquivos CCACHE são formatos binários para armazenar credenciais Kerberos e geralmente são armazenados com permissões 600 em /tmp
. Esses arquivos podem ser identificados pelo seu formato de nome, krb5cc_%{uid}
, correlacionando ao UID do usuário. Para verificação do ticket de autenticação, a variável de ambiente KRB5CCNAME
deve ser definida para o caminho do arquivo de ticket desejado, permitindo sua reutilização.
Liste o ticket atual usado para autenticação com env | grep KRB5CCNAME
. O formato é portátil e o ticket pode ser reutilizado definindo a variável de ambiente com export KRB5CCNAME=/tmp/ticket.ccache
. O formato do nome do ticket Kerberos é krb5cc_%{uid}
onde uid é o UID do usuário.
Reutilização de tickets CCACHE do keyring
Tickets Kerberos armazenados na memória de um processo podem ser extraídos, particularmente quando a proteção ptrace da máquina está desativada (/proc/sys/kernel/yama/ptrace_scope
). Uma ferramenta útil para esse propósito pode ser encontrada em https://github.com/TarlogicSecurity/tickey, que facilita a extração injetando em sessões e despejando tickets em /tmp
.
Para configurar e usar esta ferramenta, os passos abaixo são seguidos:
Este procedimento tentará injetar em várias sessões, indicando sucesso ao armazenar os tickets extraídos em /tmp
com uma convenção de nomenclatura de __krb_UID.ccache
.
Reutilização de tickets CCACHE do SSSD KCM
O SSSD mantém uma cópia do banco de dados no caminho /var/lib/sss/secrets/secrets.ldb
. A chave correspondente é armazenada como um arquivo oculto no caminho /var/lib/sss/secrets/.secrets.mkey
. Por padrão, a chave só é legível se você tiver permissões de root.
Invocar **SSSDKCMExtractor
** com os parâmetros --database e --key irá analisar o banco de dados e descriptografar os segredos.
O blob de cache de credenciais Kerberos pode ser convertido em um arquivo CCache Kerberos utilizável que pode ser passado para Mimikatz/Rubeus.
Reutilização de ticket CCACHE a partir de keytab
Extrair contas de /etc/krb5.keytab
As chaves de contas de serviço, essenciais para serviços que operam com privilégios de root, são armazenadas de forma segura nos arquivos /etc/krb5.keytab
. Essas chaves, semelhantes a senhas para serviços, exigem estrita confidencialidade.
Para inspecionar o conteúdo do arquivo keytab, klist
pode ser empregado. A ferramenta é projetada para exibir detalhes da chave, incluindo o NT Hash para autenticação de usuários, particularmente quando o tipo de chave é identificado como 23.
Para usuários do Linux, KeyTabExtract
oferece funcionalidade para extrair o hash RC4 HMAC, que pode ser utilizado para reutilização do hash NTLM.
No macOS, bifrost
serve como uma ferramenta para análise de arquivos keytab.
Utilizando as informações de conta e hash extraídas, conexões com servidores podem ser estabelecidas usando ferramentas como crackmapexec
.
Referências
Last updated