The Good, the Bad and the Ugly

Prof. Dr. Adriano Cansian

Os testes de vulnerabilidades, ou teste de penetração, comumente chamados de “Pentests” são elementos fundamentais de um framework de segurança cibernética e permitem que as organizações encontrem e corrijam falhas de segurança em suas aplicações e infraestruturas, antes que invasores as explorem. Estes testes acontecem conforme três métodos diferentes. Muitas vezes é fácil se confundir sobre eles, e sobre onde devem ser aplicados.

QUAIS SÃO OS TESTES?
“Black Box”: este tipo de teste simula um ataque digital quando o atacante não conhece nada sobre a infraestrutura de rede, os aplicativos ou os códigos-fonte da organização sob análise. A responsabilidade do mapeamento inicial recai sobre o analista, o qual deve reunir todas as informações confidenciais necessárias para penetrar o mais longe possível na rede e nas aplicações do cliente e descobrir tantas vulnerabilidades quanto possível. Os analistas elaboram um mapa do sistema de alvos com base em suas observações, análises e pesquisas, da mesma forma que um atacante sem privilégios faria. Neste caso os analistas usam processos automatizados e manuais, por um longo período de tempo, para pesquisar vulnerabilidades em uma abordagem de tentativa e erro.

“White Box”: neste teste, de forma oposta ao teste Black Box, os analistas possuem total conhecimento do sistema sob análise e, desta forma, podem usar esse conhecimento associado a técnicas e ferramentas especializadas para conduzir um exame completo de forma eficiente e em menor tempo. O analista recebe informações completas e acesso total à rede, sistema e aplicativos, incluindo código-fonte, esquema de endereço IP, detalhes do sistema operacional, arquivos de configuração, mapas de rede, credenciais, dentre outros, e faz uma avaliação abrangente das vulnerabilidades.

“Grey Box”: este é um híbrido dos testes Black e White box, e simula um cenário em que o invasor tem informações ou acesso parciais a sistemas, redes e aplicativos, tais como credenciais de login, código do sistema, diagramas de arquitetura, dentre outros negociados previamente entre os analistas e a organização sob teste. Este tipo de teste procura entender o potencial de danos que um atacante que tem acesso parcial a informações ou a usuários privilegiados ou não, pode causar no negócio. Os analistas usam diretamente o que sabem para encontrar pontos fracos, explorá-los e ver até onde seus ataques podem levá-los.

DE ONDE VÊM AS CORES?
As cores associadas aos testes fazem alusão a alguém que esteja olhando o problema dentro de uma caixa, antes de começar. Assim, o teste Black Box é aquele em que o analista está dentro de uma caixa totalmente escura, onde não consegue enxergar nada, ou seja, encontra-se no escuro para iniciar os testes. Já quando está dentro da caixa branca, ou White Box, ele consegue enxergar tudo para iniciar os testes. Na situação intermediária da caixa cinza, ou Grey Box, ele consegue enxergar parcialmente as informações que necessita, ou seja, tem uma visão translúcida ou parcial das informações iniciais necessárias.

QUAL TESTE ADOTAR, OU NÃO?
Seria sensato advogar que os testes White Box são a melhor opção. Entretanto, isso tem alguns inconvenientes importantes. Dado ao volume de informações à sua disposição, os analistas podem demorar mais para decidir em quais áreas focar. Este tipo de teste também exige ferramentas em maior quantidade e mais sofisticadas, para maior eficácia e cobertura, em virtude do volume de informações a serem analisadas. A confiabilidade e a confiança desempenham um papel crucial no teste de penetração White Box. É comum haver empecilhos causados por políticas organizacionais e de compliance que impedem que as empresas compartilhem todas as informações. Isso reduz a eficácia dos testes, porque induzem o analista a pensar que áreas não apontadas não precisam ser testadas.

De maneira oposta, até algum tempo atrás, um teste de penetração Black Box era considerado absolutamente indispensável pois, em tese, forneceria a avaliação de risco mais importante, imitando a visão de hackers ou invasores de redes e aplicativos, que não saberiam nada sobre a organização. É uma abordagem que funciona bem em filmes de Hollywood, mas, na prática, isso mudou. Houve um crescimento significativo do volume de informações facilmente acessíveis a respeito das organizações, e ferramentas de varredura automatizadas e gratuitamente disponíveis, muito precisas, passaram a coletar, armazenar e dispor informações sobre organizações, redes e aplicativos. Além disso, a quantidade de pontos onde as organizações se conectam e interagem na Internet cresceu significativamente nos últimos 5 anos, causando um aumento natural da superfície de ataque. A eficácia do teste Black Box depende ainda da capacidade do analista de violar o perímetro, encontrando brechas de segurança iniciais. Desta forma, a profundidade da cobertura abrange apenas a extensão das informações obtidas pelo analista e sua capacidade, além da disponibilidade de tempo para se aprofundar na análise. Se o analista eventualmente não conseguir localizar e explorar vulnerabilidades nos ativos e serviços expostos externamente, o teste será ineficaz, porque não identificará vulnerabilidades, ocasionando uma falsa sensação de segurança na organização. Além disso, o investimento no pentest será perdido.

QUAL O MAIS RECOMENDÁVEL PARA A MAIORIA?
As melhores técnicas de segurança cibernética da atualidade recomendam que se deve partir da suposição inicial de que os atacantes já possuem informações suficientes – eventualmente muito detalhadas – sobre a organização e seus ativos, permitindo o lançamento de um ataque mais focado. Seguindo essa doutrina, a ação mais recomendada é a adoção de um Pentest Grey Box, pois atinge um equilíbrio situado entre a profundidade dos testes White Box e a eficiência dos testes Black Box, uma vez que fornece uma avaliação mais focada, eficiente e realista de segurança e vulnerabilidades. Ele é mais eficiente em termos de tempo e mais econômico do que a abordagem de tentativa e erro, economizando tempo e custos de reconhecimento, e é principalmente mais eficaz quando a empresa define áreas de rede que precisam dos testes de penetração. Há outro aspecto importante num teste Grey Box que é a simulação de uma tentativa de violação na visão de um atacante insider, ou seja, que já teria passado por algum mecanismo de autenticação, por exemplo, tendo posse de uma senha legítima ou mesmo um acesso a uma VPN. Estudos recentes [1] mostram que o custo médio de um incidente de segurança cibernética causado por atores internos saltou de US$ 8,76M em 2017 para US$ 11,45M em 2020, considerando 204 organizações pesquisadas ao redor do mundo. A análise apontou que os custos relacionados ao vazamento de informações privilegiadas estão categorizados em 3 perfis de insiders: empregado ou contratado negligente ou inadvertido, criminoso interno, incluindo uso malicioso feito por funcionário ou contratado, e roubo de credencial de funcionário ou usuário. Um teste Grey Box procura simular estas situações, ao iniciar os testes com algumas informações preliminares da organização.

HÁ ESPAÇO PARA TODOS?
É importante dizer que todos os tipos de testes aqui mencionados ainda desempenham papéis importantes no framework de segurança cibernética. Quando a organização já possui um certo nível de maturidade, e onde a disponibilidade de recursos não é um problema efetivo, o melhor cenário é a adoção das 3 disciplinas de testes, executados de forma escalonada e em épocas diferentes e por equipes diferentes. Mas, de forma geral, isso é um excesso de zelo e, em alguns casos, um desperdício de recursos. Entretanto, a adoção dos 3 métodos pode ser necessária devido a exigências de compliance e regulação de setores específicos. Para organizações que estão em fase de maturidade inicial ou intermediária, ou ainda que precisam otimizar recursos com bons resultados efetivos, a adoção dos testes Grey Box é a opção mais adequada.

[1] Cost of Insider Threats: Global Report 2020. IBM Security & Ponemon Institute LLC.
https://www.ibm.com/security/digital-assets/services/cost-of-insider-threats/#/