Ofensivo Segurança do PWK & OSCP Revisão

Em 19 de dezembro de 2017, recebi um dos mais desejados e-mails de aspirantes a Ofensiva de Segurança entusiastas e profissionais…

Caro Jack,

Estamos felizes em informar que você concluiu com êxito os Testes de Penetração com o Kali Linux exame de certificação e de ter obtido a sua Ofensiva Security Certified Professional (OSCP) de certificação.

o homem estava em êxtase! Depois de 2 meses exaustivos de treinamento no laboratório OffSec e 20 horas longas, mas bem – sucedidas, no exame, tudo valeu a pena no final-eu finalmente fui um OSCP!

eu só poderia ter sonhado com este certificado, eu nunca esperava que ele se tornasse uma realidade tão cedo! Todo esse treinamento, noites sem dormir e o entusiasmo para aprender me trouxeram aqui. Então, ao escrever este post, quero compartilhar meus pensamentos, experiências e algumas dicas para quem pretende alcançar o OSCP!

fundo & experiência

Antes de me aprofundar no curso PWK e no OSCP, quero fornecer algumas informações sobre Meu Histórico e experiência. No momento em que escrevo este post, estou na indústria da InfoSec há ~3 anos. Muita da minha experiência veio da autoeducação, passando incontáveis horas em casa e na frente dos meus livros aprendendo novas ferramentas e técnicas. Muito do que aprendi foi colocado à prova no trabalho, onde realizei testes internos de Caneta, avaliações de segurança, engenharia reversa de malware (mais como depuração) e esse assunto. Ao mesmo tempo, supliquei meus estudos com prática – como competir em CTF’s, praticar em VulnHub VM’s e nos HackTheBox Labs. Para aqueles curiosos sobre as especificidades dos meus estudos, continue lendo, pois vou me aprofundar mais nisso na seção Dicas. Mas por enquanto, vamos entrar na verdadeira carne das coisas!

o curso PWK

a experiência geral do OSCP pode ser vista como um processo de 3 partes. O curso PWK, o laboratório PWK e o exame OSCP. Você tem a opção de se registrar por 30, 60 ou 90 dias de laboratório. Depois de se registrar, você seleciona a semana em que deseja iniciar seus estudos – especificamente um sábado/domingo é quando um novo curso é criado. É encorajado a registrar 10-30 dias antes da sua semana de início esperada, uma vez que os intervalos de tempo se enchem muito rápido! Na data de início do curso atribuído, você terá acesso para baixar todos os materiais do curso, incluindo os vídeos do curso PWK de Segurança Ofensiva de 8 horas, o curso PWK PDF de 375 páginas e seu acesso ao laboratório VPN. Uma vez que seu tempo de laboratório começa – será um bloco contínuo, o que significa que você não pode parar/iniciá-lo a qualquer momento após a data de início.

ao iniciar minha jornada OSCP, optei por cerca de 60 dias nos laboratórios (2 meses). Eu pensei que isso seria muito tempo para eu passar pelo PDF, vídeos e Laboratório, e que me daria espaço suficiente se alguns dias/semanas fossem muito agitados para eu estudar.

foi por volta das 19h do dia 14 de outubro, quando recebi minha VPN PWK e Material do curso. Eu instantaneamente comecei a trabalhar passando pelo PDF e suplicando cada capítulo com seu respectivo vídeo. Recomenda – se que você passe pelo PDF e pelos vídeos, pois os vídeos às vezes têm mais detalhes do que o pdf-o que deve ajudar a esclarecer algumas coisas. O PDF / vídeos cobrem muitas seções, incluindo Noções básicas do Linux, ferramentas essenciais, enumeração, coleta de informações, estouros de Buffer, escalonamento de privilégios, ataques do lado do cliente, ataques de aplicativos da Web, pivotagem e Metasploit.

passei cerca de uma semana passando por todo o curso PWK e alguns dos exercícios, e passei muito tempo na seção Buffer Overflow, pois esse era um dos tópicos que eu sabia que queria ace! No geral, para mim, o curso PWK foi honestamente uma atualização – a única coisa que foi benéfica para mim foi o estouro de Buffer e as seções dinâmicas do curso. Eu só completei cerca de metade dos exercícios antes de decidir pular para os laboratórios PWK.

agora observe que o curso PWK não fornece tudo o que você precisa saber! O curso está lá para ajudar a construir a base e ensinar-lhe os fundamentos iniciais que você precisa para ter sucesso. Haverá inúmeras coisas que você ainda precisará aprender/pesquisar durante o seu tempo nos laboratórios-então eu sugiro que você aprimore seu Google Fu!

o laboratório PWK

o laboratório PWK é a carne do curso PWK. É aqui que a maior parte do seu aprendizado ocorre. O laboratório tem cerca de 50 máquinas no total de diferentes sistemas operacionais, vulnerabilidades e configurações incorretas separadas em 4 seções de rede diferentes – Public, IT, Dev e Admin. Seu objetivo é ter acesso à rede de administração, mas para alguns, o objetivo pode ser diferente – então não deixe que ele chegue até você se você não puder entrar na rede de Administração!

todas as máquinas no laboratório variam em dificuldade-algumas são fáceis, enquanto algumas são” bater a cabeça sobre a mesa por horas a fio ” duro. Pode haver um tempo nos laboratórios onde você acha que uma máquina é invulnerável … e você pode estar certo, mas não é assim que o curso foi configurado. O laboratório PWK foi configurado para simular um ambiente de rede real ao vivo, o que significa que algumas máquinas interagem umas com as outras e podem ser comprometidas por ataques do lado do cliente. Outras máquinas, por outro lado, podem ter informações sobre elas que podem levar ao comprometimento de outra máquina no laboratório. Em geral, você nunca deve deixar nenhuma Pedra Sobre Pedra e enumerar adequadamente. Se você se encontrar preso, você sempre pode acessar o Fórum OSCP e IRC para pedir ajuda ou para procurar dicas. Não se preocupe se você precisar fazer isso-sua parte do processo de aprendizagem! Só não se agrave se a maioria das respostas que você recebe São “tente mais” ou “enumerar!”, porque as chances são, você não enumerou corretamente e perdeu uma informação crítica.

no início, quando entrei nos laboratórios, fiquei sobrecarregado, não sabia por onde começar! Felizmente, o curso PWK analisa algumas varreduras de enumeração simples, que podem ajudá-lo a iniciar seu ataque. Durante todo o tempo, usei o OneNote para acompanhar todas as minhas anotações, varreduras, comandos e capturas de tela.

ao entrar no laboratório, executei um pequeno conjunto de varreduras com Nmap e percebi um serviço específico em execução em uma das máquinas, que eu vi anteriormente ao fazer uma máquina no HackTheBox! Fiquei tão animado que atacei a máquina imediatamente – dentro de uma hora, tive acesso root e consegui aprender algumas coisas novas! Foi honestamente um ótimo começo. Dentro de 30 dias, consegui fazer root em 38 dos dispositivos-incluindo Pain, Sufferance, Ghost e Bethany – e tive acesso ao dev e à rede de TI. Nesse ponto, optei pelo exame OSCP e fechei o horário para 16 de dezembro às 9h.

no início, passei pelo laboratório usando Metasploit e alguma exploração manual. Nos últimos 30 dias, voltei por todas as máquinas que explorei via Metasploit e consegui fazer todas manualmente – seja portando os Exploits do Metasploit via Python ou usando scripts e ferramentas de terceiros para se conectar a serviços como MSSQL, etc. Com toda a honestidade, essa foi uma ótima ideia, pois me ajudou a entender melhor a escrita do exploit, e me ajudou durante meu exame OSCP.

o exame OSCP

este árduo exame de 24 horas com toda a honestidade é brutal, e tem todo o direito de ser! Seu objetivo inicial é provar que você tem uma boa base do ciclo de testes de penetração e provar que realmente aprendeu e manteve seu treinamento. Para o exame, você receberá 6 máquinas, 5 máquinas de exame e 1 VM de Teste do Windows, assim como nos laboratórios – esta VM será seu depurador para escrita de exploit. Cada máquina tem certos objetivos que você precisa completar para que seus pontos contem. Junto com isso, o Metasploit é restrito a apenas uma máquina, mas sugiro que você não use o Metasploit e salve-o como último recurso. Para passar, você precisa marcar 70/100 pontos, cada máquina com uma quantidade diferente de pontos, dependendo dos objetivos. Eu sugiro que você leia o Guia do exame OSCP para obter mais detalhes sobre o que é e o que não é permitido durante o exame.

finalmente-16 de Dezembro chegou. Acordei por volta das 7h30 – tomei um café da manhã, tomei um chá e fui dar um passeio para relaxar e pegar meus pensamentos. Por 8:30 eu estava sentado na minha mesa, todos os meus espaços de trabalho em Kali foram configurados da maneira que eu gostava, OneNote foi configurado para o exame, e eu enfileirado algumas horas de Deadmau5 e alguns tambor e baixo para tocar em meus fones de ouvido como eu trabalhava. Com certeza, às 9h recebi o e-mail da OffSec com meu exame VPN e instruções. Levei 15 minutos para ler tudo e fazer uma nota mental sobre o que eu precisava fazer. Às 9:30 eu estava fora e pegando a primeira máquina.

2 horas após minha hora inicial de início, terminei minha máquina de estouro de Buffer-mas não sem problemas. Na verdade, tive que entrar em contato com o OffSec para redefinir a máquina, pois o serviço não estava funcionando corretamente. Uma vez reiniciado, consegui explorar a máquina e consegui um shell de raiz! Eu estava um naufrágio nervoso, e as borboletas no meu estômago estavam agindo, mas por volta das 12h eu tinha duas máquinas enraizadas com 35 pontos no meu cinto! Neste ponto, decidi me afastar por uma hora e fazer uma pequena pausa.

depois de uma pausa relaxante, e um pouco de comida em mim, uma hora depois, consegui obter um shell limitado em outro dispositivo usando um método realmente bastante complexo e interessante. Pouco depois, consegui alcançar uma concha de alto privilégio, elevando-me a 55 pontos! Com toda a honestidade, complicei demais o processo e perdi uma informação crítica-só a encontrei quando voltei e enumerei novamente!

por volta das 18h eu bati em um bloco de estrada, com duas máquinas restantes, não consegui encontrar um ponto de entrada para a vida de mim. Enumerei tudo o que pude, mas continuei inventando espaços em branco ou continuei descendo buracos de coelho. Depois de cerca de uma hora de bater em becos sem saída, optei por fazer uma pequena pausa de 1 hora para comer e assistir TV. Uma vez que minha pausa acabou, voltei e comecei a enumerar novamente, e rapidamente avistei algo enquanto usava arroto. Depois de algumas horas de tentativa e erro, às 23h consegui um shell limitado, elevando-me até 67,5 pontos!

Oh cara, eu estava em êxtase – eu fiz uma volta de vitória ao redor da casa e tocou a música mais difícil para comemorar! Tudo que eu precisava era de uma casca de raiz e eu passo, fácil! Certo? Errado!

nas próximas 4 horas eu estava em outro obstáculo. Não consegui encontrar uma maneira de aumentar os privilégios – mesmo que tenha passado pelo processo duas vezes. Nada parecia funcionar. Encontrei-me saltando de volta entre a escalação de privilégios e a outra máquina, na esperança de encontrar uma maneira de obter o shell limitado final, ou para alcançar root. Às 2 da manhã, desisti de tentar criar raízes e decidi que preciso que a outra concha limitada passe.

neste momento eu estava exausto, 18 horas no exame e eu estava tão perto! Eu disse a mim mesmo que não vou falhar, que vou “tentar mais”… e então me atingiu. A segunda vez que percebi que estava tentando “muito duro” foi como se alguém levasse um morcego para a parte de trás da minha cabeça… eu estava seguindo um beco sem saída nas últimas horas! A vulnerabilidade que eu estava tentando explorar nunca foi ensinada no OSCP, nunca foi encontrada nos laboratórios – eu só sabia disso por causa dos meus estudos! Eu dei um passo para trás, e levou alguns minutos para respirar e fazer um pouco de chá.

voltei para a máquina com uma mente fresca e a mentalidade de “pensar simples”. E funcionou! Eu executei outra varredura Nikto em um diretório e me concedeu uma vulnerabilidade simples. Mas mesmo neste momento eu não era capaz de explorá-lo… até que eu vi algo interessante. Uma rápida pesquisa no Google me levou a algumas coisas e depois de alguma tentativa e erro, às 3 da manhã eu tinha outro shell limitado, me trazendo até 77,5 pontos – o suficiente para passar!

encerrando

neste ponto, desisti, voltei para reunir todas as capturas de tela e para ter certeza de que tinha todos os requisitos. Às 4 da manhã eu estava feliz dormindo-sabendo que eu passei! Acordei por volta das 13h do dia seguinte e comecei a trabalhar no meu relatório, que tinha cerca de 89 páginas de comprimento e bastante detalhado. Enviei meu relatório por volta das 4h da manhã de segunda-feira-fui a um show com meu irmão naquela noite haha-e na terça de manhã recebi minha resposta de que passei!

tudo o que posso dizer é-uau! Eu tenho o maior respeito por qualquer um que aceite o desafio do OSCP e passe por ele. Este é de longe um dos desafios mais difíceis que fiz até agora e me ensinou uma infinidade de coisas novas que posso utilizar em minhas atividades diárias de trabalho. Sinceramente, quero agradecer à OffSec por esta incrível experiência e oportunidade, talvez eu faça a OSCE em seguida!

Dicas & Recomendações

eu sei que muitos de vocês que estarão lendo este post vai pedir dicas/recomendações em ambos se preparando para fazer o OSCP ou sobre como e o que fazer durante o exame. Bem, não se preocupe – nesta seção, vou quebrar e incluir muitos dos materiais que usei para me preparar para o OSCP, bem como algumas dicas/truques para usar no exame.

Prerequsites:

no curso PWK, o OffSec afirma que você precisa entender os seguintes fundamentos para fazer o curso…

o teste de penetração com o Kali Linux é um curso de segurança fundamental, mas ainda exige que os alunos tenham certos conhecimentos antes de participar da aula de treinamento on-line. É necessária uma sólida compreensão do TCP / IP, Rede e habilidades razoáveis do Linux. A familiaridade com o script Bash junto com o Perl básico ou Python é considerada uma vantagem. Este curso avançado de testes de penetração não é para os fracos de coração; requer prática, testes e a capacidade de querer aprender de uma maneira que aumentará sua carreira no campo da segurança da informação e superará qualquer platô de aprendizado.

Se você está um pouco familiarizado com estes conceitos básicos, aqui estão alguns links para ajudar você a aprender os materiais necessários:

  • TCP/IP & Rede
    • Noções básicas de Rede: TCP, UDP, TCP/IP e Modelo OSI
    • Portas Comuns & Protocolos
    • Segurança+ Seção 1: Segurança De Rede
    • Nmap Básico
  • Linux & Bash Script
    • OverTheWire – Bandit
    • Bash Scritping Tutorial
    • Null Byte – Linux Básico
  • Python
    • “Codeacademy” – Python,
    • Python 2.7.14 Documentação

Prática:

Agora que você tem uma compreensão fundamental dos princípios, você precisa praticar… muito!!! Se são muito novos para testes de penetração e acho que tomar o OSCP vai te ensinar-então você está morto errado! Você precisa de muito treinamento e experiência anteriores para tentar algo como o OSCP.

os seguintes materiais abaixo irão ajudá-lo a dar os primeiros passos no teste de penetração, e para aqueles que já são experientes, ele irá ajudá-lo a praticar e expandir suas habilidades.

  • Vídeos
    • Cybrary – Testes de Penetração e Hacking Ético
    • Cybrary – Avançado Teste de Penetração
    • Cybrary – Aplicação Web Testes de Penetração
    • HackTheBox Instruções passo a passo por IppSec
    • PwnFunction Vídeos
    • LiveOverflow: O Segredo passo-a-passo para aprender Hacking
  • Livros
    • Testes de Penetração: Uma Introdução à Pirataria
    • O Hacker Playbook 3: Guia Prático Para Testes de Penetração
    • O Aplicativo Web do Hacker Manual: Encontrar e Explorar Falhas de Segurança
    • Chapéu Preto Python: Python Programação para Hackers e Pentesters
    • Hacking: A Arte de Exploração, 2ª Edição
  • Prática Labs
    • VulnHub
      • OSCP como VMs:
        • Kioptrix 1-5
        • FristiLeaks: 1.3
        • Grampeador: 1
        • PwnLab: init
        • cavidade craniana: 1
        • Mr-Robô: 1
        • HackLab: Vulnix
        • VulnOS: 2
        • SickOS: 1.2
        • SkyTower: 1
    • HackTheBox
      • Prática de Aposentados Máquinas também… confie em mim!
    • Pentestit Labs (Apenas Avançado!)
    • CTF365
    • PentesetLab – Bootcamp
    • Explorar os Exercícios Mainsequence
    • OverTheWire – Natas
  • Materiais de Estudo & Guias
    • Incrível Pentest
    • Segurança Notebook
    • geração de um TTY (Interativo) Shell
    • Shell Reverso Cheat Sheet
    • Metasploit Fundamentos
    • Criar Metasploit Cargas
    • Windows Escalonamento De Privilégios
      • Windows Escalonamento De Privilégios Fundamentos
      • Windows Escalonamento De Privilégios – Lista De Verificação
      • Notas Rápidas
    • Linux Privilige Escalation
      • Basic Linux Privilege Escalation
      • Linux Privilege Escalation Scripts
      • Exploit Exercises – Nebula
    • Buffer Overflows
      • Exploit Writing Tutorial Part 1 : Stack Based Overflows
      • Exploit Writing Tutorial Part 2 : Stack Based Overflows-saltando para Shellcode
      • Introdução ao conjunto x86
      • exercícios de exploração-Protostar

eu sei que há uma tonelada de material aqui, e pode parecer esmagador no início – mas sei que muitos desses tópicos se sobrepõem uma à outra quando você começa a estudar segurança ofensiva. Lembre – se, leva tempo para aprender-você precisa aproveitar o processo de aprendizagem, ou você nunca vai chegar ao seu objetivo final! Vá devagar, comece com o básico e suba.

Dicas Para Exames:

como em tudo, sempre há certas coisas que você deve saber e fazer durante o exame PWK Lab e OSCP, essas dicas a seguir devem ajudá-lo a manter o foco e a se afastar dos buracos de coelho.

  1. Enumerar, Enumerar, Enumerar!
  2. varreduras simples de Nmap com varredura de Script são seus amigos!
    • TCP: nmap -sS -sV -sC -n
    • UDP: nmap -sU -sV -n --top-ports 200
  3. Enumerar SNMP UDP (161), se estiver aberto!
    • snmp-check -t -c public
    • isso mostrará outras portas abertas / serviços e aplicativos em execução!
  4. enumerar SMB (TCP 139/TCP 445) se estiver aberto!
    • enum4linux
    • isso mostrará compartilhamentos abertos, logins anônimos, etc.
  5. execute nikto em diretórios interessantes!
    • nikto -h http(s)://:/
  6. DirBuster sobre dirb. Opte por usar a lista de palavras média para melhores resultados!
    • /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt
  7. verifique se há logins anônimos para FTP / SMB!
    • ftp
      • Nome De Usuário: anonymous Senha: anonymous
    • smbclient -L \
      • Nome De Usuário: root Senha: Nenhum
  8. verifique se há WebDav! Varredura de script Nmap deve pegá-lo! Se não…
    • davtest -url http(s)://
  9. não pense demais! Experimente frutas baixas primeiro!
    • senha igual ao nome de usuário?
    • combinação de nome de usuário/senha de admin:admin?
    • Google a documentação. Credenciais Padrão / Login?
  10. Gire as máquinas a cada 3-4 horas. Não se canse!
  11. tem uma ideia? Mas parece impossível? Experimente … você nunca sabe! =)
  12. faça pausas frequentes. Opte por uma pausa de 10 minutos a cada 2 horas.
  13. coma e beba! Reserve um tempo para o almoço e jantar. Seu cérebro precisa de comida para funcionar.
  14. limite a ingestão de cafeína, 1-2 xícaras de café está bem! Mas, beba chá e água.
  15. não tenha lanches ao seu lado. Se você está com fome, caminhe até a cozinha para um lanche, isso fará você se afastar do seu PC e ajudará a limpar sua mente.
  16. respiração … relaxe … você tem 24 horas!
  17. Organize suas anotações, faça capturas de tela e documente tudo!
  18. alguns dias antes do exame, crie e edite o esboço do seu relatório.
  19. no laboratório PWK, pratique os transbordamentos de Buffer até que você possa fazê-los de cor e sem notas.
  20. não desista facilmente e, o mais importante… ” tente mais!”.

Deixe uma resposta

O seu endereço de email não será publicado.