top of page

OWASP TOP 10

owasp_2021.png

É a framework pela qual, normalmente, tanto pentesters como gestores de vulnerabilidades se guiam para testar falhas que possam eventualmente existir em aplicações web. São enumeradas, de seguida, as diversas categorias que compõem esta framework

Broken Access Control - Controlo de acesso desconfigurado

É uma falha existente nos acessos por parte dos utilizadores autenticados, que por vezes não são configurados da forma mais assertiva o reforçada. Na presença desta falha, o atacante consegue chegar à informação de outra pessoa.

Esta falha sobe a nível de criticidade, deixando de estar na 5a posição como se observa na versão anterior do OWASP TOP 10

Cryptographic Failures - Falhas de criptografia também conhecida por exposição de dados sensíveis

Existem muitas aplicações web e mesmo API's (Aplication Programming Interface) que não protegem dados sensíveis;  se não houver uma camada extra de proteção, como a encriptação, os atacantes podem aceder a dados que deviam estar protegidos.

Falha que muda agora para a 2a posição

Injeção

Diferentes tipos de injeção como SQL, NoSQL, OS e LDAP injection. Podem ocorrer quando dados são enviados a um interpretador como parte de um comando ou query; estes dados podem "enganar" esse interpretador para que o mesmo execute comandos e, dessa forma, o atacante consiga aceder a dados sem a devida autorização.

A falha de XSS - Cross Site Scripting - passa a ser considerada dentro desta mesma categoria. 

É outra falha que surge derivado da falta de validação do input de um utilizador através de uma API, e que consegue criar ou HTML ou javascript. Este problema permite aos atacantes executar scripts no browser da vítima, o que significa que, se a exploração da falha for bem sucedida, o atacante pode roubar a sessão do utilizador, desconfigurar sites alterando o visual e redirecionar o utilizador para sites maliciosos.

Sem entrar em grandes pormenores, o XSS pode ser refletido quando o browser responde a um pedido da mesma forma que o pedido chega ao site; persistente - mais grave, porque qualquer pessoa que entre numa página com esse script irá ser vítima; e DOM (Relação com o Modelo de Objeto do Documento)

Esta falha muda para a 3a posição da tabela.

Design inseguro

É uma nova categoria, e com foco no design das aplicações. Não existem aplicações 100% seguras, e é necessário sempre mais configurações de padrões de design seguros, threat modelling e aplicação constante de princípios básicos de segurança

Security Misconfiguration - Desconfiguração de segurança

É a falha mais comum, porque é o resultado de diversas situações. Pode surgir de um sistema ou tecnologia que o site usa e que não está na versão mais recente, o que facilita a exploração de vulnerabilidades porventura existentes; bastante frequente é a utilização de uma falha nos headers de HTTP, que podem vazar alguma versão existente do lado do servidor, por exemplo, e o atacante usar essa informação para ir procurar exploits ou meios de exploração de servidores com essa mesma versão.

Os XXE's (Entidades externas de XML) são agora considerados nesta parte, falhas essas que provêm de processadores de XML desconfigurados, e esta falha pode levar a que ficheiros internos estejam expostos. Mais especificamente, com esta falha, os atacantes podem proceder à análise de portas existentes, execução de código remota, negação de serviço e aceder a partilhas de ficheiros internos

Uso de componentes vulneráveis e desatualizados

Anteriormente conhecida como componentes com falhas conhecidas.

Quando se fala em componentes, fala-se por exemplo de frameworks, livrarias, módulos de software, que correm com os mesmos privilégios que os da aplicação em si. Caso um componente seja explorado com sucesso, esse ataque pode levar à perda de dados ou mesmo a indisponibilidade do servidor

Falhas de identificação e autenticação

A anterior Broken Authentication, que tem a ver com situações em que funções de uma aplicação relacionadas com a gestão de autenticação e da sessão estão desconfiguradas; dessa forma, um atacante consegue obter palavras-chave, tokens de sessão ou mesmo passarem-se por alguém de forma temporária ou permanente

Falhas de software e integridade dos dados

É uma nova categoria, que se foca nas atualizações de software, dados críticos e bases de assets sem a verificação de integridade.

A des-serialização insegura faz agora parte desta categoria.

Como já descrito na anterior edição OWASP, o atacante consegue executar código remotamente caso explore esta falha de forma bem sucedida. A ação mais direta deste ataque é a recuperação de dados a partir de um conjunto de bytes, garantindo que correspondem às mesmas informações

Falhas de loggins de segurança e monitorização - anteriormente Logs insuficientes e Monitorização

O facto de não haver logs do que acontece numa aplicação, isto é, os pedidos que lhe chegam e as devidas respostas, faz com que seja bastante mais complicado responder em caso de incidente e, mais grave ainda, que um atacante consiga persistência no sistema, podendo depois escalar para outros sistemas, destruir dados, etc.

Server Side Request Forgery

Esta categoria surge mais diretamente dos inquéritos realizados à comunidade. O atacante consegue efetuar pedidos, ao invés de em nome do utilizador - por exemplo no caso do Cross Site Request Forgery - em nome do servidor. Desta forma, o atacante pode realizar ações não desejadas e/ou aceder a dados dentro da organização (acesso ao sistema back-end)

bottom of page