A resposta para isso pode ser de um milhão de quilômetros de largura e altura, e retirar o que aconteceu com um servidor invadido pode ser quase uma forma de arte tanto quanto qualquer outra coisa, então, novamente, darei pontos de partida e exemplos em vez de um conjunto definitivo de etapas a seguir.
Uma coisa a ter em mente é que, depois de enfrentar uma invasão, você pode auditar seu código, a administração / configuração e os procedimentos do sistema com o conhecimento de que definitivamente há uma fraqueza lá. Isso ajuda a motivar mais do que procurar uma fraqueza teórica que pode ou não estar presente. Muitas vezes, as pessoas colocam coisas online, sabendo que o código poderia ter sido auditado um pouco mais, se tivéssemos tempo; ou o sistema travou um pouco mais firmemente, se não fosse tão inconveniente; ou procedimentos tornados um pouco mais rígidos, se não fosse um incômodo para o chefe lembrar senhas longas. Todos sabemos onde estão nossos pontos fracos mais prováveis, então comece com eles.
Em um mundo ideal, você terá logs armazenados em um servidor syslog diferente (espero que não seja comprometido) , não apenas dos servidores, mas também de firewalls, roteadores etc. que também registrem tráfego. Também existem ferramentas como o Nessus disponíveis que podem analisar um sistema e procurar pontos fracos.
Para software / framworks de terceiros, geralmente há guias de práticas recomendadas que você pode usar para auditar sua implantação ou prestar mais atenção às notícias de segurança e agendas de patches e descobrir alguns buracos que podem ter sido usados.
Por fim, a maioria das invasões deixa um terreno baldio ... se você tiver tempo e paciência para encontrá-lo. As intrusões ou invasões de crianças com script "Dirija por" usando kits de ferramentas de hackers tendem a se concentrar em pontos fracos comuns e podem deixar um padrão que o direciona na direção certa. A coisa mais difícil de analisar pode ser uma intrusão direcionada manual (por exemplo, alguém não queria invadir "um" site, mas sim invadir "seu" site especificamente), e essas são, obviamente, as coisas mais importantes a serem entendidas.
Para alguém que realmente não sabe por onde começar (ou mesmo para pessoas experientes que têm outras funções), o primeiro passo é provavelmente contratar alguém com boa experiência nas etapas acima. Outra vantagem dessa abordagem é que eles analisarão sua configuração sem noções preconcebidas ou interesse pessoal nas respostas.