BadStore: Web para testes de pentesting

BadStore é um aplicativo da web construído na distribuição Linux (Trinux). A distribuição permite simular um servidor com todos os serviços ativos e uma livraria instalada que contém várias falhas de segurança, para fazer testes de hacking e penetração.

BadStore pesa apenas 10 MB e pode ser usado desde o virtualbox para simular um servidor e realizar ataques de outro computador ou do mesmo.

O Plataforma web BadStore roda com Perl, Apache e MySQL.

As Vantagens da BadStore está:

  • Fácil de configurar.
  • Ele pode ser executado a partir de uma máquina virtual.
  • Podemos acessar a máquina virtual configurando um IP como se fosse um VPS.

Podemos baixar o ISO na página oficial do BadStore.

A seguir, usaremos o ISO do BadStore em uma máquina virtual como o Virtualbox. Precisaremos ter o VirtualBox instalado, sua instalação é muito simples conforme explicado nos tutoriais Crie um Servidor VPS em um computador doméstico e Linux - Instalação do Ubuntu.

Em seguida, iniciamos o Virtualbox e vamos criar a máquina virtual para hospedar o BadStore. Devemos selecionar uma versão de 32 bits do Linux.

Então clicamos em Próximo e nós vamos alocar memória para máquina virtualNeste caso, alocamos 1,7 GB de RAM mais do que o suficiente para esta versão do Trinux.

Nós clicamos em Próximo e vamos criar o disco virtual para instale nossa máquina virtual.

Então clicamos em Próximo e devemos atribuir o tipo de disco virtual. Os formatos mais utilizados que a Virtualbox nos oferece são:

  • VDI: É o formato padrão do Virtualbox.
  • VMDK: é um formato de código aberto, este tipo de arquivo de disco virtual pode funcionar em outras plataformas de virtualização, como VMWare.

Existem outros mais específicos, mas os anteriores são multiplataforma e os mais recomendados. Devemos levar em consideração antes de criar a máquina virtual se vamos rodar a máquina virtual em outras plataformas ou não, ambos os formatos funcionam em outros sistemas operacionais. Neste tutorial, usaremos o formato VDI.

Agora clicamos em Próximo e devemos atribuir um nome à pasta que funcionará como um disco rígido virtual. Também teremos que definir o tamanho do disco rígido virtual. BadStore Ele ocupa apenas 11 MB, mas atribuímos entre 4 GB e 50 GB caso desejemos instalar ferramentas de segurança ou de teste.

PROLONGAR

Então clicamos em Próximo e teremos que procurar o ISO para indicar qual será instalado.

Em seguida, iniciaremos o BadStore e veremos como se conectar a este VPS.

Irá iniciar o sistema em modo de console e vamos dar um Digitar Para ativar a linha de comando, neste caso não temos um domínio então usaremos o IP do VPS para realizar nossos ataques, o que devemos descobrir para começar é o IP do VPS. Para isso usaremos o comando:

 bash # ifconfig
Assim obtemos a configuração de uma rede Ethernet com ip 192.168.0.15, a partir de um navegador no computador, fora da máquina virtual, colocamos o IP.

Acessamos a web e podemos iniciar o análise de vulnerabilidade e testes de pentesting ou hacking que veremos a seguir.

PARA) Falha de pesquisa


A loja possui um motor de busca na coluna da esquerda, inserimos qualquer valor que seria a busca de um livro e faremos com que falhe, como resultado nos mostrará a consulta SQL.

Isso ocorre ao não validar os dados inseridos e os erros que ocorrem.

B) Vulnerabilidade com Cross Site Scripting (XSS)


Vamos deixar um comentário no Livro de Visitas, mas vamos colocar o código Javascript nos campos do formulário.

Nós adicionamos um comentário usando a função de alerta Javascript para mostrar uma mensagem, este código será salvo no banco de dados e então será executado toda vez que a página do livro de visitas for carregada. Esta vulnerabilidade nos permite inserir qualquer código Javascript, Podemos até redirecionar para outro site sempre que alguém acessa o livro de visitas, como

 
Com isso nós o redirecionamos.

C) Use Ferramentas de digitalização


Podemos usar o terminal de computador para escanear o VPS com diferentes ferramentas para obter mais informações,

Por exemplo:

Nmap: Com a ferramenta Nmap, podemos verificar as portas para determinar quais estão abertas:

 Nmap 192.168.0.15

Podemos ver que o serviço mysql está ativo, então pode haver um banco de dados rodando com a web.

D) Ataque ao servidor MySQL com SQLMAP


Para testar essa vulnerabilidade, usaremos o SQLMAP, como vimos em um tutorial anterior:

Ferramenta SQLMAP SQL Injection e hacking ético de banco de dados.

Devemos procurar uma URL para onde sejam enviados os parâmetros, para isso nada melhor que o buscador, se colocarmos o código de um livro por exemplo 1000, obteremos o link no navegador. Em seguida, usamos o comando sqlmap para descobrir qual mecanismo de banco de dados usa a web.

Eu verifico qual mecanismo de banco de dados usa a web e se ele é atacável e pesquisamos o banco de dados usando o seguinte comando:

 ./sqlmap.py -u "http://192.168.0.21/cgi-bin/badstore.cgi?searchquery=hi&action=search&x=0&y=0" --current-db

Podemos observar que o servidor é Apache e ele mecanismo de banco de dados é Mysql 5.0.

A seguir buscaremos fazer a varredura e listar as tabelas do banco de dados que encontrarmos, para isso utilizamos o seguinte comando:

 ./sqlmap.py -u "http://192.168.0.15/cgi-bin/badstore.cgi?searchquery=hi&action=search&x=0&y=0" --tables

E) Obtenção Acesso de administrador


Uma das vulnerabilidades é o uso de parâmetros de URL para alterar seções ou páginas da web. BadStore tem esta vulnerabilidade, por exemplo http://192.168.0.15/… ction = myaccount, se no parâmetro de ação passarmos como uma seção iremos para ele, portanto podemos tentar com admin, painel ou outra palavra que indique um painel de controle, exemplo http://192.168.0.15/… i? action = admin, efetivamente nos permite ver o painel de controle, mas não modifica nada.

Um erro comum é que, quando um usuário se registra, enviamos parâmetros ocultos para diferenciar um usuário de outro, por exemplo, um cliente de um provedor ou um administrador. Para ver se isso acontece vamos instalar um plugin para o navegador chamado Tamper Data e que mostra os parâmetros que são enviados de um formulário para que possamos ver se há parâmetros ocultos.

A seguir nós ativamos o plugin do menu do firefox Ferramentas> Dados de adulteração, isso permitirá capturar os dados que são enviados por meio de um formulário, se formos ao formulário de cadastro e clicarmos na opção de venda de dados adulterados Iniciar modificação, ao enviar captura os dados.

Podemos ver que existe um campo oculto chamado Função e é ele que determina a função para que U seja usuário e administrador, se alterarmos o parâmetro nos registraremos como administrador e teremos controle total do painel de controle.

Agora podemos acessar o painel de administração porque quando nos registramos já estamos logados. Também podemos acessar todas as listagens no painel de administração.

BadStore nos ajuda a realizar todos os tipos de testes de vulnerabilidades e oferece uma abordagem prática para encontrar e explorar vulnerabilidades baseadas na web. É uma forma de treinamento para saber como proteger adequadamente seus sites.

Podemos usar um software para detectar vulnerabilidades, vimos em um tutorial como:

Verificar a vulnerabilidade de um site com ZAP

Nessus - Analisa problemas de segurança de rede em sites.

Podemos ver um exemplo de varredura e gerar um relatório para visualizar o que é cada vulnerabilidade.

Gostou e ajudou este tutorial?Você pode recompensar o autor pressionando este botão para dar a ele um ponto positivo

Você vai ajudar o desenvolvimento do site, compartilhando a página com seus amigos

wave wave wave wave wave