Vou entrar/sair da faculdade e curto infosec, e agora?

Algumas dúvidas recorrentes entre aqueles que se interessam pelo hacking ou segurança da informação, é a seguinte: “como eu começo?”, “como eu executo tal ataque?”, “fiz o que estava no vídeo mas não funcionou”, existe algum app para hackear wifi?” e entre todas essas, a mais clássica: “me ensina a hackear facebook?”

Outra coisa que também ocorre bastante com a galera que faz faculdade é: “qual faculdade eu devo fazer para estudar segurança?”, “qual faculdade tem matérias voltadas a segurança?” ou “curto segurança, fiz faculdade de tal coisa voltada a tecnologia e como posso começar a estudar segurança?” etc, etc.

A resposta para todas essas perguntas é: tenha base, meu caro.

Como qualquer outra área, o estudo em segurança da informação é baseado em horas de estudo de várias áreas diferentes, tecnologias diferentes e dedicação. Não é um vídeo no youtube ou um tutorial qualquer na internet que vai te ajudar a aprender tudo isso, ou até vai, apenas te ensinar a seguir “receitas de bolo”.

Talvez você não tenha percebido, mas, tudo o que você estudou (ou quase tudo) na sua universidade de ciências da computação por exemplo, pode ser usado para se aprofundar nos estudos em infosec. Você verá exemplos a seguir.

Para quem está no meio acadêmico, está prestes a sair da faculdade ou pretende entrar e tem dúvidas, este artigo talvez seja útil.

Engenharia Reversa

Em muitos CTFs, nos deparamos com desafios de engenharia reversa, que nada mais é (em modo grossíssimo) reverter um programa ao seu código-fonte original (ou próximo).

Para que possamos resolver este tipo de desafio ou trabalhar na área, é necessário ter uma boa base de arquitetura de computadores, entender como o seu computador funciona e uma boa noção de linguagem de máquina. A partir daí, você poderá se aprofundar em todos os seus derivados como por exemplo, análise de malware.

Criptografia

Criptografia, a arte do embaralhamento, consiste em uma base de conhecimento de seus conceitos, desde cifra de césar até SHA-512, entendendo o seu funcionamento, estudando suas aplicações, conceito de chaves públicas e privadas e criptoanálise.

Toda a nossa confidencialidade e integridade em rede são baseadas em camadas de criptografia, até quando tratamos de anonimato, o conhecimento em criptografia é de suma importância.

WEB

Provavelmente uma das áreas mais exploradas hoje se tratando de segurança ofensiva. Basicamente, toda empresa, organização e e-commerce possui um site e o mesmo pode ser facilmente vítima de ataques.

Para entender como funciona um processo de pentest por exemplo, ctf ou até mesmo bug bounty, é preciso ter uma boa base de como a web funciona, ter um bom conhecimento desde o cabeçalho http até a tecnologia mais recente, e é muito importante também estudar como os dados são armazenados e algumas das tecnologias mais usadas.

Linguagens como PHP e javascript, são essencias para entender como funciona o client-side e o server-side, html (que não é linguagem de programação, é importante lembrar), frameworks (django, angularJS, Ruby on Rails), banco de dados (MySQL, postgreSQL, NoSQL) já é um ótimo começo.

Também é importante lembrar que para entender bem como as coisas funcionam, é interessante desenvolver um pequeno projeto, algo simples, mas que funcione similar a um conteúdo em produção, assim você poderá ter uma visão também do desenvolvedor, o que vai facilitar um pouco mais as suas “caçadas”.

Programação

Nem preciso lembrar que programação é possivelmente a skill mais importante de um profissional de segurança e de TI em geral.

Com programação você pode desenvolver suas próprias ferramentas, consertar ferramentas de outros desenvolvedores que estão com algum bug, desenvolver exploits e quem sabe, se for de sua vontade, até participar de projetos opensource.

Redes

Estude redes! Redes é extremamente importante. Cansei de ver pessoas que vão usar o nmap por exemplo, seguindo um tutorial qualquer no youtube e falando que no vídeo o “instrutor” faz uma varredura na rede 192.168.0.0/24 e no computador dele não funciona porque a rede dele é 10.0.0.0/24. Repito novamente, estude redes. Entenda o conceito de portas, protocolos de comunicação, DNS, e aprenda como a nossa linda e maravilhosa internet funciona.

Sistemas operacionais

E por fim, nossa ferramenta principal, seu S.O. Seja linux ou windows, estude o seu sistema, entenda-o, quebre, reinstale, formate, teste versões diferentes, estude como ele gerencia os processos, memória, tudo, quem sabe você não encontra um novo EternalBlue.

Por fim, fiquem antenados em tudo o que acontece no mundo da segurança, faça networking, aprenda inglês, siga profissionais no twitter, de outro país ou não, leia artigos no medium, procure saber se existe algum projeto na sua universidade (ou crie um), crie um perfil no linkedin, tire dúvidas e assim você estará bem próximo de se tornar o bom profissional, ctf player ou bug hunter (ou os três).

Deixarei abaixo alguns links de cursos online e indicações de livros e, espero ter ajudado ao menos um pouquinho aqueles que ainda não sabem por onde começar.

Até a próxima!

Cursos Online

www.mentebinaria.com.br

academy.hackaflag.com.br

www.esecurity.com.br

www.desec.com

www.udemy.com

(recomento esse curso para quem está iniciando: https://www.udemy.com/fundamentos-de-ethical-hacking/ )

Livros

Testes de invasão (Georgia Weidman)

Pentest em aplicações web (Daniel Moreno)

Introdução ao pentest (Daniel Moreno)

Black Hat Python: Programação Python para hackers e pentesters (Justin Seitz)

The web application hackers handbook (Dafydd Stuttard e Marcus Pinto)

Mastering Modern Web Penetration Testing (Prakhar Prasad)

Análise de tráfego em redes TCP/IP (João Eriberto Mota FIlho)

Redes de computadores e a Internet — uma abordagem top-down (James F. Kurose, Keith W. Ross)

Introdução a criptografia (Marcelo Ferreira Zochio)

Criptografia e Segurança de Redes: princípios e práticas (William Stallings)

The Art of Memory Forensics: Detecting Malware and Threats in Windows, Linux, and Mac Memory (Michael Hale Ligh, Andrew Case, Jamie Levy, AAron Walters)

CTFs

www.ctftime.org

www.shellterlabs.com

www.hackaflag.com.br

Programas de Bug Bounty

bugcrowd

www.bugcrowd.com

hackerone

www.hackerone.com

synack

www.synack.com

Cobalt

www.cobalt.io

Zerocopter

www.zerocopter.com