Hoje venci um desafio que havia planejado desde fevereiro: tirar a certificação GXPN.
Enfim, depois de 3 meses de estudo intensivo, mais de 1.400 páginas de material, diversos desafios online vencidos nos Labs via VPN da SANS, incluindo um CTF final, fiz a prova com conteúdo bem puxado, e consegui passar.
Vou contar um pouco sobre esse curso e essa certificação...
O conteúdo abordado por essa formação é o seguinte:
Exam Certification Objectives
Objectives | Objective Outcome Statement |
---|---|
Accessing the Network | The candidate will demonstrate an understanding of how to bypass network access control systems. |
Advanced Fuzzing Techniques | The candidate will be able to develop custom fuzzing test sequences using the Sulley framework. |
Advanced Stack Smashing | The candidate will demonstrate an understanding of how to write advanced stack overflow exploits against canary-protected programs and ASLR. |
Crypto for Pen Testers | The candidate will be able to attack and exploit common weaknesses in cryptographic implementations. |
Escaping Restricted Environments | The candidate will demonstrate an understanding of restricted environments in Linux and Windows, Desktop restriction techniques, as well as tools and techniques for bypassing them. |
Exploiting the Network | The candidate will demonstrate an understanding of how to exploit common vulnerabilities in modern networks attacking client systems and common network protocols. |
Fuzzing Introduction and Operation | The candidate will demonstrate an understanding of the benefits and practical application of protocol fuzzing to identify flaws in target software systems. |
Introduction to Memory and Dynamic Linux Memory | The candidate will demonstrate a basic understanding of X86 processor architecture, Linux memory management, assembly and the linking and loading process. |
Introduction to Windows Exploitation | The candidate will demonstrate an understanding of Windows constructs required for exploitation and the most common OS and Compile-Time Controls. |
Manipulating the Network | The candidate will demonstrate an understanding of how to manipulate common network systems to gain escalated privileges and the opportunity to exploit systems. |
Network Boot Attacks | The candidate will be able to attack and exploit common weaknesses in network boot environments, including DHCP, BOOTP, and PXE. |
Python and Scapy For Pen Testers | The candidate will demonstrate an understanding of the ability to read and modify Python scripts and packet crafting using Scapy to enhance functionality as required during a penetration test. |
Shellcode | The candidate will demonstrate the ability to write shellcode on the Linux operating system, and demonstrate an understanding of the Windows shellcode methodology. |
Smashing the Stack | The candidate will demonstrate an understanding of how to write basic exploits against stack overflow vulnerabilities. |
Windows Overflows | The candidate will demonstrate an understanding of how to exploit Windows vulnerabilities on the stack, and bypass memory protections. |
- deixar que a prova realmente comprovasse pra mim mesmo meu nível de conhecimento;
- é balela a história do open book, prq não serve pra muita coisa, e obviamente só percebi isso quando já estava fazendo a prova.
Agora, por que o open book não ajuda muito? Simplesmente porque o conteúdo não é decoreba, mas sim análise de casos, tráfego de rede, mapa de rede, resultado de debugging e análise do porque um exploit ou shellcode não funcionou, e o que fazer para que funcionem, análise de scripts de fuzzing e etc. Com isso, a maioria das questões apresenta print de telas para que sejam analisados e uma resposta seja dada.
A prova possui um total de 75 questões, com 180 minutos para realização da mesma. O que dá em média menos de 2 minutos e meio para cada questão. Felizmente finalizei com uma 1h30, pois nunca tive muita paciência com provas, ou sei a resposta ou não, afinal a resposta não cai do céu :-)
Voltando ao curso...
Optei fazer na modalidade SelfStudy, na qual recebemos as apostilas pelo correio, impressas, os mp3 das aulas (equivalente à 5 dias de curso, mais o CTF), e os DVDs com algumas VMs e ferramentas para não precisar fazer downloads para as práticas.
Assim que nos inscrevemos, também recebemos as credenciais para acesso via VPN aos labs da SANS e realizarmos as práticas de cada módulo do curso (são 5 ao todos, e o mesmo número de apostilas). E esse acesso dura 4 meses, que é o tempo que temos entre o estudo e a realização da prova. Se não realizar os labs e a prova nesse período, perdemos o acesso e o voucher, e precisamos pagar uma taxa para reagendar a mesma. Por esse motivo, não quis correr o risco e agendei a prova para três meses após receber todo o material e iniciar os estudos.
Cada módulo, ao todo 5, tem uma apostila específica, com teoria, exercícios práticos, e um bootcamp final para reforçar o conteúdo estudado no módulo. Os módulos são:
- Exploração de Redes
- Criptografia para Pentesters
- Python, Scapy e Fuzzing
- Linux Exploitation
- Windows Exploitation
Apenas para constar: os pdfs que estão disponíveis para download na internet, já estão desatualizados e sem uma série de conteúdos, além de não possibilitar o acesso de quem baixá-los aos labs da SANS.
Como o material é bem extenso (quase 1.400 páginas no total), decidi adotar uma estratégia para agilizar e facilitar meus estudos em um período curto. Afinal, o conteúdo além de complexo, é muito extenso para absorver tudo em 3 meses.
Comecei estudando toda a parte teórica, de todos os 5 módulos, e só depois que terminei, fiz as práticas, pois ajudou-me a concentrar esforços em duas fases distintas (só teoria e depois só prática), sendo que a segunda fase (prática) ajudou-me a relembrar e fixar a primeira parte (teoria).
É muito importante conseguir montar um lab da forma correta para que os exercícios dêem os resultados esperados e possamos entender a lógica da coisa toda. Por exemplo, sem ter um Windows XP SP0, um Windows XP SP3, um Windows Seven, um Windows Server 2003 e um Server 2008, ficará difícil entender o porque de um exploit funcionar em um, e não em outro, e ainda pode ter a possibilidade de readequar um exploit e/ou shellcode para funcionar em mais de uma versão de Windows, ou. no caso do Linux, em versões diferentes do kernel.
O investimento é alto, mas o conteúdo estudado compensa. Infelizmente no Brasil não ganhamos tão bem a ponto de tirar o escorpião do bolso e sacar $4,555.00 para bancar um curso e uma prova dessas, mas as vezes essas oportunidades caem do céu, como no meu caso, onde a empresa onde trabalho decidiu custear essa certificação. E como forma de reconhecimento, vi-me obrigado a passar na prova na primeira tentativa.
Uma coisa que achei interessante, foi o diferencial entre a certificação GXPN e a OSCE, onde na primeira é englobado técnicas de exploração tanto de Windows quanto de Linux, enquanto que na segunda, apenas sistemas Windows são explorados. De qualquer forma, a OSCE já está em meu radar para os próximos meses :-)
Agora tenho novos planos de certificações, para poder aprofundar-me em alguns assuntos de interesse pessoal, e outros que além de interesse pessoal, também envolve os interesses de meu empregador. No primeiro grupo, está a GREM, que infelizmente será deixada para o início do ano que vem, enquanto que aquelas que são de meu interesse, mas também envolvem minhas atividades do dia a dia, já estão agendadas para os próximos meses, e pagas.
Os próximos passos são: OSCP, através de treinamento presencial na Black Hat, e a OSCE, logo após a prova da OSCP. Ambas certificações já estão pagas, e só estão esperando a chegada da Black Hat e esse descanso merecido pós-GXPN. E inclusive sei que a GXPN está servindo como base para a OSCP e OSCE, pois sei do alto nível técnico cobrado por elas em suas avaliações. Esse foi o motivo por decidir seguir essa sequência de certificações.
Confesso que nesses últimos meses (de fevereiro à maio), deixei todos os livros de lado, até mesmo qualquer leitura para espairecer a cabeça, e foquei todo meu esforço nas apostilas, que somadas davam em torno de 3 livros bem técnicos e todos em inglês. Esse é outro ponto importante: o inglês precisa estar afiado, pois todo o material, bem como a prova, está em inglês, sem opção alternativa de tradução.
Bem, essa foi minha experiência, e alguns de meus planos futuros. Se alguém precisar de alguma ajuda, ou tirar dúvidas, sinta-se à vontade, que durante meu escasso tempo livre tentarei ajudar.
OBS1: a prova da GXPN tem 75 questões e é necessário acertar pelo menos 66% da prova para passar. Isso dá 50 questões.
OBS2: não colocarei meu score aqui, pois mesmo que eu diga que tirei 99% vai ter gente falando besteira, dizendo que não sei nada porque não tirei 100% ;-)
Tenho uma dúvida sobre o seu background. Ele foi muito necessário para a realização da certificação?
ResponderExcluirDigo isso pq já trabalhei com pentest uma grande empresa e, apesar de estudar as técnicas, metodologias e ferramentas, sentia que a minha falta de experiência em infraestrutura me prejudicava em vários pontos. Seja eles em descobrir falhas, ou até mesmo para consertar pontos críticos.
Olá Enry! Foi necessário sim, prq o curso supões que vc tem um conhecimento avançado em redes (o equivalente ao CCNP da Cisco), na parte de infra, que já saiba o mínimo de programação, fundamentos de criptografia, conhecimento de arquitetura e S.O.
ResponderExcluirTanto que eles indicam que se faça primeiro outros cursos da SANS como base preparatória para esse. Os cursos como pré-requisito são:
SEC504: Hacker Techniques, Exploits, and Incident Handling
SEC560: Network Penetration Testing and Ethical Hacking
SEC610: Reverse-Engineering Malware: Malware Analysis Tools and Techniques
Essa questão da necessidade de conhecimento que vc cita, é justamente uma preocupação minha na formação de profissionais. Justamente por isso, coloquei em minha formação de profissionais de pentest, o curso de hardening, que fala da segurança no aspecto da infraestrutura do cliente.
[ ]'s
Parabéns Luiz que bom que deu certo o seu Certificado. PARABENS....
ResponderExcluirValeu Daybson!
ExcluirParabéns pela certificação, raríssima aqui no Brasil, aliás profissional GIAC no Brasil contam-se nos dedos, tem empresas patéticas que nunca ouviram falar, o material que rola na internet é o de 2011 e o 2012, eu tenho o vídeo on demand inclusive, que é raro, porque participo de um grupo no skype que comprou dois cursos, o de 2011 e também compramos o 575 (esse jamais vazou), o grupo estava discutindo se vai adquirir o 642, já que uma forma geral os cursos da SANS são bons, mas não valem U$ 4000,oo até porque 99% dos participantes não compram do próprio bolso.
ResponderExcluironde você realizou a prova?
Em um mês realizo o GCIH e provavelmente meses depois o GCIA, GXPN não está muito no meu radar, mas OSCP está.
Fred, muito interessante a iniciativa desse grupo. Já havia ouvido falar de grupos assim, e acho interessante, por possibilitar o acesso ao material que tem um custo bem alto mesmo. No meu caso mesmo, quem bancou foi a empresa, prq do próprio bolso isso seria inimaginável... a não ser que eu bancasse só a prova...rs. Aqui no RJ fiz a prova na Infnet, por ter uma boa estrutura e ser perto de casa e do trabalho.
Excluir[ ]'s
Parabéns, Luis! Admiro quem tem essa força de vontade e esse foco nos estudos!
ResponderExcluirVocê usa alguma técnica específica pra estudar? Vi ali que você optou por ler toda a parte teórica e só depois partir para a prática, isso já é interessante. Mas você usa alguma outra técnica?
Digo isso porque possuo um sério problema em manter o foco nos estudos durante muito tempo.
Abração e parabéns novamente!
Derik, utilizo algumas técnicas sim, que ajudam um pouco mais. por exemplo, ouvir música barroca enquanto leio os textos, pois ajuda a estimular ambos hemisférios do cérebro.
ExcluirEstudar por 60 min. Separando em dois período de 30 min, onde 20 minutos eu estudo e 10 reviso o que foi estudado. Isso ajuda a fixar o conteúdo.
Abraço e obrigado pelos parabéns!
Parabéns, Luiz, Valeu!
ResponderExcluirValeu meu brother :-)
ExcluirCongratulations Pentester ! Parabéns professor realmente não é mole, qual a parte que vc achou mais cansativo na prova, eles abordam metodologia de outras instituições ou é só restrita somente GXPN , demorou para chegar o material selfStudy.
ResponderExcluirNilson, não é abordada nenhuma metodologia na prova. O foco é muito técnico, e não metodológico. Eles não se importam com a forma com que vc faz o pentest, mas sim com as técnicas que pode usar para chegar ao seu objetivo.
ExcluirO material chegou muito rápido, por volta de uma semana depois de tudo pago.
E a parte mais complicada pra mim foi a de criptografia, acredito que porque não seja um assunto que muito me agrade e justamente por isso dei menos importância nos estudos :-(
O restante, como são assuntos com que lido no dia a dia, ou tem a ver com reais interesses meus, alem de ter muita prática, foi bem mais tranquilo.
Parabéns Luiz! ganhamos todos com isso, você como professor, profissional e nós como alunos.
ResponderExcluirGostei do "ouvir musica barroca"!! parabéns pela certificação! Pelo que pude perceber foi tudo muito técnico, dai sua opção pelo não "open book" abs!!
ResponderExcluirGreat achievement!
ResponderExcluirParabéns.