Teste de Invasão (Pentest) – Lidando com suas várias fases [Parte 2]

pesquisa

Nesta série de artigos, estamos olhando para o calo que alguns pentesters encontram quando eles entregam seus resultados e recomendações. Nossa premissa? Você, grande pentester, trabalha bastante para conduzir uma invasão linda, bem avaliada e tecnicamente muito boa. O resultado? O pessoal do sistema alvo vomita em todas as suas descobertas, refuta suas recomendações e simplesmente não reconhece o que você fez. A série, que começou com um artigo aqui, foca em dicas práticas que você pode usar para evitar situações como esta mais para frente, ou caso venha a ocorrer, em métodos para neutralizar a situação e demonstrar o valor real do que se está fornecendo.

Como já apresentado, a parte 1 deste artigo, define o pano de fundo e fala sobre as fases 1 e 2 de um teste de invasão.

– Fase 1: Negação e Fase 2: Nós pretendíamos fazer desse jeito. Aqui na parte 2 do artigo, vamos retomar de onde paramos, explorando a fase 3: O jogo da culpa (A culpa é do Messenger) e fase 4: Isso não é JUSTO.

Fase 3: O jogo da culpa (A culpa é do Messenger)

Pessoal do sistema alvo revisando o relatório: “Você realmente causou o problema em questão, executando suas ferramentas de captura “ultra mega bizarramente esquisitas“. Algo como isso nunca aconteceria no mundo real.”

Esta acusação, por vezes, vem de pessoas que não compreendem o quão comum hoje em dia são as ferramentas de capturas generalizadas e o valor que elas podem fornecer em termos de segurança. Você dificilmente poderá culpa-los. Para algumas pessoas de fora da área de segurança da informação, essas ferramentas são muito misteriosas, às vezes, tratada quase como vodu. Para agravar o problema, muitos relatórios de testes de invasão, reforçam a ideia equivocada, pois eles não entram em detalhes sobre como foram encontradas as vulnerabilidades. No meu trabalho, revisando relatórios de testes de invasão, vejo um monte de resultados que deixam escapar observações críticas, como se elas tivessem simplesmente caído do céu. Com pouca informação, o pessoal do sistema alvo, não consegue entender a real natureza do risco que corre.

Para evitar isso, você como atacante, deve tentar ajudar o cliente incluindo alguns pequenos detalhes mas realmente significativos em seu relatório. Verifique se o mesmo inclui o nome das ferramentas utilizadas durante o teste para cada achado. Além disso, para resultados críticos, explicar em alto nível a técnica usada para constatação. Explique como atacantes no mundo real usam as mesmas ou similares ferramentas para explorar essas falhas todos os dias. Seu objetivo, é reportar de um jeito mais simples as questões mais críticas e relacioná-las com o mundo real. Estes pequenos ajustes em um relatório, não irão somente ajudar a informar melhor o cliente a confirmar a veracidade do seu relatório, como também ajudará a compreender melhor a defesa de seus ambientes.

Essa é uma forma que os atacantes podem encontrar do “jogo da culpa”. Vamos ver outras variações desse jogo no artigo seguinte da série, onde o sistema alvo não pode culpar os atacantes, e sim outra organização fora de seu controle.

Fase 4: Isso não é JUSTO!

Pessoal do sistema alvo revisando o relatório: “Ora, ora, ora… Claro que você pode chegar a essas conclusões, basta trapacear. O único jeito que alguém poderia descobrir tal falha, é utilizando conhecimento interno super secreto, que nós lhe demos de boa fé antes do teste de invasão e você nos traiu. Nenhum atacante malicioso é capaz de descobrir isso e organizar um ataque através disso.

Aqui está um clássico exemplo de resposta que vira e mexe aparece. Durante o escopo inicial do projeto ou durante os interrogatórios de atualização, o cliente compartilhará informações que provam ser úteis para descobrir as falhas durante o teste de invasão. Pode ser mencionado um problema arquitetônico, um processo quebrado, um sistema particularmente fraco, ou mais, o que lhe permite encontrar e explorar a aplicação de fora do ambiente. Quando for apresentar um relatório sobre os seus resultados, o pessoal do sistema alvo pode vir com um “Isso não é JUSTO!”.

Para lidar com isso, eu sempre começo um projeto falando com o pessoal de segurança do sistema alvo tentando desarmar um conflito inerente. Você vê, eles temem atacantes tentando invadir o seu sistema, e outras vezes eles simplesmente nos detestam. Esta mistura de medo e ódio podem deixar muitas emoções a flor da pele, então eu costumo dizer, “Olha, eu e você temos objetivos iguais, aumentar a segurança de TI da organização. Vamos trabalhar juntos para fazer isso acontecer”.

Vou ainda mais longe dizendo, “Você conhece esse ambiente melhor do que eu jamais conhecerei… Tenho certeza que você sabe de coisas que melhorariam a segurança, mas você pode não ter obtido recursos necessários para faze-lo. Use-me. Posso ser um veículo através do qual você pode mover sua organização para melhorar a segurança, se trabalharmos juntos”. É um compromisso sincero da minha parte, e ser explícito sobre isso pode ajudar mais na frente a identificar questões importantes mais cedo. Você está plantando as sementes para uma boa relação de trabalho com o pessoal do sistema alvo para que não encontre um “Isso não é justo” no final.

Então, é claro, quando você escreve o relatório, deve indicar as questões que foram identificadas durante o início do projeto, enfatizando a importância dos problemas e as suas defesas associadas. Mencione apenas que você aprendeu sobre problemas internos se os responsáveis pela informação concordarem. Você também tem que mostrar em seu relatório como um usuário malicioso do mundo real acha e explora as vulnerabilidades encontradas. Os ajude a entender como atacantes do mundo real trabalham meses para achar a mesma vulnerabilidade, que você encontrou em seu teste ao longo de uma ou duas semanas.

Mesmo se você fizer isso tudo perfeitamente, o grito de “Isso não é JUSTO” ainda pode ocorrer. Se isso acontecer com você, lembre-se de manter a calma e nunca voltar atrás. Você está no direito, desde que tenha seguido o escopo e as regras de engajamento e utilizado técnicas de ataque do mundo real.

Aqui está o que gosto de fazer quando isso ocorre: quando alguém afirma, “Isso não é JUSTO”, eu traduzo em tempo real na minha cabeça (usando uma voz interna que soa como uma voz má de um antigo filme de Kung Fu )  para, “Você me superou com o seu Kung Fu impressionante, eu o parabenizo pelo seu sucesso. Por favor ajude-me a entender como você realizou esse grande feito para que eu possa melhorar a segurança da minha empresa.” Sim, a substituição perde um pouco a linha, mas me ajuda a sorrir e a agir de uma maneira melhor ao invés de reagir negativamente. Você pode então prosseguir calmamente para explicar como um usuário malicioso do mundo real pode achar o problema associado usando ferramentas e informações disponíveis publicamente, juntamente com suas recomendações para ajudar na melhoria da segurança da empresa.