Hacking

Hacking de Aplicações Web

Project

O que é hacking em aplicações web

É um processo de detecção de vulnerabilidades em aplicações web, o hacker de aplicações web precisa ter um profundo conhecimento sobre a arquitetura de uma aplicação web para poder hackeá-la com sucesso.

Hacking de aplicações web se baseia em quebrar os mecanismos de defesa de uma aplicação web, isso requer tenacidade, atenção aos detalhes, observação e foco.

Principais mecanismos de defesa

Existem três (3) principais mecanismos em que podemos proteger uma aplicação web:

  • Tratamento de acesso do usuário
  • Tratamento de entrada dos dados do usuário
  • Tratamento de atacantes

Tratamento de acesso do usuário

Esse mecanismo consiste em validar se o utilizador tem permissão ou autorização para acessar um recurso na aplicação web.

Quando esse mecanismo é mal implementado surgem vulnerabilidades como:

  • Broken Access Control Permite que um atacante consiga acesso não autorizado a funcionalidades e dados sensíveis de uma aplicação.

Untitled

  • IDOR Permite que um atacante acesse objectos de forma directa através de entradas do usuários, isso pode acontecer através de parâmetros da URL, cookies, directórios, entre outros.

Untitled

Tratamento de entrada dos dados do usuário

Este mecanismo consiste em validar os dados que o utilizador insere na aplicação web, de modo a garantir que o utilizador insira apenas o que a aplicação web espera, evitando possíveis vulnerabilidades.

Este é um dos mecanismos mais complicados de implementer, pois a implementação nunca é 100% eficaz, uma vez que novas técnicas de exploração estão sempre a surgir.

Através de entrada destes dados podem surgir várias vulnerabilidades que podem comprometer a aplicação, essas vulnerabilidades são chamadas de “Input-Based Vulnerabilities”, e estas são algumas delas:

  • Cross Site Scripting Permite a injecção de código javascript na aplicação web, este mesmo código javascript reflecte nos navegadores de utilizadores da aplicação, e isso pode comprometer a privacidade destes utilizadores.

Untitled

  • SQL Injection Permite a injeção de comandos SQL na base dados da aplicação através de um input da aplicação, possibilitando que um atacante consiga executar comandos arbitrários na base dados, e assim conseguir visualizar e editar qualquer informação.

Untitled

  • Open Redirect Permite que através de uma URL da aplicação confiável, um atacante consiga redirecionar utilizadores para uma aplicação maliciosa.

Untitled

  • Server Side Request Forgery Permite que o atacante consiga forjar solicitações ou requisições utilizando o servidor da aplicação, é muita das vezes aproveitada para acessar recursos internos na rede do servidor da aplicação.

Untitled

Tratamento de atacantes

Este mecanismo consiste em fazer monitoramento da aplicação web, dando notificações e estatísticas da aplicação aos administradores dela, e também dificultando tentativas de ataques, através de bloqueios, e outros meios.

Quando esse mecanismo é mal implementado, a aplicação corre o risco de sofrer ataques e não se defender contra os mesmos, não salvar logs e nem sequer alertar os administradores sobre o ocorrido.

É notável a importância de um hacker saber quebrar os mecanismos de defesa, pois esses mecanismos são responsáveis pela segurança da aplicação web, e hackear uma aplicação web, nada mais é do quebrar a segurança dela.

Neste artigo você entendeu sobre o que é hacking de aplicações web, quais mecanismos de defesa são implementados em aplicações web e quais vulnerabilidades podem surgir se eles forem mal implementados. Se você gostou, compartilhe este artigo.

May 14, 2023

Compartilhar

Artigos Relacionados

Hacking

O que realmente é um hacker ético?

Hacking

Introdução à Auditoria de Segurança em Contractos Inteligentes

Hacking

Iniciando uma jornada em segurança de blockchain