
roteiro para um hacker autodidata
Hacking é a arte de usar as coisas de maneiras não intencionais. Por exemplo, se o período de teste de um software está prestes a expirar, você pode estendê-lo alterando a data do computador para a semana anterior. Isso é hacking.
Não existe uma 'única maneira certa' de aprender hacking porque é um termo muito amplo. É por isso que o propósito deste guia é fornecer uma direção, em vez de um roadmap.
Se você acha que algo deveria ser adicionado/melhorado, por favor crie uma issue.
Acredito que é importante conhecer as raízes, então vamos falar sobre elas sem analisar demais a origem.
Na década de 1960, as redes telefônicas usavam um conjunto de sons para processar chamadas. Um grupo de pessoas descobriu como tudo funcionava e conseguiu reproduzir os sons de frequência de 2600Hz usados por essas redes. Como eles fizeram isso? Soprando um apito que vinha de graça em caixas de cereal. Esse ato foi chamado de phreaking e as pessoas que o praticavam eram chamadas de phreaks.
Denny Teresi, um dos phreaks, disse em uma entrevista:
"Não era apenas para enganar a companhia telefônica, era o desafio técnico - se seríamos capazes de fazer isso."
Eles fizeram porque era um problema fascinante para resolver e queriam ver se conseguiriam resolvê-lo. Isso é exatamente o que a cultura hacker é, mesmo hoje.
Se você quer vender medicamentos, precisará apenas de um lugar para armazená-los e entregar o que o cliente precisa. Por outro lado, se você quer criar curas para doenças, precisará saber como o corpo humano e tudo funciona. Faz sentido, certo? O mesmo se aplica ao hacking. Se você quer ficar muito bom em hackear algo e criar novas técnicas para isso, precisa entender como funciona.
Se você tem alguma informação que acha que pode ser útil para outras pessoas, compartilhe através de redes sociais, fóruns ou blogs. Isso te beneficiará de várias maneiras:
Seja curioso, experimente bastante, construa coisas legais, esse é o objetivo, foi assim que tudo começou. Se você passar a vida usando técnicas e ferramentas desenvolvidas por outras pessoas, qual o sentido de escolher um caminho tão legal como este?
O roadmap contém alguns bons recursos, bem como alguns tópicos que você precisará pesquisar no Google e ler por conta própria. Isso não é simplesmente um 'guia passo a passo' ou uma coleção de recursos.
Leia/assista coisas, anote os termos que você não entende, pesquise no Google e aprenda sobre eles a partir de pelo menos 3 fontes diferentes, novamente anote termos que não entende e continue repetindo o processo. Por que pelo menos 3 fontes? Porque a informação fornecida por 1 criador será limitada ao que ele sabe; obtê-la de 3 criadores diferentes te dará uma compreensão melhor do assunto a partir de diferentes perspectivas.
Vou me referir a esta metodologia como 'aprendizado recursivo' ao longo do guia.
Hacking tem muitos campos, por exemplo, engenharia reversa, hacking web, hacking de carros, etc., mas algumas coisas são úteis independentemente do campo, então vamos falar sobre elas primeiro.
Isso te ajudará a obter uma compreensão mais profunda da máquina que você usará por horas todos os dias, bem como a ganhar uma perspectiva valiosa que não consigo realmente explicar em palavras.
Lembre-se, você só precisa saber o básico porque esse conhecimento continuará sendo desenvolvido se você for curioso, fazendo perguntas como "O que acontece quando você exclui um arquivo? Se eles permanecem no dispositivo, como o espaço é liberado? Se eles realmente desaparecem, como o software de recuperação os recupera?"
Recursos:
Entender como a internet (e outras redes) funciona é essencial porque as redes estão em toda parte.
Tópicos para iniciar aprendizado recursivo:
IP address, MAC address, port, client & server, dns, tcp, udp, proxy, tls/ssl, vpn
Recursos:
Você passará muito tempo no terminal, seja executando programas ou acessando servidores remotos. Você pode usar qualquer sistema operacional, mas sugiro sistemas baseados em Linux simplesmente porque você pode modificar tudo nele, o que é a essência do hacking. Ubuntu é uma ótima distribuição Linux para iniciantes.
Para entender como um determinado software funciona (facilita hackeá-lo) e criar seu próprio software para hacking e outras tarefas.
Existem muitas linguagens de programação, mas sugiro começar com Python porque é fácil e pode fazer quase tudo, desde criar um detector de rosto até um site.
Escrevi um artigo sobre como começar, confira.
Existem alguns conceitos que você encontrará em praticamente todos os artigos relacionados à segurança cibernética e que são úteis na maioria dos campos.