O conhecimento de uma grande variedade de tópicos de ciência da computação é necessário, no entanto, conhecer as coisas em grande profundidade é a chave para o sucesso de um hacker. Portanto, ter uma atitude positiva em relação à aprendizagem é essencial na jornada de aprender a se tornar um hacker.
Below é o guia passo a passo que criei para lhe ensinar como ser um hacker:
- Passo 0: Leia O Manifesto de Hacking
- Passo 1: Aprenda a Programar em C
- Passo 2: Aprenda mais do que uma linguagem de programação
- Passo 3: Aprenda UNIX
- Passo 4: Aprenda mais que um sistema operacional
- Passo 5: Aprenda Conceitos de Rede
- Passo 6: Comece Simples: Leia alguns tutoriais sobre hacking
- Passo 7: Aprenda Criptografia
- Passo 8: Experiência A Lot
- Passo 9: Leia alguns bons livros de especialistas
- Passo 10: Participar nos desafios de hacking
- Step 11: Go Next Level: Escreva Vulnerabilidade
- Passo 12: Contribua para Projetos de Segurança de Código Aberto
- Passo 13: Continue aprendendo e continue ouvindo conversas de segurança
- Sumário
Passo 0: Leia O Manifesto de Hacking
Não é uma tarefa fácil ser um hacker. Como um hacker, você precisa ter uma atitude e curiosidade. Ler o manifesto de hacking pode lhe ensinar a atitude de um hacker. Alimentar a atitude do hacker é mais desenvolver competência nas línguas do que ter uma atitude estereotipada.
Muitas pessoas consideram que um hacker é um criminoso; No entanto, na vida real, eles são contratados por grandes empresas para proteger as informações e minimizar os danos potenciais. O ato de hackear na verdade é o de ser uma autoridade muito curiosa e mais esperta. Como um hacker, você deve estar muito empenhado em violar regras autoritárias, sigilo e censura. O engano é outro arsenal que lhe permitirá esquivar-se aos olhos vigilantes da autoridade.
O acto de roubar algo ou fazer mal a alguém não é hacking. Tais pessoas são comumente chamadas de crackers na comunidade. Crackers estão envolvidos em atividades ilegais e eu não vou recomendar que você se envolva em tais atividades.
Passo 1: Aprenda a Programar em C
C programação é uma das linguagens mais poderosas em programação de computadores, É necessário realmente dominar esta linguagem. Esta linguagem de programação foi inventada por Denise Ritchie entre os anos 1969 e 1973 na AT& T Bell Labs. A programação C irá essencialmente ajudá-lo a dividir a tarefa em peças menores e estas peças podem ser expressas por uma sequência de comandos. Tente escrever algum programa sozinho, avaliando a lógica.
Existem centenas de tutoriais gratuitos de programação C PDF & disponíveis na web para aprender, no entanto eu recomendaria que você começasse com um simples e bem escrito livro de programação c de sua escolha e depois lesse este livro (C Programming Language
Por Brian W. Kernighan e Dennis M. Ritchie) para entender o verdadeiro poder da linguagem c.
Este livro não é uma leitura fácil, no entanto é imprescindível ler o livro para obter uma compreensão profunda da linguagem C Programming.
Passo 2: Aprenda mais do que uma linguagem de programação
Quando você estiver tentando se tornar um hacker, é muito importante aprender outras linguagens modernas de programação de computadores como Java, Perl, PHP e Python. Uma das melhores maneiras de aprender estas linguagens é lendo livros de especialistas. Também ajudará a saber sobre linguagens de marcação como XML, HTML e formatos de dados como JSON, Protobuf, e outras que são uma forma comum de transferir dados entre cliente e servidor.
Java é uma das linguagens de programação mais populares. Tem sido afirmado que também é muito segura. Conhecer o modelo de segurança Java irá capacitá-lo a compreender como esta linguagem atinge a segurança. Aprenda sobre as brechas de segurança na linguagem Java e frameworks relacionados. Escolha e leia muitos PDF, tutoriais e ebooks grátis disponíveis para aprender java online.
Perl é uma linguagem de programação dinâmica de propósito geral, que é de alto nível e pode ser interpretada. Esta linguagem toma emprestadas algumas características da linguagem C. Por outro lado, JAVA é uma linguagem de programação concorrente, baseada em classes e orientada a objetos. Python é realmente útil quando você está tentando automatizar algumas tarefas repetitivas.
HTML é a linguagem de marcação baseada na qual as páginas web são desenhadas, criadas e exibidas. Os navegadores web lêem o código HTML para exibir a página web.
Python é a melhor linguagem para desenvolvimento web e linguagem favorita de muitos programadores devido à sua simplicidade e rápida rotação. Muita gente usa Python para fazer automação simples e complexa.
Para mais tutoriais de linguagem de programação verifique – os melhores tutoriais de programação.
Passo 3: Aprenda UNIX
UNIX é um sistema operacional de computador multi-tarefa e multi-usuário que foi desenvolvido por alguns funcionários da AT&T no Bell Labs. A melhor maneira de aprender é entrar em uma versão open-source (por exemplo, centos) e instalar/executar o mesmo por conta própria. Você pode operar a internet sem aprender UNIX, mas não é possível para você ser um hacker da internet sem entender UNIX.
Se você ainda não usou o sistema operacional Unix, alguns comandos essenciais do linux farão com que você se sinta confortável em começar rapidamente.
Unix in a Nutshell by Arnold Robbins é uma boa maneira de começar. Este livro irá ensiná-lo a usar o Unix.
A próxima coisa que você precisa saber é sobre os internos deste sistema operacional. Eu recomendo
O Projeto do Sistema Operacional UNIX por Maurice J. Bach para obter uma compreensão profunda do sistema operacional Unix.
Um grande número de servidores web estão hospedados em servidores baseados em Unix e conhecer os internos deste sistema operacional vai ser realmente um grande impulso em suas habilidades.
Passo 4: Aprenda mais que um sistema operacional
Existem muitos outros sistemas operacionais além do UNIX. O sistema operacional Windows é um dos sistemas mais comumente comprometidos, por isso é bom aprender a hackear sistemas Microsoft, que são sistemas de código fechado.
De acordo com o National Vulnerability Database, os sistemas operacionais Microsoft têm um grande número de vulnerabilidades.
Os instaladores de sistemas operacionais Windows são distribuídos em binário, portanto não é fácil para você ler o código. O código binário é basicamente a representação digital de texto e dados que o computador entende. No entanto, saber como os programas são escritos para Windows e como diferentes aplicações se comportam neste sistema operacional ajudará.
Uma das recentes vulnerabilidades de um sistema operacional popular foi que aplicações Java Web Start são iniciadas automaticamente mesmo que os plug-ins Java estejam desabilitados. Como ser um hacker é conhecer as fraquezas desses sistemas operacionais e ter como alvo sistematicamente.
Passo 5: Aprenda Conceitos de Rede
O conceito de rede precisa ser nítido quando você quer ser um hacker.
Entender como as redes são criadas é importante, no entanto, você precisa saber que as diferenças entre os diferentes tipos são redes. Ter um claro entendimento do protocolo TCP/IP e UDP é uma necessidade para ser capaz de explorar as vulnerabilidades na rede mundial.
Entenda o que é subrede, LAN, WAN e VPN.
Eu recomendo redes de computadores: A Top-Down Approach Por James F. Kurose e Keith W. Ross
Os comandos de rede para fazer um pedido HTTP precisam estar na ponta dos seus dedos. O protocolo HTTP é o gateway através do qual se entra no mundo da Internet. Por isso é necessário aprender este protocolo para quebrar as barreiras. Os hackers frequentemente usam o gateway HTTP para quebrar a segurança do sistema e assumir o controle sobre ele.
Apache Httpd é um dos servidores web mais comumente usados e saber dentro e fora dele vai capacitá-lo em qualquer esforço relacionado ao protocolo HTTP ou outra camada de aplicação.
Nmap é uma poderosa ferramenta de escaneamento de rede que é usada por hackers e profissionais de segurança em todo o mundo para identificar hosts vulneráveis. No entanto, para começar a usá-lo efetivamente, você deve entender o básico da rede. Para obter habilidades avançadas no NMap você pode consultar o livro pelos criadores – Nmap Network Scanning: O Guia Oficial do Projeto Nmap para Descoberta de Rede e Varredura de Segurança
Passo 6: Comece Simples: Leia alguns tutoriais sobre hacking
Esta é a melhor e mais simples maneira de começar. Leia tantos tutoriais quanto possível que são destinados ao hacking. Estes artigos lhe darão uma visão e o ajudarão a desenvolver a atitude de ser um hacker. Alguns tutoriais irão iniciá-lo com o Nmap, Nessus e SuperScan, alguns dos programas ou ferramentas de hacking que os hackers geralmente usam. Estes tutoriais estão prontamente disponíveis através da Internet; Ambos os tutoriais em texto e vídeo estão disponíveis para você responder a sua pergunta sobre como ser um hacker.
Passo 7: Aprenda Criptografia
Como um hacker experiente, você precisa entender e dominar a arte da criptografia. A tecnologia de criptografia e criptografia é muito importante para internet e redes. É a prática e o estudo de técnicas que são utilizadas para a comunicação segura na presença de terceiros. A criptografia é feita para vários aspectos da segurança da informação, como a confidencialidade dos dados, a integridade dos dados e a autenticação. Além disso, a tecnologia de criptografia é amplamente utilizada em cartões ATM, senhas de computadores e comércio eletrônico. Enquanto hacking, esses códigos criptografados precisam ser quebrados, o que é chamado de decriptografia.
Cryptography é muito utilizada na comunicação via Internet baseada em SSL. Um hacker especialista deve ser capaz de entender como o SSL funciona e qual é a importância da criptografia para manter o SSL seguro.
Leitura de vários algoritmos de criptografia e veja porque eles são difíceis de decifrar. Participe dos desafios para decifrar criptografia poderosa. Um hacker especialista será capaz de demonstrar fraquezas em um algoritmo de criptografia e deve ser capaz de escrever um programa que pode mostrar como a decriptação pode ser realizada sem muita informação sobre chaves.
Entender várias técnicas usadas para crackear senhas. Há dezenas de ferramentas disponíveis para fazer o cracking de senhas, e usá-las não é hacking. Para ser um especialista em hacking é importante para você entender como criar um programa que pode craquear uma senha do ciphertext.
Eu recomendo este curso gratuito de criptografia por Dan Boneh da Universidade de Stanford em Coursera
Passo 8: Experiência A Lot
Este é um passo importante para se configurar como um hacker especialista. Monte um laboratório por conta própria para experimentar o aprendizado sobre as aplicações práticas. O laboratório mais simples terá seu computador, no entanto, uma vez que você avance você pode querer adicionar mais e mais computadores e hardware necessário para seus experimentos.
É bom tentar experimentar em seus próprios computadores, onde você pode retificar se você tiver cometido algum erro. Muitos hackers inicialmente começam baixando aplicativos de laboratório virtual, como o Oracle VirtualBox. Você requer pelo menos 3 GB de RAM e um processador comparativamente poderoso para realizar seus experimentos de hacking. Configurar a máquina virtual é crucial, pois permitirá que você teste vírus, aplicativos e servidores diferentes sem afetar seu próprio PC.
Algumas das coisas que você pode precisar ter em mente ao fazer experimentos
- Atenha uma cópia de segurança antes de qualquer experimento.
- Comece pequeno e tenha pontos de verificação.
- Saber quando parar.
- Documentar o seu progresso
- Selecionar improvisando
- Automate tarefas repetitivas
>
>
Passo 9: Leia alguns bons livros de especialistas
>
Leitura sempre aumentará o seu conhecimento. Tente ler o maior número possível de livros e artigos escritos pelos especialistas na área de hacking ético e segurança empresarial
Ler muito sobre qualquer coisa relacionada é tão importante em um mundo de hackers que você também deve considerar aumentar a sua velocidade de leitura. Se a sua velocidade de leitura é lenta, então você pode não ser capaz de progredir rapidamente neste campo. Pratique técnicas de velocidade de leitura como skimming, leitura de pedaços, etc.
Quando se trata de ler muito, também é importante saber que a maioria do conteúdo da web não vale o seu tempo. Muitas pessoas usam truques de motor de busca para atrair tráfego mas têm pouco valor nele. Se você folhear um artigo em segundos e decidir não ler isso vai economizar muito tempo para algum conteúdo realmente bem pesquisado.
A Arte da Exploração de Jon Erickson é um excelente livro para lhe ensinar a tornar-se um hacker avançado.
Passo 10: Participar nos desafios de hacking
A participação regular nos desafios de hacking pode ajudá-lo a aprender mais e a aguçar os seus conhecimentos. Existem várias empresas que organizam esses desafios para verificar a vulnerabilidade de seus produtos de software. O desafio mais comum de hacking inclui quebrar o sistema de segurança do software e assumir o controle dos sistemas informáticos de terceiros. Além disso, há alguns sites listados abaixo que oferecem regularmente desafios de hacking online.
- hackquest.de
- hacktissite.org
- www.trythis0ne.com
- www.hackchallenge.net
- hacking-lab.com
Step 11: Go Next Level: Escreva Vulnerabilidade
A vulnerabilidade de um programa é a fraqueza do programa. É uma boa abordagem para procurar a vulnerabilidade de um programa existente e compartilhar o mesmo com outros. Desta forma você terá a opção de coletar opiniões variadas de diferentes fontes, permitindo que você aprimore seu conjunto de habilidades atuais.
Os exemplos de vulnerabilidades do computador incluem violação da segurança da memória, erro de validação de entrada, erros de confusão de privilégio e falha na interface do usuário. Por exemplo, o Internet Explorer 11 da Microsoft tinha o bug de vulnerabilidade em sua versão de visualização que vários hackers exploraram.
Identificar um novo ponto fraco em qualquer software é o verdadeiro trabalho que qualquer hacker especialista faria.
Passo 12: Contribua para Projetos de Segurança de Código Aberto
Contribuir para um projeto de segurança de computador de código aberto é uma ótima plataforma para testar suas habilidades. Esta não é a chávena de chá de todos. Muitas organizações como Mozilla e Apache oferecem estes tipos de projetos de código aberto. Tente fazer parte destes projetos e acrescente uma contribuição valiosa para o benefício da comunidade.
Participar nos projetos de segurança de código aberto como anti-spam, anti-vírus, firewall e remoção de dados ajuda a aumentar sua destreza como hacker.
Contribuir suas descobertas de vulnerabilidade para os bancos de dados globais de vulnerabilidade e devolver à comunidade.
Lembrar que não importa se a sua contribuição é pequena, desde que você participe e agregue valor, isso ajuda.
Passo 13: Continue aprendendo e continue ouvindo conversas de segurança
A chave para o sucesso na carreira de hacking é a aprendizagem contínua. Ler blogs para hacking disponíveis em sites como o blog hackerfactor e o blog hacker da IKEA; participar nos fóruns como o hackforums.net e hack de elite são excelentes formas de refrescar os seus conhecimentos como hacker. Os fóruns de vídeo online como TED ou TechTalk são boas fontes para saber mais sobre as técnicas e tecnologias de hacking emergentes que estão sendo implantadas. Você também deve tentar seguir os posts de hackers famosos como Adrian Lamo, Kevin Mitnick, Kevin Poulsen e Robert Tappan Morris.
Sumário
Acima estão alguns passos exaustivos que podem ensiná-lo como ser um hacker e ajudá-lo a percorrer o caminho de ser um hacker especialista. No entanto, você deve ser um cidadão responsável e ser seletivo, garantindo que você não use essa habilidade para violar a segurança de instituições importantes, já que isso pode colocá-lo em dificuldades terríveis. Você deve sempre lembrar que, para cada ferramenta de hacking, há sempre uma ferramenta de contra-hacking. Portanto, seja um hacker inteligente e, mais importante, seja um hacker responsável.