SCCM (System Center Configuration Manager)
A primeira etapa ao atacar o SCCM é ter uma ideia da topologia de implantação, quais dispositivos estão sendo gerenciados e quem são os usuários administrativos. Isto não requer nenhum privilégio especial no domínio, no SCCM ou no endpoint.
Como essa configuração utiliza WMI, também podemos fazer isso manualmente
Também podemos verificar a DACL no contêiner CN=System Management
no AD para máquinas que tenham controle total sobre ela (pois este é um pré-requisito para configuração do SCCM em um domínio).
Enumerar usuários, grupos, computadores, Collections e administradores, etc, requer algum nível de privilégio no SCCM e não pode ser feito como um usuário de domínio padrão. O SCCM emprega um modelo de segurança RBAC - a função mais baixa é Read-Only Analyst
e a mais alta é Full Administrator
. Um invasor precisará ver como o SCCM está configurado, então poderá ser executado consultas com usuários que possuem privilégios diferentes. Para alterar de usuário e realizar uma pesquisa por Collections, basta executar:
Procurando por usuários administrativos
Verificando os membros das Collections
Ainda mais informações sobre cada dispositivo podem ser obtidas. Algumas boas maneiras de filtrar a saída, como pesquisar pelo nome do dispositivo com -n
e exibir apenas as propriedades especificadas utilizando -p
.
Você também pode usar o SCCM como forma de busca de usuários, pois ele registra o último usuário que fez login em cada computador gerenciado. O parâmetro -u
retornará apenas dispositivos onde o usuário fornecido foi o último a fazer login.
Considere esses resultados com cautela porque essas informações só são atualizadas no SCCM a cada 7 dias por padrão. Então, é sempre bom refazer suas pesquisas antes de iniciar algum teste de intrusão.
Pegando Credenciais de Rede
Em um ambiente Windows, a maioria dos computadores será ingressada no domínio e, portanto, será autenticada no SCCM Software Distribution Points (SDPs), que basicamente utiliza compartilhamentos SMB usando suas próprias credenciais de conta de máquina. No entanto, alguns computadores podem não estar associados ao Domínio, o Network Access Account (NAAs)
são credenciais de domínio destinadas a serem usadas por essas máquinas para acessar os SDPs pela rede. Eles são passados para as máquinas como parte das políticas da máquina SCCM, que são então criptografadas usando DPAPI e armazenadas localmente. Se estiverem presentes, os usuários privilegiados poderão recuperar esses blobs de credenciais via WMI ou diretamente do disco e descriptografá-los para recuperar credenciais de texto simples. Execute os comandos abaixo com um usuário que possua acesso privilegiado
Essas credenciais devem ter apenas acesso de leitura ao SDP, porém muitas vezes são contas privilegiadas, como Domain Admin e Enterprise Admin.
Movimentação Lateral
Com privilégios completos ou de administrador de aplicativos sobre um dispositivo ou Collection, podemos implantar scripts ou aplicativos para ajudar na movimentação lateral. Para executar um comando em cada dispositivo de uma Collection, execute o comando abaixo. Note que estamos apenas abrindo o notepad.exe, altere o executável caso seja necessário.
SharpSCCM tenta ocultar o aplicativo (ou seja, o comando que estamos executando) da GUI, mas a implantação ainda fica visível até ser concluída. Por padrão, o comando acima executará o Bloco de Notas conforme o usuário atualmente conectado em cada máquina. Se um usuário não estiver logado, o comando não será executado. Podemos forçá-lo a executar como SYSTEM usando o parâmetro -s
, e isso será executado em todas as máquinas, independentemente de o usuário estar logado ou não. Assim como no capítulo Abuso de GPO, podemos fazer upload e executar uma carga útil de DNS Beacon.
Last updated