
Eu tive todos os benefícios. Eu já estava dentro da rede. Eu estava além da suspeita. Mas eles descobriram meu hack, expulso da rede ... e rastreado fisicamente.
Muitos testes de penetração começam do lado de fora para verificar como o perímetro pode ser superado. Dessa vez, o cliente queria ver até onde poderia chegar um invasor que já conseguia estar dentro da organização. Como eles poderiam me parar se eu já estava online?
Então, eles secretamente me levaram ao escritório, disfarçados de um novo funcionário. Eles me deram um computador em funcionamento, um crachá, uma conta no sistema ... inferno, eu até tinha meu próprio estande com um nome fictício. A única pessoa que sabia quem eu realmente era era o diretor de segurança da informação. Todo mundo pensou que eu era Jeremy do Marketing.
Inteligência
Na maior parte da manhã do primeiro dia, estive ocupado com os procedimentos para me candidatar a um emprego, conhecer colegas e fazer trabalho sujo. Mas eu tive que agir rapidamente. Por tudo sobre tudo, eu tinha apenas uma semana e precisava ter tempo para invadir tudo sem causar suspeitas. Então eu comecei a trabalhar.
Para fazer você entender: a maioria dos testes de penetração é bastante direta. A coisa mais difícil é invadir a rede. Mas uma vez lá dentro, você obtém uma ampla seleção de objetivos: computadores antigos, senhas padrão, todos ficam sob os administradores locais ... Normalmente, recebo uma conta de administrador de domínio em um dia ou dois e, logo após, um administrador da organização. O tempo restante é gasto na cobertura dos trilhos e na coleta de evidências das possíveis consequências do ataque. Mas desta vez foi diferente. É hora de ser surpreendido.
Sentado no computador, eu fingi estar trabalhando. Eu usaria o computador do meu escritório para pesquisar, estudar as configurações de outras estações de trabalho, mas não o atacaria diretamente, para não deixar vestígios apontando para mim. Em vez disso, eu trouxe um dispositivo separado para hackers: um laptop pessoal com Linux e várias ferramentas de hackers. Conectei-o à rede e obtive o endereço IP. O
NAC deles não cobria toda a rede: qualquer conexão do estande de trabalho era confiável.
Comecei como de costume. Interceptação e análise do tráfego de rede do Wireshark, alterando o endereço MAC e o nome do meu laptop para que ele se perca na infraestrutura e pareça um equipamento comum. Então - usando o Respondente na sua sub-rede para capturar hashes e quebrar senhas. Muito rapidamente, consegui coletar um punhado cheio de hashes. Eu estava em uma sub-rede regular para trabalhadores, portanto havia muitas contas conectadas com navegadores abertos espalhando dados de autenticação.
Primeiras surpresas
Comecei uma pesquisa de hashes encontrados na minha fazenda de 8 placas de vídeo, mas ... algo deu errado. Muito rapidamente, todas as combinações de 8 caracteres de letras maiúsculas e minúsculas, números e caracteres especiais (NetNTLMv2) foram verificadas. As senhas mais comuns (uma palavra, primeira letra maiúscula que termina em um número ou símbolo) são hackeadas instantaneamente. Mas não aqui.
Eu poderia executar contas de rede na minha estação de trabalho para ver a diretiva de senha diretamente no AD, mas primeiro decidi procurar outro lugar. Não queria deixar rastros extras. Tendo vasculhado uma rede, consegui encontrar os requisitos de segurança. Descobriu-se que o tamanho mínimo da senha, que deveria incluir letras maiúsculas e minúsculas, caracteres e números especiais, era de 12 caracteres. E eles já começaram a transição para frases-senha ... Alterei meu conjunto de regras para força bruta para usar palavras mais longas, letras maiúsculas e finais de números e caracteres especiais. Me trouxe algumas senhas!
Legal! Vamos lá! Eu imediatamente tentei entrar remotamente no computador do usuário usando sua senha ... e fui bloqueado. O que ...? Sempre funcionou. A senha está correta. Mas o acesso está fechado. Eu me verifiquei duas vezes. Comece com o básico. Faça certo. Demorou algum tempo para procurar um controlador de domínio. Nos telefones VoIP, havia configurações de páginas da web onde seu endereço estava registrado. Peguei as propriedades da Diretiva de Grupo do controlador através do LDAP para visualizar os privilégios. Após longas escavações no monte de configurações, percebi que o acesso remoto é permitido apenas para uma pequena parte dos especialistas em TI, nem mesmo para todo o departamento de TI. E eu não quebrei nenhuma das senhas deles. Eles implementaram o modelo de menos privilégios ... Quem faz isso?
Ok, vá para o inferno. Vou gerenciar sem acesso a computadores. Vou entrar na correspondência deles! Então eu fiz. Procurei senhas no correio, bate-papos no Skype, anotações e rascunhos no Outlook. Eu tenho um monte de senhas pessoais de qualquer coisa ... Mas nenhuma da conta de serviço. Mas encontrei uma carta do departamento de segurança da informação, que dizia que eles planejam introduzir autenticação de dois fatores para correio dentro de uma semana. Parece que ainda tenho sorte.
O ponto mais fraco de qualquer sistema
Depois fui ao
portal SSO . Todas as aplicações internas em um só lugar. O sonho do hacker! Eu cliquei em um dos aplicativos. Exigia autenticação de dois fatores. O próximo também. E o seguinte. Que tipo de Alcatraz é esse ?! Pesadelo hacker!
Eu vi que eles estão usando Citrix. Ele está por trás da autenticação de dois fatores, bem, e não se importa. Eu vou descobrir. A Citrix me dará acesso ao servidor interno. Eu precisava chegar ao host interno para remover meu laptop hacker e começar a avançar na rede. Iniciei o Citrix com uma solicitação de 6 dígitos. Há um botão que diz "Clique para receber um token" e um número de telefone ligeiramente editado: (xxx) xxx-5309. Depois de pesquisar no correio por "5309", encontrei a assinatura do usuário na qual esse número de telefone estava completamente indicado. Eu liguei para ele.
A mulher respondeu. “Boa tarde, Pam. Eu sou Josh de ay. Estamos migrando seu perfil Citrix para o novo servidor. Agora vou enviar um número de 6 dígitos. Eu preciso que você leia para mim. Só para lembrar, nunca pedimos sua senha. Eu já tinha a senha dela. Ela hesitou: “Goodooo ...” Apertei um botão para enviar um token de autenticação e disse: “Concluído. Enviei um número para você, leia para mim quando receber. Ela respondeu: “Ummm ... sim, eu fiz. 9-0-5-2-1-2 ". Obrigado! Por favor, não execute o Citrix por algumas horas! ” Um timer marcou na tela por 60 segundos. Digitei os números em uma janela de autenticação de dois fatores e cliquei em "Ok". Conectado. Vá toco, autenticação de dois fatores! Uma vez lá dentro, eu vi ... nada. NADA! Como o usuário não precisava do Citrix, não havia NADA anexado. Eu entrei na sala dos fundos.
Então Isso é loucura. Posso pegar uma senha longa, mas apenas se tiver sorte em pegar o hash certo. Mesmo com uma senha hackeada, alguém de um pequeno grupo de pessoas precisará ignorar a autenticação de dois fatores. Toda tentativa, especialmente com alguém deste grupo protegido, aumenta o risco de detecção. Droga ...
Eu tentei de tudo. Lancei varreduras cada vez mais agressivas, ainda tentando ficar abaixo do radar. Senti toda a rede e todos os serviços que consegui encontrar, com todos os ataques que conheci. E embora aqui e ali encontrei algumas pequenas coisas, isso não foi suficiente para ganhar uma posição em algum lugar. Comecei a cair em desespero. Já é o fim do segundo dia. Normalmente, nesse momento, eu já destruo os bancos de dados, leio as mensagens do CEO e atiro nas pessoas nas webcams. Droga. É hora de invadir o covil das pessoas de TI. Vou roubar laptops.
Invasão noturna
Fiquei depois do trabalho. Os colegas disseram que é necessário concluir um curso sobre segurança no emprego. Eles assentiram e jogaram fora. Então os limpadores vieram. Quando eles terminaram, eu fui deixado sozinho. Eu fui ao escritório de pessoas de TI. Encontrei a porta. Olhando em volta, peguei a maçaneta ...
Antes disso, eu já havia tentado coisas diferentes com o laptop do meu escritório, mas não era um administrador local e o disco estava completamente criptografado. Meu objetivo era encontrar um laptop antigo e não criptografado com um hash de senha do administrador local.
Eu verifiquei o saguão para que ninguém estivesse por perto. Examinei o teto em busca de câmeras de segurança. Abri a boca e inclinei a cabeça para ouvir que alguém vinha da esquina. Nada. Eu estava pronto para agir. Preparei-me para mexer em uma fechadura mecânica, lidar com sistemas eletrônicos de controle de acesso ou remover a porta das dobradiças, mas descobri que a porta estava entreaberta. Sorte. Havia uma trava eletrônica e uma trava mecânica na porta. Até loops protegidos. Mas alguém a deixou descoberta naquela noite. Abri a porta e olhei para dentro, esperando encontrar alguém lá dentro. Ninguém. Vamos lá. Apenas um pó. Eu entrei.
Não sei por que a porta estava aberta, mas 80% do meu trabalho são erros de usuários, 56% são habilidades, 63% são adaptabilidade, 90% é uso de recursos e 80% gordurosos são sorte. E apenas cerca de 1% estão relacionados à matemática ...
Enfim. Não sabia se alguém voltaria aqui a qualquer momento, então comecei a trabalhar. No canto, havia pilhas de laptops de diferentes idades, fabricantes e modelos. Depois de avaliar os riscos de ser pego no escritório de pessoas de TI ou com um monte de laptops na minha mesa, escolhi minha mesa. E agora já estou arrastando braçadas de laptops antigos do orifício de TI para o meu estande, dobrando a Torre Inclinada de Pisa embaixo da minha mesa. Então comecei metodicamente tentando inicializar todos os laptops a partir de uma unidade flash em busca de um Santo Graal não criptografado.
Eu tenho uma unidade flash inicializável com o Kali e o utilitário samdump2. Eu o conecto a um dos laptops, carrego e tento montar o disco rígido. Toda vez que deparei com criptografia, fico cada vez mais chateado. Finalmente, depois de 30 laptops testados, encontro três semi-mortos com unidades não criptografadas. Com o samdump2, retiro os hashes NTLM locais do SAM e os comparo. Assim, é possível encontrar uma conta não padrão do administrador local “ladm” nas três máquinas. Combinação de hashes. Glória a
Eris , eles não usam o
LAPS . A conta do administrador local é a mesma em todos os computadores. Eu quebrei esse hash facilmente. A senha era <Nome da Empresa> <Ano> e este ano passou alguns anos atrás. Erro no gerenciamento de ativos. Eu amo isso
Tentei fazer login remotamente na nova conta e obtive o mesmo erro de antes. O acesso remoto foi negado ao administrador local ... Tentei fazer o login localmente no laptop do meu escritório e consegui! Essa conta contornou a criptografia completa! Chave mestra! Então ... muuuuito! Você pode tirar proveito disso! Mas então notei uma coisa estranha ... Eu não tinha direitos de acesso aos dados do usuário. O que? Eles restringiram o acesso MESMO PARA ADMINISTRATIVOS LOCAIS ?! Inferno Era necessário aumentar os privilégios para o sistema.
Eu tentei todos os truques que me vieram à mente. No final, procurei vulnerabilidades do
Unquoted Service Path e encontrei algumas! Mas a conclusão foi que meu administrador local não tinha permissão de gravação para as pastas desejadas. Sim, largue! Naquela época, eu já estava exausta e quebrada. Meu turno de 17 horas estava terminando. O cérebro não estava mais funcionando. Era outro beco sem saída. Outra série de combates duros e hacks de sucesso em prol de outra falha. Ele teve que ir para casa e dormir um pouco para começar de novo no dia seguinte.
Ligar para um amigo
No dia seguinte, verifiquei tudo de novo para ter certeza de que não perdi nada. Eu verifiquei tudo o que pude verificar, digitalizei tudo o que pude digitalizar, fiz tudo o que me veio à mente. Em todos os lugares, pequenos leads, mas nada vale a pena. Liguei para um colega do
Dallas Hackers . Depois de contar a ele sobre minhas provações, acabei com esperanças desastrosas pela vulnerabilidade do Caminho de Serviço Não Citado, quando a conclusão me mostrou a falta de privilégios necessários. Ele perguntou: "Mas você ainda tentou explorá-lo, apesar disso?" Eu congelei. Eu não tentei. Naquele estado, acreditei na conclusão e não a verifiquei pessoalmente. Bom Eu tentei gravar dados em um diretório. O mesmo para o qual, de acordo com o Windows, eu não tinha acesso para escrever. E eu fiz isso. Maldito Windows. Eu fui enganado novamente. Mas tudo bem. Isso é morto. Nova pista.
Um colega rapidamente me lançou um gerenciador de inicialização em C, que lançou a carga no Powershell. Eu me atrevi a verificar o pacote no meu próprio computador, e tudo parecia funcionar bem. Foi um ataque perverso. Mas isso é tudo que eu tinha. Eu estava indo para:
- Executar ouvinte no meu laptop hacker
- Obtenha acesso físico a um laptop no escritório
- Efetue login como administrador local
- Faça o download do seu grupo de Malvari no caminho de serviço não cotado
- Sair
- Aguarde o login do usuário e inicie o carregamento
O intervalo para o almoço estava se aproximando. Respondi com um sorriso aos convites dos meus colegas para fazer um lanche e fiquei um pouco. No começo, planejava visitar pessoas de TI e acessar um de seus computadores enquanto almoçavam. Mas quando fui ao escritório deles, vi que todos estavam no lugar! Coma o seu almoço na frente dos computadores! Eles não sabem o quanto é prejudicial ?! Como a falta de separação entre trabalho e descanso e a falta de pausas levam ao estresse ?! Por que eles não jantam como pessoas normais ?!
Sim você vai. Vou invadir um computador. Qualquer computador. Andei pelo escritório e encontrei um escritório onde não havia ninguém. Financiadores. Ok, hackear finanças. Respondi algo a uma velhinha bonitinha que voltou para sua carteira. Informe a ela que sou técnico de TI atualizando computadores. Ela assentiu e, sorrindo docemente, saiu. Irritada, com o rosto cheio de ódio e glamour, eu me virei para o computador de um dos colegas dela e o invadi.
Demorou menos de 30 segundos. Voltei a cadeira e o mouse ao estado em que estavam antes de chegar. Mais uma vez, olhei em volta rapidamente, certificando-me de que tudo parecia normal. E ele voltou ao seu local de trabalho. Sente-se olhando para o ouvinte. A certa altura, o almoço terminou. Eu nem queria conversar. Já começando a perder a esperança, vi:
> Meterpreter session 1 opened
E então ...
> Meterpreter session 2 opened
> Meterpreter session 3 opened
...
> Meterpreter session 7 opened
Sua esquerda! Corri GETUID e vi NT AUTHORITY \ SYSTEM. III ha!
Bom! Ótimo! Então! Umm ... vamos lá! Sim Depois de consertar o sistema, joguei a memória na memória e comecei a pesquisar no sistema de arquivos. Algum tipo de informação financeira. Algumas senhas em claro. Informação sensível, mas nada sério. Mas tudo bem. Este é apenas o começo. Bridgehead. E então ...
> Meterpreter session 1 closed
Tento me apegar às sessões, mas todas estão fechadas. Eu sigo o sistema não responde. Vou procurar a porta 445. Nada. O sistema não está disponível. Isso. Oh Demais. Levanto-me e vou direto para o departamento financeiro. O que aconteceu com minhas conchas ?!
Virando a esquina, vejo que uma mulher velha e fofa está conversando com a pessoa de TI mais pesada e feroz. Eu rapidamente faço "Oh, você ..." e me viro quando a velha olha na minha direção, aponto um dedo diretamente para mim e grito: "É isso! Ele estava mexendo com nossos computadores! Emito um grito de partir o coração e corro para a corrida. Depois de dar as costas ao feroz especialista em TI, corro na direção oposta e tropeço em dois guardas de segurança. Eles parecem muito hostis e deixam claro que eu entrei na área errada. Acordei com sangue, amarrado a uma cadeira ergonômica do escritório com abraçadeiras, que juntam os cabos na sala do servidor. A cabeça do DFIR está de pé na minha frente, com os nós dos dedos derrubados. Atrás dela, uma pequena equipe de analistas do grupo de detecção de intrusões sorri. Estou espremendo uma palavra ... preciso saber ... "Como ...?" Ela se inclina sobre meu ouvido e sussurra: "Ninguém no departamento financeiro inicia o Powershell ..."
Ok ... eu adicionei um pouco de drama no final. Mas a história de como me deparei com uma velha que me entregou a especialistas em TI é real. Eles me detiveram bem ali. Eles levaram meu laptop e relataram à gerência sobre mim. O diretor de segurança da informação veio e confirmou minha presença. E a maneira como eles me descobriram também é real. Eles foram notificados de que o Powershell estava sendo executado em um sistema que não pertencia a um pequeno grupo de pessoas e desenvolvedores de TI que iniciaram o Powershell em condições normais. Um método simples e confiável para detectar anomalias.
Conclusões
Equipe azul
- Modelo com menos privilégios
- Autenticação multifatorial
- Regras simples para detectar anomalias
- Defesa profunda
Time vermelho
- Continue tentando
- Não assuma
- Procure ajuda
- Sortudo preparado
- Adaptação e Superação