Boas-vindas ao Curso de Pentest: combinando vulnerabilidades e acessando o Shell, eu sou o José Augusto e serei o seu instrutor.
José Augusto é um homem branco, de olhos escuros, cabelos pretos, barba média e bigode curto e pretos. Veste uma camiseta preta sem estampa e está sentado em um ambiente com iluminação esverdeada. Ao fundo, há um armário com alguns livros na lateral esquerda e à direita do instrutor há uma mesa com um livro e acima uma janela com uma cortina branca.
José Augusto é autor do livro "Pentest em aplicações web: Avalie a segurança contra ataques web com testes de invasão no Kali Linux", pela Casa do Código (2021).
Neste curso vou passar para vocês um pouco da minha experiência em exploração de aplicações web em segurança ofensiva.
Segurança ofensiva: É um ramo da Segurança da Informação que serve para aumentar as defesas da organização.
Neste curso, não ensinaremos conceitos antiéticos. O objetivo de se ter uma ação ofensiva dentro de uma organização é gerar um relatório com as vulnerabilidades a serem corrigidas. Isto é, nos adiantar perante os agentes maliciosos. É isso que aprenderemos neste curso, com o foco em aplicações web.
Pré-requisitos:Você será desafiado várias vezes ao longo do curso, para concluir algumas etapas. Mas vou concluir essas etapas em vídeos posteriores com você, ou seja, é um curso baseado em desafios que vamos resolver juntos!
Vou apresentar uma introdução a um teste ofensivo em uma aplicação web, e você será desafiado a seguir sem a solução até o próximo vídeo. Caso não consiga, a resposta estará no vídeo de solução do desafio!
Espero que vocês gostem deste curso. Até a próxima aula!
Olá! Agora montaremos o ambiente desta aula. Precisamos garantir que você tenha instalado as seguintes ferramentas:
O nosso primeiro passo será acessar o VulnHub , este é uma plataforma que possui diversas máquinas vulneráveis em que podemos baixar e treinar com elas. Ou seja, realizar os testes de invasões em um ambiente controlado, em que vamos poder melhorar as nossas habilidades.
No site do VulnHub , podemos clicar em " Download (Mirror) ". Isso fará o download dessa máquina para a máquina de vocês.
Em seguida, acessaremos o nosso Virtualbox. Com ele aberto, na aba de downloads da sua máquina, podemos clicar "pwnlab_init.ova". Será aberta uma janela com o título "Configuração do Appliance", no campo "Nome" digitaremos "pwnlab" e clicaremos em "Placa de Rede" para garantir outros aspectos. Em seguida, vamos selecionar o botão "Importar", no canto inferior direito.
Com a máquina importada, vamos clicar no ícone de engrenagem na parte superior em "Configurações", para analisarmos se há alguma observação. Note que na janela que será aberta, na parte inferior terá uma mensagem: "Configurações: inválidas detectadas", com um ícone de atenção em um monitor de tela. Isso significa que é necessário alterar o monitor.
Do lado esquerdo, selecionaremos "Monitor", no campo "Controladora Gráfica" alteraremos para outra opção, até o erro desaparecer. Clicando em "Redes", à esquerda, no campo "Conectado a" eu vou deixar em modo Bridge, mas caso queira deixar em outro, basta alterar nesse campo. Garanta, também, que esteja utilizando a sua placa de rede correta em "Nome". Em seguida, clicaremos no botão "Ok", do lado direito inferior.
Na próxima aula, realizaremos alguns ataques, na prática. Vamos lá?
Estamos com o ambiente preparado para iniciar o nosso desafio. Porém, não sabemos o IP da máquina. Anota aí: a primeira coisa que precisamos fazer é um escaneamento na rede para encontrar esse servidor.
Estamos trabalhando com aplicações web, logo vamos procurar na nossa rede algum servidor que esteja com a porta 80 aberta.
Lembrando que a máquina virtual do instrutor está ligada em modo Bridge.
Como podemos buscar esses servidores com a porta 80 aberta? Vamos usar uma ferramenta de mapeamento de rede chamada de Nmap. Para isso, precisamos saber o IP, por isso, no terminal do Kali Linux, executaremos o comando ifconfig
. Note que temos no retorno inet finalizado com "15.171" e com o netmask sendo "255.255.155.0". Logo, é um "/24".
Como vamos executar o Nmap? No terminal, rodaremos o seguinte comando:
nmap -n -p 80 --open 192.168.15.0/24
Note que no retorno temos:
Como faremos para acessá-lo? Vamos copiá-lo, e acessar o Burp Suite. Para isso, clicaremos no ícone do Kali na parte superior esquerda do terminal e procurar por "Burp Suite".
Caso não saiba para que serve o Burp Suite, o ideal é assistir aos cursos listados nos pré-requisitos.
Será exibida uma tela, em que clicaremos no botão laranja escrito "Next", na parte inferior direita. Na próxima tela, selecionaremos o botão "Start Burp". Utilizaremos o Burp Suite por ser um proxy, que facilita o nosso trabalho com aplicações web. Além de incluir um browser bem configurado.
Após carregar, para acessar o browser, vamos selecionar "proxy" na parte superior na tela e, depois, "Open Browser" - por enquanto, podemos desabilitar o proxy selecionando "Intercept is on". Basta aguardar um navegador chromium abrir.
Será solicitado uma autenticação, em que você vai precisar inserir a senha do seu sistema operacional. Após inseri-la, basta clicar no botão "Unlock", do lado inferior direito.
Dessa forma, podemos colar o IP na URL do navegador e buscar. Com isso, acessamos a máquina do nosso desafio. Note que a aplicação possui algumas páginas: home, login e upload. Nesta última, é informado que para acessá-la é preciso estar logado.
Para essa máquina, vamos utilizar um ataque chamado LFI - Local File Inclusion (em português, "Injeção de arquivo local").
Esse tipo de ataque LFI - Local File Inclusion também é explicado nos cursos anteriores.
Observe as variações dos liks. Na página login está como "192.168.15.132/?page=login" e na página de upload fica "192.168.15.132/?page=upload".
No Back-End, temos algo parecido com: echo $nomedapagina + ".php"
, sendo $nomedapagina
a variável. Temos controle somente sobre a etapa de nome da página, logo não conseguimos, por exemplo, colocar o "/etc/pwd". Isso porque no momento do PHP acessar, ele concatenaria com .php
e assim ficaria "/etc/pwd.php" - sendo um arquivo inexistente.
Portanto, precisamos acessar arquivos que finalizam com ".php". Porém, se o arquivo termina com .php
, não conseguimos acessar informações sensíveis, dado que ele será sempre executado pelo servidor Apache.
Existe um conceito chamado de PHP Wrappers e vamos acessar a documentação dele no próximo vídeo!
O curso Pentest: combinando vulnerabilidades e acessando o Shell possui 97 minutos de vídeos, em um total de 47 atividades. Gostou? Conheça nossos outros cursos de Segurança em DevOps, ou leia nossos artigos de DevOps.
Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:
Impulsione a sua carreira com os melhores cursos e faça parte da maior comunidade tech.
1 ano de Alura
Assine o PLUS e garanta:
Formações com mais de 1500 cursos atualizados e novos lançamentos semanais, em Programação, Inteligência Artificial, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.
No Discord, você tem acesso a eventos exclusivos, grupos de estudos e mentorias com especialistas de diferentes áreas.
Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.
Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.
Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.
Acelere o seu aprendizado com a IA da Alura e prepare-se para o mercado internacional.
1 ano de Alura
Todos os benefícios do PLUS e mais vantagens exclusivas:
Luri é nossa inteligência artificial que tira dúvidas, dá exemplos práticos, corrige exercícios e ajuda a mergulhar ainda mais durante as aulas. Você pode conversar com a Luri até 100 mensagens por semana.
Aprenda um novo idioma e expanda seus horizontes profissionais. Cursos de Inglês, Espanhol e Inglês para Devs, 100% focado em tecnologia.
Transforme a sua jornada com benefícios exclusivos e evolua ainda mais na sua carreira.
1 ano de Alura
Todos os benefícios do PRO e mais vantagens exclusivas:
Mensagens ilimitadas para estudar com a Luri, a IA da Alura, disponível 24hs para tirar suas dúvidas, dar exemplos práticos, corrigir exercícios e impulsionar seus estudos.
Envie imagens para a Luri e ela te ajuda a solucionar problemas, identificar erros, esclarecer gráficos, analisar design e muito mais.
Escolha os ebooks da Casa do Código, a editora da Alura, que apoiarão a sua jornada de aprendizado para sempre.