Saltar al contenido
Underc0de /foro

Workshop de pentesting com Kali Linux - Parte I

🌐 Esta é uma tradução automática de um tópico do Underc0de, a maior comunidade de hacking e TI em espanhol. Ler o original (espanhol) e responder →
ANTRAX ·
Los enlaces son solo para miembros. Registrate o iniciá sesión
<br /><br />Conteúdo<br /><br />0.- Pre - Boarding<br /><br />1.- O que é um Penetration Testing<br /><br />2.- Tipos de Testes em um Penetration Testing <br /><br />•   Testes de Caixa Cinza - "Gray Box" / "Partial Disclosure"<br />•   Testes de Caixa Branca - "White Box" / "Full Disclosure"<br />•   Testes de Caixa Preta - "Black Box" / "Blind"<br /><br />3.- Categorização de um Penetration Testing<br /><br />•   Intrusão Externa<br />•   Intrusão Interna<br /><br />4.- Metodologias<br /><br />•   OSSTMM (Open Source Security Testing Methodology)<br />•   ISSAF (Information Systems Security Assassment Framework)<br />•   Penetration Testing Framework  (Vulnerability Assessment  Penetration Testing Execution Standard)<br />•   OWASP<br /><br /><br />
<br /><br />Pre – Boarding<br /><br />Antes de começar este workshop, deixem-me apresentar: sou Jose Moruno Cadima A.K.A Snifer, e estarei como "tutor", entre aspas; muito pelo contrário, vou compartilhar o pouco conhecimento que fui adquirindo na vida profissional. Tenho o prazer de trabalhar na área de segurança da informação, por isso estou continuamente me aprimorando e incorporando novos conhecimentos. <br /><br />
Los enlaces son solo para miembros. Registrate o iniciá sesión
<br /> <br />No Workshop vamos abordar tudo relacionado a um Pentesting: a distribuição Kali Linux (escolhida pela qualidade e pelo apoio da comunidade, que a mantém em constante atualização), conheceremos o funcionamento das ferramentas e, em ambientes reais, definiremos alvos para serem escaneados e para obtenção de informações. Outro aspecto importante a destacar é que haverá alguns papers com Hacks e Tips relacionados a Pentesting, nos quais será abordada alguma ferramenta de Segurança que não estará diretamente relacionada ao conteúdo do Paper em curso. <br /><br /><br />O que é um Penetration Testing<br /><br />Antes de definir o que é um Penetration Testing, primeiro convém pensar em como o entendemos ou o interpretamos. <br /><br />O que é para você?<br /><br />"Por favor, antes de continuar, pergunte a si mesmo: o que é um Penetration Test?"<br /><br />Agora vejamos o que dizem as principais fontes de informação, tomando a Wikipedia, o OSSTMM e o NIST, a fim de obter uma concepção mais acertada, permitindo-nos continuar o Workshop com os conhecimentos necessários.<br /><br />
Los enlaces son solo para miembros. Registrate o iniciá sesión
<br /><br />"Método para avaliar a segurança de um sistema ou rede de computadores simulando um ataque de origem hostil" (Wikipedia)<br /><br />"Um teste de segurança com um objetivo específico que termina quando esse objetivo é alcançado ou o tempo disponível se esgota" (OSSTMM – Open Source Security Testing Methodology Manual)<br /><br />"Teste de segurança em que os avaliadores reproduzem ataques reais para subverter as funções de segurança de uma aplicação, sistema ou rede" (NIST – National Institute of Standards and Technology)<br /><br />Para mim, um Penetration Testing é um conjunto de técnicas que permitem avaliar o nível de segurança de uma organização ou serviço prestado. <br />Portanto, um Penetration Testing permite identificar falhas tecnológicas, identificando vulnerabilidades por meio da simulação do comportamento de intrusos. Realizar esse teste não certifica que um sistema é "seguro"; hoje ele pode ser seguro às 00:00 horas, mas às 00:01 já não é, porque tudo está em constante atualização. Por outro lado, entra em jogo o Fator Humano - que por preguiça ou simplicidade não modifica ou mantém as configurações padrão - somado ao fato de que a segurança absoluta não existe, é apenas uma falsa ilusão de segurança, e a seguinte analogia é ilustrativa.<br /><br />- Por que temos paredes em nossas casas?<br />- Por que temos uma porta em nosso lar?<br /><br />As respostas se resumem em: "Apenas nos damos uma falsa sensação de estarmos seguros, de que ninguém poderá nos observar nem roubar nossos pertences; pois se um ladrão quiser entrar na sua casa, ele entrará". Com a segurança da informação acontece o mesmo: por mais que estejamos totalmente certos de que nada de ruim vai acontecer, a Lei de Murphy se faz presente. <br /><br />
Los enlaces son solo para miembros. Registrate o iniciá sesión<br />"Percebam que no momento menos esperado acontece uma desgraça."
<br /><br />Atualmente, um Penetration Testing é considerado mais um recurso inserido nas tarefas de segurança das empresas, já que algumas contam com uma área específica dedicada totalmente a essa atividade. Um Penetration Testing pode ter diferentes escopos, levando em conta o que se deseja e a definição do que será feito e do que não será.<br /><br /><br />Tipos de Testes em um Penetration Testing<br /><br />Ao realizar um Penetration Testing, existem 3 tipos de teste: Caixa Preta, Branca e Cinza. A seguir, cada um deles é especificado em mais detalhes.<br /><br />Testes de Caixa Preta - "Black Box" / "Blind"<br /><br />Consiste em obter o máximo de informação possível, já que não se tem nenhum conhecimento nem informação prévia sobre o sistema ou rede a ser analisado.<br /><br />Testes de Caixa Branca - "White Box" / "Full Disclosure"<br /><br />Consiste em o consultor ter acesso a toda a informação, ou seja, infraestrutura, topologia de Rede, Endereços IP, código-fonte das aplicações, etc. <br /><br />Testes de Caixa Cinza - "Gray Box" / "Partial Disclosure"<br /><br />É um meio-termo entre Black e White (cuja união nos dá a cor cinza), uma mistura de ambos; o que implica obter um conhecimento parcial e, sendo este limitado, não se tem tudo em detalhe; definição que vem da contraparte, isto é, o contratante que solicita o teste. <br /><br /><br />Categorização de um Penetration Testing<br /><br />Existem principalmente dois tipos:<br /><br />• Intrusão Externa<br />• Intrusão Interna<br /><br />A seguir, explicaremos brevemente em que consiste cada uma: <br /><br />• Intrusão Externa<br /><br />O objetivo ou finalidade de uma intrusão externa é acessar equipamentos internos da organização, escalar privilégios e obter acesso root (Administrador). Vale ressaltar que esse processo é realizado com o objetivo de acessar a DMZ (Zona Desmilitarizada) de fora, por meio de uma série de técnicas que vão desde Engenharia Social, Sniffing, Password Cracking; em resumo, as melhores cartas do pentester são colocadas na mesa.<br /><br />• Intrusão Interna<br /><br />Como o nome indica, uma intrusão interna ocorre dentro da organização, conectando-se a um ponto físico ou rede Wifi - se for o caso - com o objetivo de demonstrar o quão insegura é a infraestrutura tecnológica, simulando ser um atacante interno; obviamente, com os privilégios mais baixos. Neste teste, o objetivo é escalar e ver a informação que está exposta, seja em compartilhamentos, servidores, senhas padrão ou má configuração de serviços. <br /><br /><br />
Ei! Pare aí, por que você não fala de DoS!
<br /><br />Já que perguntam, convém lembrar que os ataques de negação de serviço são coordenados na etapa interna, pois estando dentro da empresa podemos causar a queda de um equipamento fundamental para ela. Já na etapa externa não é necessária coordenação prévia com ninguém, porque qualquer pessoa pode executar um.<br /><br /><br />Mas o que é um DoS ou Negação de Serviço?<br /><br />É verdade, esquecemos de explicar o que é uma negação de serviço! Ainda não é tarde; assim, uma negação de serviço consiste em saturar um serviço com várias requisições ao mesmo tempo, sendo estas concorrentes, de modo a ultrapassar sua capacidade de concorrência. Por exemplo, se todos sairmos da aula ao mesmo tempo, não conseguiremos passar pela porta principal, causando assim uma negação de serviço. Qual é o serviço? A porta que nos oferece a opção de sair.<br /><br />Uma descrição gráfica de uma Negação de Serviço.<br /><br />
Los enlaces son solo para miembros. Registrate o iniciá sesión
<br /><br />Um Penetration Test geralmente tem 4 etapas principais, que são:<br /><br />Reconhecimento<br />Escaneamento<br />Enumeração<br />Obter acesso (Backdorização)<br /><br />Cada uma dessas etapas será detalhada nas próximas partes. Nesta primeira, basta conhecer e saber que existem; ressaltando que, se algo for mencionado e não aprofundado, é recomendável começar a buscar informações por conta própria. Estes workshops têm como objetivo dar uma visão geral e - ao mesmo tempo - ser um pequeno empurrão para que vocês se animem a pesquisar mais. <br /> <br /><br />Metodologias<br /><br />Ao realizar um Penetration Testing - na maioria das vezes - tomam-se como base Metodologias já definidas que cumprem certos padrões. Além disso, elas também permitem identificar as principais falhas da instituição; a seguir, cito algumas e - segundo minha experiência - as que considero principais ou que agregam mais valor no momento de sua utilização.<br /><br />OSSTMM (Open Source Security Testing Methodology)<br />ISSAF (Information Systems Security Assassment Framework)<br />Penetration Testing Framework  (Vulnerability Assessment  Penetration Testing Execution Standard)<br />OWASP<br /><br />Detalhar cada uma delas não faz sentido, já que estão devidamente documentadas em seus respectivos sites; talvez nas próximas partes dediquemos a elas uma análise mais profunda ou específica.<br />Para encerrar a primeira parte, deixo algumas perguntas - que prefiro - que sejam respondidas no fórum:<br /><br />1.- Vocês preferem realizar os testes em ambientes reais ou em ambientes controlados, ou seja, usar como exemplo algum site real online, ou montar um laboratório de testes e trabalhar sobre ele de forma local?<br /><br />2.- Sugestões, comentários ou algum ponto que desejem que apareça no próximo workshop como o primeiro bônus.<br /><br /><br /><br />
Snifer ·
Olá a todos, <br /><br />Qualquer dúvida ou sugestão é bem-vinda, não se esqueçam de responder às perguntas, espero que gostem!<br /><br />Regards,<br />Snifer
Kil0 ·
Excelente, parceiro<br /><br />Abraços  :)<br />
Flemon ·
Snifer, está fabuloso, ficou muito bom... Parabéns!!
Ruleman ·
Ficou maravilhoso e muito bem explicado!!!<br /><br />Abraços
WhiZ ·
Excelente, Snifer! O workshop está muito bom!<br /><br />Deixo +1 e esperamos que o próximo saia logo.<br /><br />Abraços!<br />WhiZ
C4P0 ·
Excelente introdução, cara, abraços!
drotha2 ·
Olá,<br /><br />Eu me inscrevo neste curso/Workshop de pentesting, já tenho o Kali, e com este manual excepcional ficaram claros alguns conceitos que eu não entendia, obrigado ao autor e a todos que colaboraram no projeto.<br /><br />Dá para ver que há vontade, espero os próximos para continuar as práticas.<br /><br />Agradeço o grande esforço e entusiasmo em ensinar.<br /><br />Abraços!<br /><br />
romaniuk ·
Parabéns pela primeira parte.
esvinusac ·
Excelente começar com este tutorial.<br /><br />Respondendo à sua primeira pergunta, eu preferiria um ambiente controlado para realizar os testes. Realizá-los em sites reais poderia ficar como tarefas, desafios ou algo parecido.
Snifer ·
Cita de: esvinusac en Octubre 23, 2014, 08:55:53 PM<br />Excelente começar com este tutorial.<br /><br />Respondendo à sua primeira pergunta, eu preferiria um ambiente controlado para realizar os testes. Realizá-los em sites reais poderia ficar como tarefas, desafios ou algo parecido.<br />
<br /><br />Ok! Já que você foi o primeiro, será assim! No próximo paper virá o primeiro Bônus ;). <br /><br />Regards,<br />Snifer
Grupo de WhatsApp