Aumentar a precisão do AST por meio de pentesting - Comparação de ferramentas

Aumentar a precisão do AST por meio de pentesting - Comparação de ferramentas

Aumentar a precisão do AST por meio de pentesting

Empresas de cibersegurança e seus clientes devem considerar o pentesting como um instrumento fundamental para medir a segurança ou a exposição ao risco de seus sistemas.

AUMENTAR A PRECISÃO DO AST POR MEIO DE PENTESTING • COMPARAÇÃO DE FERRAMENTAS •

Aumentar a precisão do AST por meio de pentesting

Empresas de cibersegurança e seus clientes devem considerar o pentesting como um instrumento fundamental para medir a segurança ou a exposição ao risco de seus sistemas.

AUMENTAR A PRECISÃO DO AST POR MEIO DE PENTESTING • COMPARAÇÃO DE FERRAMENTAS •

Aumentar a precisão do AST por meio de pentesting

Empresas de cibersegurança e seus clientes devem considerar o pentesting como um instrumento fundamental para medir a segurança ou a exposição ao risco de seus sistemas.

AUMENTAR A PRECISÃO DO AST POR MEIO DE PENTESTING • COMPARAÇÃO DE FERRAMENTAS •

Aumentar a precisão do AST por meio de pentesting

Empresas de cibersegurança e seus clientes devem considerar o pentesting como um instrumento fundamental para medir a segurança ou a exposição ao risco de seus sistemas.

AUMENTAR A PRECISÃO DO AST POR MEIO DE PENTESTING • COMPARAÇÃO DE FERRAMENTAS •

Aumentar a precisão do AST por meio de pentesting - Comparação de ferramentas

Introdução

Além do escaneamento de vulnerabilidades

Como é possível detectar com precisão a exposição de um sistema a ciberataques bem-sucedidos? Isso não é possível apenas por meio do escaneamento de vulnerabilidades. Testes de segurança realizados por pentesters (i.e., pentesting) continuam sendo necessários. Embora as ferramentas automatizadas tenham se tornado indispensáveis para identificar vulnerabilidades potenciais devido à sua potência e velocidade de processamento, elas apresentam altas taxas de falsos positivos e falsos negativos, e geralmente encontram menos da metade da exposição ao risco das aplicações. Parte da razão para isso é que as ferramentas não conseguem detectar vulnerabilidades quando sua descoberta envolve um uso complexo e inesperado dos produtos de software por parte de um usuário externo. É aqui que entra em jogo a experiência dos pentesters.

Reconhecendo de antemão, por nossa experiência empresarial, a superioridade do pentesting sobre o escaneamento de vulnerabilidades (ambos parte do espectro de application security testing, AST), tentamos confirmar essa ideia com um estudo no qual incluímos múltiplas ferramentas de terceiros, não apenas a nossa. Inicialmente, definimos um objetivo de avaliação e, em seguida, algumas ferramentas para testar. Prestamos atenção aos seus resultados, incluindo os verdadeiros positivos, os falsos positivos e os falsos negativos, e determinamos os F-scores. Além de destacar as vulnerabilidades identificadas, enfatizamos a exposição ao risco (CVSSF) detectada.

CVSSF

CVSSF

CVSSF

CVSSF

CVSSF é uma métrica que estabelecemos para superar as limitações da pontuação CVSS, como a segmentação, a agregação e a comparação, e para contribuir melhor para a priorização de vulnerabilidades. Por exemplo, dez vulnerabilidades de severidade 1,0 não equivalem a uma vulnerabilidade de severidade 10,0. A partir da equação CVSSF = 4 ^ (CVSS - 4), podemos determinar valores com diferenças muito mais marcadas que refletem melhor a realidade dos riscos. Assim, para as vulnerabilidades do exemplo, os resultados em unidades de CVSSF seriam 0,2 (i.e., 10 x 0,02) e 4.096 (i.e., 1 x 4.096), respectivamente.

Metodologia

Medição da precisão na detecção de vulnerabilidades

DATA DE INÍCIO

2023

Dezembro

Avaliadores

  • 36 ferramentas de terceiros* (código aberto ou demo/teste gratuito) para SAST, DAST e/ou SCA (algumas dessas ferramentas estão incluídas no Quadrante Mágico da Gartner)

  • Ferramenta da Fluid Attacks para SAST, SCA e DAST (doravante, "nosso scanner")

  • Pentester da Fluid Attacks

Alvo de avaliação (ToE*)

Uma aplicação web moderna, realista e vulnerável por padrão com as seguintes características:

  • Modelo-visão-controlador (MVC)

  • Aplicação de página única (SPA)

  • API RESTful

  • Em NodeJS, principalmente com TypeScript

*Por motivos de segurança e confidencialidade, os nomes das ferramentas e ToE foram anonimizados (as ferramentas seguem uma ordem alfabética de "A" a "Z" e de "AA" a "AJ").

Universo de vulnerabilidades

Nossa equipe (scanner e pentester) detectou 93,9% do universo de vulnerabilidades (UV); algumas ferramentas externas identificaram a porcentagem restante.

1.201

vulnerabilidades

105

categorias CWE

461.500

unidades CVSSF

80%

no código-base, 13% no backend e o restante em dependências e frontend.

73,2%

exigiu autenticação.

Análise de dados

A partir dos verdadeiros positivos (VP) e dos falsos positivos (FP), determinamos os valores de "precision" ("quantos elementos identificados são relevantes?") e "recall" ("quantos elementos relevantes são identificados?"):

A seguir, estabelecemos relações entre essas duas variáveis por meio do F-score:

Fᵦ = (1 + β²) · {[precision · recall] / [(β² · precision) + recall]}

F1 é a média harmônica de ambas as variáveis, enquanto F0,5 dá mais importância à precision do que ao recall, e F2 dá mais importância ao recall do que à precision.

Resultados

Repensando a avaliação de segurança

Top 10 para VPs, "precision" e "recall"

*Este valor não é 125 (valor necessário para completar, em soma com os VPs, o UV) porque na metodologia definimos que o pentester não revisaria seções já avaliadas pelo nosso scanner.
**Nesta tabela figuram, além do pentester, apenas as ferramentas que ocuparam o top 4 nas métricas destacadas.

  • A ferramenta que identificou a maior porcentagem de vulnerabilidades (i.e., nosso scanner) detectou 22,7%, o que corresponde a apenas 8,8% da exposição ao risco (CVSSF) total do ToE.

  • Entre as ferramentas apresentadas nesta tabela, nosso scanner esteve muito próximo do pentester em relação aos FPs, com apenas três. De todas as ferramentas que detectaram pelo menos 50 vulnerabilidades, esta foi a que obteve a melhor precision. As outras seis ferramentas tiveram uma média de aproximadamente 130 falsos positivos.

  • Enquanto os melhores valores de recall entre as ferramentas automatizadas avaliadas ficaram entre 21% e quase 23%, a média de recall entre as outras 34 ferramentas foi de um péssimo 1,7%. Na verdade, 17 ferramentas não identificaram sequer dez vulnerabilidades das 1.201 presentes no ToE.

  • Ainda mais surpreendente é o recall em termos de CVSSF. Como mencionamos, a melhor ferramenta sequer alcançou 9%. Mesmo se somarmos todos os percentuais alcançados pelas 37 ferramentas, assumindo que são valores correspondentes a conjuntos que não se cruzam e que podem ser somados, elas nem acumulariam 60% da exposição ao risco total do ToE. Enquanto isso, o pentester conseguiu detectar quase 99%!

  • Além disso, 743 das 1.201 vulnerabilidades, ou seja, 61,9% do UV, foram detectadas exclusivamente pelo pentester nos testes manuais, o que corresponde a 86,8% da exposição ao risco total.

Top 5 para F-scores (CVSSF)

  • Todos os F-scores (CVSSF) do pentester superaram 99%.

  • Embora os F-scores (CVSSF) do nosso scanner estivessem sempre à frente dos das outras ferramentas, eles eram muito baixos em comparação com os do pentester. O melhor resultado do nosso scanner foi um F0,5 score (CVSSF) de 32,6%, um valor que prioriza a precision sobre o recall. Embora esse F0,5 representasse quase um terço do que foi obtido pelo pentester, ele duplicou o F0,5 médio das dez ferramentas seguintes nesse ranking.

  • Os F2 scores (CVSSF) foram consistentemente inferiores aos F0,5 scores (CVSSF). As médias desses dois valores para todas as ferramentas automatizadas foram de 1,9% e 6,3%, respectivamente, o que reflete a preponderância da precision sobre o recall.

F0,5 vs F1 vs F2 scores (CVSSF)

O tamanho da bolha nos gráficos representa a magnitude do F1 score (CVSSF). Quanto mais próxima uma ferramenta estiver do quadrante superior direito, melhor será seu desempenho.

Tempo de execução por avaliador

A diferença entre os tempos de execução do pentester e das ferramentas automatizadas é surpreendente. Ao somarmos os tempos registrados para as ferramentas (não conseguimos registrar o tempo de oito delas), descobrimos que o total não chega a 2% do tempo empregado pelo pentester (49 dias). O tempo médio de execução das ferramentas foi de 2.652 segundos (i.e., pouco mais de 44 minutos). Daí a importância que geralmente atribuímos ao escaneamento de vulnerabilidades (i.e., testes de segurança usando ferramentas automatizadas).

Não encontramos nenhum padrão ao comparar os F-scores com os tempos de execução. Por exemplo, o ideal seria que, à medida que os tempos de avaliação do ToE aumentassem, os F1 scores das ferramentas também crescessem. No entanto, se tomarmos como ponto de referência central o F1 score de 37% alcançado pelo nosso scanner em 429 segundos, observamos que à sua direita, com tempos de execução mais curtos, o F1 médio foi de 3,5%, enquanto à sua esquerda, com tempos de execução mais longos, o F1 médio foi de 2,3% (ambos os lados com quase o mesmo número de ferramentas).

Conclusões

O ideal é combinar testes automatizados com testes manuais

As ferramentas automatizadas são bastante rápidas na avaliação da segurança das aplicações, mas suas taxas de falsos positivos costumam ser altas, embora não tanto quanto suas taxas de falsos negativos.

Os valores de precision e recall do pentester são muito mais altos, mas exigem um investimento de tempo consideravelmente maior. No entanto, isso pode mudar quando o ToE é analisado por toda uma equipe de pentesters e não apenas por um único especialista (como foi o caso deste estudo).

Múltiplas vulnerabilidades de segurança podem passar despercebidas pelas ferramentas automatizadas, por isso, complementar seu trabalho com testes manuais contínuos é indispensável. Não se trata apenas de detectar um número maior de vulnerabilidades, mas, acima de tudo, de descobrir aquelas que, muitas vezes mais complexas, representam os riscos mais críticos para as organizações e seus usuários.

Uma boa ferramenta proporcionará rapidez e resultados aceitáveis desde o início do ciclo de vida de desenvolvimento de software, mas o pentesting contínuo aumentará significativamente a precisão dos testes de segurança das aplicações. Por esse motivo, o ideal para uma empresa responsável com uma postura de segurança madura é trabalhar com ambos.

Embora este estudo tenha se limitado a um único ToE, a Fluid Attacks continuará com este tipo de pesquisa. Em breve, adicionaremos novos objetivos que nos permitirão seguir insistindo na necessidade de integrar ferramentas com humanos.

A Fluid Attacks oferece uma solução ASPM integral que permite aos seus clientes identificar, priorizar e remediar vulnerabilidades de segurança em seus produtos ao longo do SDLC. Os testes de segurança são realizados por meio de ferramentas automatizadas, IA e uma equipe de pentesters, reportando em uma única plataforma com diversas integrações, o que facilita a gestão de vulnerabilidades baseada em riscos. A GenAI apoia a remediação de vulnerabilidades e os especialistas ajudam a compreender problemas complexos, contribuindo significativamente para acelerar a mitigação da exposição ao risco das empresas e reforçar sua postura de cibersegurança.

As soluções da Fluid Attacks permitem que as organizações identifiquem, priorizem e corrijam vulnerabilidades em seus softwares ao longo do SDLC. Com o apoio de IA, ferramentas automatizadas e pentesters, a Fluid Attacks acelera a mitigação da exposição ao risco das empresas e fortalece sua postura de cibersegurança.

Assine nossa newsletter

Mantenha-se atualizado sobre nossos próximos eventos e os últimos posts do blog, advisories e outros recursos interessantes.

As soluções da Fluid Attacks permitem que as organizações identifiquem, priorizem e corrijam vulnerabilidades em seus softwares ao longo do SDLC. Com o apoio de IA, ferramentas automatizadas e pentesters, a Fluid Attacks acelera a mitigação da exposição ao risco das empresas e fortalece sua postura de cibersegurança.

Assine nossa newsletter

Mantenha-se atualizado sobre nossos próximos eventos e os últimos posts do blog, advisories e outros recursos interessantes.

As soluções da Fluid Attacks permitem que as organizações identifiquem, priorizem e corrijam vulnerabilidades em seus softwares ao longo do SDLC. Com o apoio de IA, ferramentas automatizadas e pentesters, a Fluid Attacks acelera a mitigação da exposição ao risco das empresas e fortalece sua postura de cibersegurança.

Assine nossa newsletter

Mantenha-se atualizado sobre nossos próximos eventos e os últimos posts do blog, advisories e outros recursos interessantes.