Puxar rede ou energia? (para contianing um servidor enraizado)

11

Quando um servidor é enraizado (, por exemplo, uma situação assim ), uma das primeiras coisas que você pode decidir fazer é contenção . Alguns especialistas em segurança aconselham a não entrar imediatamente na correção e manter o servidor on-line até que a análise forense seja concluída. Esses avisos geralmente são para APT . É diferente se você tiver violações ocasionais de Script kiddie , portanto, você pode decidir corrigir (consertar as coisas) com antecedência. Um dos passos na remediação é contenção do servidor. Citando Resposta de Robert Moir - "desconecte a vítima de seus assaltantes".

Um servidor pode ser contido puxando o cabo de rede ou o cabo de alimentação .

Qual método é melhor?

Levando em consideração a necessidade de:

  1. Protegendo as vítimas de mais danos
  2. Execução de análise forense bem-sucedida
  3. (Possivelmente) Protegendo dados valiosos no servidor

Edit: 5 suposições

Assumindo:

  1. Você detectou cedo: 24 horas.
  2. Você quer recuperar cedo: 3 dias de 1 administrador de sistemas no trabalho (forense e recuperação).
  3. O servidor não é uma máquina virtual ou um contêiner capaz de capturar um instantâneo que captura o conteúdo da memória do servidor.
  4. Você decide não tentar processá-lo.
  5. Você suspeita que o invasor pode estar usando algum tipo de software (possivelmente sofisticado) e esse software ainda está sendo executado no servidor.
por Aleksandr Levchuk 13.04.2017 / 14:14

10 respostas

6

Se você estiver enfrentando um APT, a melhor opção é configurar um honeypot e investigar completamente todo o tráfego que entra e sai dele, além de monitorar o servidor.

A medida de passar pela memória é tão cara em termos de tempo e esforço que geralmente não vale a pena, a menos que você tenha tentado todos os outros métodos, e se você determinar que vale a pena, é melhor configurar um honeypot que lhe permita para descarregar facilmente a memória e o estado do sistema para outra máquina em tempo real para que você possa fazer análises com menos ameaças de serem detectadas enquanto a máquina estiver em funcionamento.

Eu tive uma situação em que o invasor guardava tudo na memória na medida em que, com exceção dos logs, a máquina parecia exatamente com sua imagem depois de desligada e ligada novamente. Eles então voltavam a usá-lo novamente porque a vulnerabilidade ainda estava lá - eles não precisavam deixar nenhum backdoor para eles mesmos. Uma avaliação de memória poderia ter ajudado aqui, mas observar o tráfego foi suficiente nesse caso para identificar a vulnerabilidade rapidamente.

Portanto:

A única razão para evitar sobrecarregar a energia e fazer a avaliação de disco off-line é se você vai passar pela dificuldade de fazer uma análise completa da memória da ameaça enquanto estiver no lugar e operando. Se você chegou ao ponto em que isso é necessário, então não há razão para puxar qualquer plug.

Se você não está fazendo uma análise de memória, a melhor opção é puxar o plugue - puxar a ethernet (ou usar um comando de desligamento) só dará aviso prévio ao software do invasor - o que importa ocasionalmente. / p>

Então:

Puxe os dois, a menos que você esteja fazendo uma análise de memória. Nesse caso, não puxe nenhum dos dois.

    
por 06.01.2011 / 01:06
16

A análise forense de RAM (por exemplo, / dev / shm) pode ser útil.

Mas eu prefiro desconectar o cabo de alimentação (mas tente log-in e rsync / proc antes).

As razões para usar o cabo de alimentação são:

  1. Quando você faz perícia em um sistema hackeado, você está "pisando em toda a cena do crime"
  2. O kit raiz continua em execução - não é tão difícil para os mal-intencionados executarem algo (por exemplo, limpeza do sistema) no evento Network Link Down .

Kyle Rankin deu uma bela conversa com Intro Forense - lá ele recomenda puxar o cabo de alimentação .

    
por 03.01.2011 / 21:41
10

Desconecte a rede. O invasor não pode obter informações adicionais se não houver conexão de rede. É muito difícil (leia-se: impossível) fazer qualquer perícia sem poder.

    
por 03.01.2011 / 21:39
7

Neste dia e idade, pode ser uma máquina virtual, portanto, qualquer método é fácil e pode ser feito remotamente. (Máquinas virtuais dão origem à possibilidade de usar instantâneos também, é claro)

Eu sugeriria desconectar da rede como um primeiro passo automático, porque isso lhe dá tempo para ponderar qual deve ser o próximo passo, se o próximo passo é arrancar o cabo de alimentação ou qualquer outra coisa. Se você souber que os "procedimentos de resposta de segurança" corporativos não permitirão que você perca tempo examinando detalhadamente a máquina, a preservação do conteúdo da RAM pode não ser tão importante.

Eu sugiro que conseguir "separar a vítima de seus assaltantes" feito de qualquer maneira é mais importante que o como, então ambas as abordagens são válidas. Eu não teria problemas em puxar o powercord sozinho, vamos colocar dessa forma.

    
por 03.01.2011 / 21:48
6

Esta não é uma situação de ou / ou. Você geralmente quer fazer as duas coisas - você quer executar certos forenses (despejo de processos em execução, soquetes de escuta, arquivos em / tmp, etc.) em um sistema que foi removido da rede, e então executar os diagnósticos restantes de uma forma segura. ambiente (ou seja, um CD ao vivo). Existem situações em que nenhuma das abordagens é a correta, e você precisa pensar e entender o que elas podem estar em sua organização.

    
por 03.01.2011 / 22:44
4

Antes de fazer qualquer coisa, descubra se você precisa preservar evidências para uma eventual acusação. Manipulação de evidências é um assunto muito complicado e não para os pouco treinados. Uma vez que você tenha respondido, a pessoa forense de computação treinada pode levá-lo de lá.

    
por 03.01.2011 / 21:44
3

Não há necessidade de desligar o servidor. Você pode simplesmente desativar a conectividade do gateway / roteador de borda. Uma regra de firewall será suficiente para descartar qualquer outro pacote enviado / recebido.

    
por 03.01.2011 / 21:43
2

A resposta depende muito do que você entende por "enraizada". Puxar o lead de rede geralmente é uma boa ideia, particularmente se você acredita que esse é um invasor humano ativo em busca de informações confidenciais.

Puxar o poder é muito mais difícil de responder. Se você acha que há códigos maliciosos em execução que podem cobrir seus rastros, faça isso. No entanto, se você achar que pode haver evidências de uma invasão ainda na memória, deixe-a funcionando.

De modo geral, isso depende se você estiver lidando com código malicioso, funcionários insatisfeitos ou alguém com um objetivo específico em mente.

Se errar do lado da cautela, puxe a energia. Você perderá uma pequena quantidade de evidências em potencial, mas poderá impedir a remoção em massa de outras evidências por código automatizado.

- Então, novamente, se você sentir que a máquina foi comprometida e você sabe que ela não tem dados confidenciais, você está muito confiante em sua segurança de rede em outros lugares e entender as consequências de fazer então, talvez consiga um caixão forense no mais rápido possível e veja se você pode rastrear ou entender o ataque e partir daí. Isso normalmente não é uma boa ideia, embora

    
por 03.01.2011 / 21:48
1

Minha resposta foi antes da edição, com as 5 suposições.
Minha suposição era que, se o seu servidor estivesse enraizado, você estaria lidando com um invasor sofisticado e direcionado, e não teria como saber quando e de onde o ataque viria. (Desde que a máquina foi enraizada, obviamente você não pode confiar em nada do que ela diz. Entretanto, você pode ter algumas informações fora da caixa, por exemplo, IDS ...)
Presumi também que você tem interesse em lidar com seu atacante e não apenas acenar com ele como uma mosca incômoda. Se o atacante assumido for um script kiddie, isso seria diferente. Também presumi que, como o atacante é direcionado e sofisticado, é provável que ele tenha um software personalizado em execução na sua máquina, que possa responder às suas ações nele ...

Nem.
Confira link , de qualquer forma, é uma má idéia.
É como dar um par de bandaids ao cavaleiro negro ... muito pouco, tarde demais, é só ain ' Vai ajudar muito.

Para todos aqueles que acham que esta resposta é muito longe, ou simplesmente não é "consciente da segurança" o suficiente - você precisa perceber que já é tarde demais . Não é mais o seu servidor, mesmo que você o desconecte completamente. Mesmo se você desligar, execute todos os seus AVs e o que for - você não é o dono dela, eles fazem.
Essa é a definição de "enraizada".

Agora, supondo que eles sejam os proprietários e que possam ocultar sua propriedade de você, é preciso considerar - o que a desconectará dessa maneira?
A única coisa que ele conseguirá - desde que continue a ser enraizado independentemente - é deixar que seu adversário saiba que você está com eles. Que simplesmente coloca seus guardas para cima, e os leva a começar a limpar depois de si mesmos (se ainda não o fizeram), o que acabará com qualquer esperança de análise forense. Você ainda não está protegendo esse servidor ou qualquer um dos seus dados. Há quanto tempo está enraizado? Como você saberia?

O que você faz melhor:

  • Deixe o servidor em funcionamento ...
  • Isole-o do resto da sua rede interna, de outros servidores, etc. - mas é melhor conectar algum tipo de simulação, então parece estar conectado.
  • Inicie tranquilamente a perícia em tempo real / rede, execute rastreios, etc.
  • Tente descobrir a extensão e a duração do dano (obviamente, é diferente se tiver ocorrido há 2 horas ou 2 meses atrás).
  • Continue de lá ... Somente após atenuar o dano real , vá em frente e limpe-o.
  • É claro que não se esqueça de investigar as causas principais e impor quaisquer controles para garantir que isso não aconteça novamente ...
por 03.01.2011 / 22:36
0

Após analisar suas suposições, faça as duas coisas. Use uma mídia baseada em CD / DVD para despejar o estado atual. Primeiramente você desejará saber como você foi comprometido. Você também pode tentar recuperar os dados do usuário não em suas imagens de backup. Yo

Em seguida, recrie o sistema a partir da mídia de backup mais recente que não esteja contaminada. Verifique isso com checksums, se possível. Como alternativa, reinstale o software da mídia de instalação e reconfigure. A reconfiguração deve ser automática se você estiver usando Puppet ou cfEngine para configurar seu servidor.

Recarregue os dados do usuário e verifique os componentes do kit raiz. Verifique se você não tem nenhum programa setuid ou setgid nos diretórios de dados.

Determine e feche o método de acesso usado para infectar o sistema. A reativação do estágio do servidor, permitindo tempo para verificar se os aplicativos estão sendo executados conforme o esperado. Monitore cuidadosamente novas tentativas de infecção.

Isso tudo assume que a infecção está no nível da raiz. As infecções da Web podem ser feitas alterando o código executado pelo servidor da web. Permitir que o acesso de gravação do servidor da Web ao seu código torne isso mais fácil. Você ainda pode querer tratar este caso como se a conta root estivesse comprometida.

Se o root em um sistema foi comprometido em um sistema, você pode ter mais sistemas comprometidos. Considere cuidadosamente quais sistemas podem ser acessados sem uma senha do sistema infectado.

    
por 04.01.2011 / 00:53