
Eu estive realizando testes de penetração usando e o utilizei para extrair informações sobre usuários do Active Directory (daqui em diante – AD). Naquela época, eu estava focando na coleta de informações sobre a filiação a grupos de segurança, e depois usei essas informações para navegar pela rede. De qualquer forma, o AD contém dados confidenciais sobre os funcionários, alguns dos quais realmente não deveriam estar acessíveis a todos na organização. Na verdade, existe um equivalente nos sistemas de arquivos do Windows. , que também pode ser explorado por invasores internos e externos.
Mas antes de discutirmos os problemas de privacidade e as formas de mitigá-los, vamos dar uma olhada nos dados armazenados no AD.
Active Directory é como o Facebook corporativo
Mas, nesse caso, você já se tornou amigo de todos! Você pode não saber sobre os filmes, livros e restaurantes favoritos dos seus colegas, mas o AD contém dados de contato sensíveis
e outros campos que podem ser utilizados por hackers e até mesmo insiders sem grandes habilidades técnicas.
Os administradores de sistemas, é claro, estão familiarizados com a captura de tela abaixo. Esta é a interface do Active Directory Users and Computers (ADUC), onde eles configuram e editam informações dos usuários e atribuem usuários a grupos correspondentes.

O AD contém campos com o nome do funcionário, endereço e número de telefone, portanto, é semelhante a um catálogo telefônico. Mas há muito mais! Em outras abas, também estão disponíveis e-mail e endereço web, supervisor direto e notas.
Todos na organização devem ter acesso a essas informações, especialmente na era , onde cada novo detalhe facilita a busca por informações adicionais?
Certamente que não! O problema se agrava quando os dados da alta administração da empresa estão disponíveis para todos os funcionários.
PowerView para todos
É aqui que o PowerView entra em cena. Ele fornece uma interface muito conveniente do PowerShell para funcionalidades subjacentes (e complicadas) do Win32 que acessam o AD. Resumindo:
ele torna a obtenção de campos do AD tão simples quanto digitar um comando muito curto.
Vamos pegar o exemplo da coleta de informações sobre a funcionária Cruella Deville, que é uma das diretores da empresa. Para isso, usaremos o comando PowerView get-NetUser:

Instalar o PowerView não é um grande problema – veja por si mesmo na página . E o que é mais importante, você não precisa de privilégios elevados para executar muitos comandos do PowerView, como o get-NetUser. Assim, um funcionário motivado, mas não muito técnico, pode começar a mexer no AD sem grandes esforços.
Como pode ser visto na captura de tela acima, um insider pode rapidamente descobrir muito sobre a Cruella. Você também notou que o campo "info" revela informações sobre os hábitos pessoais e a senha do usuário?
Essa não é uma possibilidade teórica. A partir de descobri que eles escaneiam o AD em busca de senhas em texto não criptografado, e frequentemente essas tentativas, infelizmente, são bem-sucedidas. Eles sabem que as empresas tratam as informações no AD de forma descuidada e, em geral, não estão cientes do próximo tópico – permissões no AD.
No Active Directory existem suas ACL
A interface AD Users and Computers permite definir permissões para objetos do AD. No AD existem ACL, e os administradores podem conceder ou negar acesso através delas. Você precisa clicar em "Avançado" no menu de visualização do ADUC e então, ao abrir o usuário, verá a guia "Segurança", onde você define a ACL.
No meu cenário com a Cruella, eu não queria que todos os usuários autenticados fizessem o acesso à sua informação pessoal, então eu neguei a eles acesso para leitura:

E agora um usuário comum verá isso, se tentar Get-NetUser no PowerView:

Consegui ocultar informações potencialmente úteis de olhos curiosos. Para manter o acesso para usuários relevantes, criei outra ACL permitindo que membros do grupo VIP (Cruella e outros altos colegas) tivessem acesso a esses dados confidenciais. Em outras palavras, implementei permissões AD baseadas em modelo de função, o que tornou dados sensíveis inacessíveis para a maioria dos funcionários, inclusive insiders.
No entanto, você pode tornar a filiação do grupo invisível para os usuários, ajustando adequadamente a ACL para o objeto do grupo no AD. Isso ajuda em termos de privacidade e segurança.
Em sua mostrei como navegar pelo sistema, examinando a filiação a grupos com o PowerViews Get-NetGroupMember. No meu cenário, limitei o acesso de leitura à filiação de um grupo específico. Você vê o resultado da execução do comando antes e depois das alterações:

Consegui ocultar a filiação de Cruella e Monty Burns no grupo VIP, dificultando a exploração da infraestrutura para hackers e insiders.
Este post tinha como objetivo motivá-lo a examinar mais de perto os campos
do AD e as permissões associadas. O AD é um excelente recurso, mas pense em como você
desejaria compartilhar informações confidenciais e dados pessoais, especialmente
quando se trata de altos executivos da sua organização.
Fonte: habr.com
