e Protocolos
Um dos assuntos mais importantes para o aspirante a hacker estudar é o da arquitetura de rede e protocolos. Os computadores podem estar em rede em muitas configurações e tamanhos diferentes, e com diferentes tecnologias que regem sua interconexão. Desde fio de cobre, até fibra óptica, até conexões sem fio e satélite, bem como combinações de todas estas mídias, construímos uma vasta rede de computadores em todo o mundo. Esta rede pode ser entendida em sua totalidade, em grande escala, bem como vista como uma conexão de redes menores e independentes.
Em termos de tamanho, as redes de computadores têm sido tradicionalmente categorizadas como Redes de Área Local (LAN) e Redes de Área Ampla (WAN). Os WANs normalmente conectam vários LANs. Existem várias outras designações para diferentes tamanhos de redes, e a terminologia está sempre mudando à medida que novas tecnologias e condutividades se desenvolvem. Acompanhar estas mudanças é uma das tarefas constantes de um hacker.
As redes também possuem arquiteturas diferentes. A arquitetura é determinada não apenas pela configuração dos diferentes nódulos, mas também pelo meio que os conecta. Originalmente, computadores em rede eram sempre conectados por fios de cobre. Os cabos de rede de cobre comumente utilizados, muitas vezes conhecidos como cabos ethernet , consistem em pares torcidos de fio de cobre. Embora o mais comum destes cabos seja o cabo categoria cinco, ou CAT-5, está começando a dar lugar a um novo padrão, o CAT-6, que tem maior capacidade de transmissão de sinais. Para aplicações de alta velocidade e distâncias mais longas, os cabos de fibra óptica são geralmente escolhidos. A fibra óptica usa luz em vez de eletricidade e tem uma capacidade muito alta para transportar informações. Eles são usados para transmitir a televisão a cabo mais moderna e serviços de internet de alta velocidade. A fibra óptica serve como espinha dorsal para a internet. Em áreas menores, redes sem fio são muito comuns. Usando um protocolo Wireless Fidelity (Wi-Fi), existem redes sem fio em um grande número de LANs pessoais, privadas e comerciais. Os hackers estão frequentemente e particularmente interessados em invadir redes Wi-Fi, o que resulta na evolução dos padrões de segurança Wi-Fi.
Independentemente da arquitetura ou meio de transmissão, quando dois terminais estão se comunicando em uma rede, eles devem fazê-lo usando um conjunto comum de regras conhecido como protocolo . Os protocolos de rede evoluíram desde que as primeiras redes de computadores foram criadas, mas mantiveram a mesma abordagem básica em camadas. Em geral, uma rede é conceituada em termos de diferentes camadas que executam diferentes funções. Isto também é conhecido como uma pilha (stack) . Os protocolos de comunicação mais comuns utilizados hoje são o Protocolo de Internet (IP) e o Protocolo de Controle de Transmissão (TCP). Juntos, são comumente conhecidos como TCP/IP . Estes protocolos mudam e são padronizados de vez em quando. É fundamental que o hacker aprenda estes protocolos e como eles se relacionam com a comunicação entre as diferentes camadas da pilha. É assim que os hackers podem obter níveis cada vez maiores de acesso a um sistema.
Linguagens de Programação
Para quem nunca o fez antes, pode parecer assustador aprender uma linguagem de programação do zero, mas muitas pessoas acham que, uma vez que se tornam proficientes em uma linguagem de programação, é muito mais fácil e rápido aprender outras. Os hackers não só precisam entender linguagens de programação para serem capazes de explorar vulnerabilidades de software, mas muitos hackers precisam escrever seu próprio código, para serem capazes de executar um ataque específico. Ler, entender e escrever códigos é fundamental para hackear.
As linguagens de programação variam de código de máquina muito obscuro, que está em formato binário e hexadecimal e é usado para se comunicar diretamente com um processador, até linguagens orientadas a objetos de alto nível, que são usadas para o desenvolvimento de software. As linguagens comuns orientadas a objetos de alto nível são C++ e Java . O código escrito em idiomas de alto nível é compilado no código de máquina apropriado para um determinado processador, o que torna as linguagens de alto nível muito portáteis entre diferentes tipos de máquinas. Outra categoria é uma linguagem roteirizada, onde os comandos são executados linha por linha em vez de serem compilados em código de máquina.
Aprender linguagens de programação leva tempo e prática – não há outra maneira de se tornar proficiente. Longas noites e maratonas noturnas de escrita, depuração e recompilação de códigos são um rito comum de passagem entre hackers iniciantes.
Capítulo 4. Kit de Ferramentas do Hacker
Mesmo armado com conhecimento, desenvoltura e a quantidade certa de perseverança teimosa, o hacker ainda precisa de um certo conjunto de ferramentas físicas para realizar um ataque. No entanto, hacking não precisa ser uma profissão ou hobby caro. A maioria das ferramentas de software de que um hacker precisa pode ser obtida livremente porque são produtos de código aberto. Nem um hacker precisa de milhares de dólares em equipamentos de computação de alta potência – para a maioria dos ataques, um simples laptop ou computador desktop com uma quantidade razoável de memória, armazenamento e velocidade do processador será suficiente. Ao longo das décadas, os hackers tornaram-se notórios por realizar grandes feitos com orçamentos relativamente baixos. Embora cada indivíduo precise decidir por si mesmo qual combinação de hardware e software ele precisa para seus objetivos particulares, este capítulo servirá como um guia para ajudar a entender quais diferentes opções estão disponíveis e são preferidas na comunidade hacking .
Sistemas Operacionais & Distribuições
Um sistema operacional (OS) é o intermediário entre o hardware e o software de um computador. Um sistema operacional normalmente gerencia o sistema de arquivos, a comunicação periférica e as contas de usuário de um sistema de computador, entre outras responsabilidades. Existem várias marcas de sistemas operacionais, tanto comerciais quanto de código aberto, que podem ser instalados em qualquer plataforma de computador. O Microsoft Windows é o sistema operacional comercial mais conhecido e instalado para sistemas de estilo "PC". A Apple tem seu próprio SO que vem instalado em seu computador e sistemas móveis. O sistema operacional do Google, Android, de código aberto, está rapidamente ganhando popularidade.
O sistema operacional Linux, nomeado e desenvolvido por Linus Torvalds – uma figura lendária na cultura hacker – é um desdobramento de código aberto do sistema operacional UNIX (o Sistema Operacional da Apple também é baseado no sistema UNIX). O Linux ganhou popularidade ao longo dos anos entre hackers e entusiastas hardcore de computadores por sua flexibilidade e portabilidade. Várias distribuições do Linux evoluíram para diferentes propósitos através de ajustes constantes por parte de seus usuários. As distribuições são tipicamente distinguíveis umas das outras pelo seu tamanho, interface de usuário, drivers de hardware e as ferramentas de software que vêm pré-instaladas. Algumas distribuições populares do Linux, como Red Hat e Ubuntu, são para uso geral. Outros foram desenvolvidos para tarefas e plataformas específicas. O sistema operacional na plataforma de "ataque" de um hacker é o coração de seu kit de ferramentas.
Kali Linux
Anteriormente conhecido como Backtrack, Kali é um popular sistema operacional Linux de código aberto para hackers. Kali (as distribuições mais recentes do Kali Linux podem ser encontradas em www.kali.org/downloads ) pode ser instalado em uma máquina dedicada, ou executado a partir de uma máquina virtual dentro de outro sistema operacional. Ao longo dos anos, Kali evoluiu para conter uma grande variedade dos programas de avaliação e exploração de vulnerabilidades mais úteis. É uma das primeiras ferramentas que um hacker iniciante deve obter. Kali não só fornece prática usando uma plataforma Linux, mas também contém tudo o que um hacker precisa para realizar alguns dos ataques mais básicos de nível inferior, a fim de obter uma experiência valiosa.
Uma Captura de Tela do Kali Linux com um Menu de Ferramentas
Distribuições Forenses
O Sistema Operacional Linux