Como Hackear: 12 Passos (com Imagens) - 绮罗网

Como Hackear

2 Métodos:Antes de começar a hackearHackeando

O termo hack ou hacking foi utilizado nos "bons e velhos tempos" para descrever o ato de estudar novas coisas sobre sistemas e computadores em geral. Nos anos atuais, graças a alguns péssimos atos, bem como a publicação e empregação indevida do termo nas mídias, o termo hacking passou a ter uma má conotação. Por outro lado, muitas empresas empregam hackers para que estes possam testar os pontos fortes e fracos de seus próprios sistemas. Estes hackers sabem até onde podem ir e a confiabilidade que eles já conseguiram passar às empresas lhes garante bons salários.


Se você está pronto para mergulhar e aprender esta arte, continue lendo este artigo para conhecer algumas dicas para lhe indicar por onde você deverá começar.

1
Antes de começar a hackear

  1. 1
    Aprenda uma linguagem de programação. Você não deveria limitar-se a qualquer linguagem em particular, mas existem algumas orientações que podem ser seguidas.
    • C é a linguagem na qual a maioria dos sistemas operacionais são desenvolvidos. Ela ensina algo muito importante para hackear (hacking): como a memória funciona.
    • Python ou Ruby são linguagens de script modernas e poderosas que podem ser utilizadas para automatizar várias tarefas.
    • Perl é uma boa escolha neste campo, apesar de que também vale a pena aprender PHP, visto que é muito utilizado por iniciantes para "hackear" aplicações web mal escritas (fórums, blogs, etc.).
    • Scripts em bash são uma necessidade, uma obrigação. Essa é a forma com a qual se pode manipular facilmente a maioria dos servidores - escrevendo scripts online, os quais farão a maior parte do trabalho.
    • ASM é, também, uma necessidade fundamental. É um framework para vários propósitos em termos de manipulação e análise de bytecode Java. Você não poderá realmente explorar (exploitar) um programa caso você não tenha conhecimentos sobre ASM.
  2. 2
    Conheça o seu alvo. O processo de coletar informações sobre o seu alvo é conhecido como enumeração. Quanto mais você souber antecipadamente sobre o alvo, menos surpresas você terá.

2
Hackeando

  1. 1
    Utilize um terminal *nix (*nix significa qualquer terminal baseado em Unix, seja ele Linux, OS X, BSD, etc). O Cygwin irá ajudar a emular um terminal *nix para usuários do sistema operacional Windows. O Nmap, em particular, utiliza o WinPCap para rodar no Windows e não requer o Cygwin. Porém, o Nmap funciona precariamente em sistemas Windows devido à falta de sockets dos quais ele necessita. Você deveria também considerar utilizar Linux ou BSD como sistema operacional, visto que ambos são mais flexíveis, confiáveis e mais seguros. A maioria das distribuições Linux trazem diversas ferramentas úteis pré-instaladas.
  2. 2
    Proteja a sua máquina antes de mais nada. Certifique-se de que você tenha entendido corretamente todas as técnicas básicas, inclusive sobre como proteger a si mesmo. Comece com o básico - você encontrou um servidor hospedando um site sobre racismo, pedofilia ou outra atividade ilegal? Tente hackeá-lo, da forma que você puder. Não modifique o site, apenas assuma o controle do mesmo.
  3. 3
    Teste o alvo. Você pode chegar ao sistema remoto? Embora você possa utilizar o ping (que está disponível na maioria dos sistemas operacionais) para descobrir se o alvo está ativo, você não poderá confiar sempre nos resultados desta ferramenta - ele depende do protocolo ICMP, que pode facilmente ser desabilitado por administradores de sistemas paranóicos.
  4. 4
    Determine o Sistema Operacional (SO). Execute um escaneamento das portas. Experimente o pOf ou o nmap para escanear as portas. Isto lhe exibirá as portas que estão abertas na máquina, o SO e poderá, inclusive, mostrar-lhe que tipo de firewall ou roteador eles estão utilizando de forma que você possa planejar um curso de ação. Você pode ativar a detecção de SO no nmap utilizando o parâmetro -O. Assim como o ping, o nmap, quando não lhe é especificado, utilizará primeiramente ICMP para determinar se o alvo está ativo ou não; portanto, caso o administrador do sistema tenha bloqueado o ICMP, você deverá utilizar o parâmetro -sP para determinar se o alvo está ativo, mesmo que este esteja bloqueando o protocolo ICMP.
  5. 5
    Encontre um caminho ou porta aberta no sistema. Portas comuns, tais como FTP (21) e HTTP (80) geralmente são bem protegidas e, possivelmente, apenas vulneráveis a ataques ainda não descobertos.
    • Experimente outras portas TCP ou UDP que possam ter sido esquecidas, tais como Telnet e várias portas UDP deixadas abertas para jogos em rede (LAN).
    • Uma porta 22 aberta é geralmente uma evidência de que o serviço SSH (secure shell ou shell seguro) está rodando no alvo, o que, algumas vezes, pode ser forçado com ataques de força-bruta (bruteforce).
  6. 6
    Quebre a senha ou o método de autenticação. Existem diversas maneiras de se quebrar uma senha, incluindo a técnica de bruteforce ou força bruta. Utilizar o ataque de bruteforce em uma senha significa tentar todas as senhas possíveis que estejam definidas em um arquivo chamado de "dicionário" de um software de bruteforce.
    • Os usuários são geralmente desencorajados a utilizar senhas fracas, portanto o bruteforce poderá levar muito tempo. No entanto, houveram grandes melhorias nas técnicas de bruteforce.
    • A maioria dos algoritmos de hash são fracos, e você poderá aumentar significativamente a velocidade da quebra explorando estas fraquezas (assim como você pode cortar o algoritmo MD5 em 1/4 de forma a acelerar muito o processo).
    • Novas técnicas utilizam placas de vídeo como um processador a mais - e é milhares de vezes mais rápido.
    • Para conseguir uma quebra de senha mais rápida, você pode experimentar utilizar uma Rainbow Table, uma tabela de consulta que utiliza um algoritmo de transação memória-tempo, permitindo a recuperação do texto original de uma senha através de uma senha quebrada (hash) que tenha sido gerada por um algoritmo criptográfico de hash. Note que a quebra de senhas é uma técnica eficiente apenas caso você já possua o hash da senha.
    • Experimentar todas as senhas possíveis ao tentar logar-se em uma máquina não é uma boa ideia, visto que pode ser facilmente identificado com um sistema de detecção de intrusão, polui os sistemas de logs e pode levar anos para achar a senha, em alguns casos.
    • Você também pode pegar um tablet rooteado, instalar um scanner TCP e jogar o arquivo para o site pela rede. Assim, o endereço IP se abrirá, fazendo com que a senha apareça em seu Proxy.
    • Geralmente, é mais fácil encontrar outra maneira para acessar o sistema ao invés de quebra de senhas.
  7. 7
    Consiga privilégios de super usuário (root). Tente conseguir privilégios de root caso o seu alvo seja uma máquina *nix, ou privilégios de administrador caso trate-se de uma máquina com Windows.
    • A maior parte das informações que serão de interesse vital estarão protegidas e você precisará de um certo nível de autenticação para conseguí-las. Para ver todos os arquivos em um computador você precisará de privilégios de super-usuário - uma conta de usuário que tenha recebido os mesmos privilégios que o usuário "root" em sistemas como Linux ou BSD.
    • Para roteadores, trata-se do usuário admin por padrão (a menos que ele tenha sido modificado); para Windows, esta conta é a do Administrador.
    • Ganhar acesso a um sistema não significa que você poderá acessar tudo. Apenas um super-usuário, a conta de administrador ou a conta do root poderão fazê-lo.
  8. 8
    Utilize vários truques. Muitas vezes, para se ganhar acesso como super-usuário, você precisará utilizar diversos truques, tais como criar um buffer overflow, que pode ser feito causando um sobrecarregamento e estouro na pilha de memória, permitindo-lhe injetar um código para executar a tarefa com privilégios de super-usuários.
    • Em sistemas baseados no Unix, isto ocorrerá caso o software com falhas ou bugs possua o bit setuid definido, de forma que o programa poderá ser executado como um usuário diferente (super-usuário, por exemplo).
    • Apenas escrevendo ou achando um programa inseguro que você possa executar na máquina-alvo lhe será permitido fazer isto.
  9. 9
    Crie uma porta dos fundos (backdoor). Uma vez que você tenha ganho total controle da máquina, será uma boa ideia certificar-se de que você poderá voltar novamente. Isto pode ser feito criando uma backdoor ou porta dos fundos nos serviços do sistema, tal como um servidor SSH. No entanto, o seu backdoor poderá ser removido na próxima atualização do sistema. Um hacker experiente iria criar um backdoor no compilador em si, de forma que cada software compilado seria uma potencial forma de lhe dar acesso à máquina.
  10. 10
    Cubra seus rastros. Nunca deixe o administrador descobrir que o sistema está comprometido. Não modifique o site (caso exista algum), não crie mais arquivos do que os que você realmente irá precisar. Não crie nenhum usuário adicional. Aja o mais rápido possível. Se você corrigiu um servidor, como, por exemplo, um servidor SSHD, certifique-se de que possua uma senha secreta muito complexa. Caso alguém tente efetuar login com outra senha, o servidor deveria permití-la logar, mas não deveria conter nenhuma informação crucial.

Dicas

  • Leia livros sobre redes TCP/IP.
  • Os hackers são aqueles que construíram a internet, criaram o Linux e trabalham em projetos de software livre ou de código aberto. É aconselhável que se olhe para o termo hack ou hacker de forma respeitável, bem como algo que requer uma grande quantidade de conhecimento profissional para que algo sério seja feito em ambientes reais.
  • Existe uma grande diferença entre um hacker e um cracker. Um cracker é motivado por razões maliciosas (também conhecida como dinheiro); um hacker está tentando absorver conhecimento através de explorações, a qualquer custo e de qualquer forma - nem sempre legal.
  • Embora seja ótimo que existam tantos treinamentos legais e seguros disponíveis para qualquer um, a triste verdade é que você não conseguirá ser sequer medíocre caso não faça algo potencialmente ilegal. Você não poderá se tornar alguém nesta área caso não encontre problemas reais em sistemas reais, com o real risco de ser pego. Tenha isto em mente.
  • Lembre-se, praticar hacking não significa apenas quebrar sistemas de computadores, conseguir empregos bem pagos, vender exploits e códigos maliciosos no mercado negro, ou ajudar alguém a comprometer sistemas de segurança. Você não está aqui para ajudar um administrador em seu trabalho. Você está aqui para tornar-se o melhor.
  • Tenha em mente que, se o seu alvo não estiver fazendo o seu melhor para lhe manter afastado, você não se tornará bom naquilo. É claro, não fique arrogante, não pense em si mesmo como o melhor dos melhores. Faça disto o seu objetivo: você precisa se tornar cada vez melhor. Cada dia que você não aprender algo novo terá sido um dia perdido. Você é tudo o que importa. Torne-se melhor, a qualquer custo. Não existem atalhos; você precisa se dedicar por completo.
  • A menos que você seja um expert, um hacker profissional, utilizar estas táticas em computadores de empresas populares ou mesmo do governo será o mesmo que procurar problemas. Tenha em mente que existem pessoas com um pouco mais de conhecimento que você e que protegem estes sistemas como meio de ganhar a vida. Uma vez encontrados, às vezes eles mantém-se monitorando o intruso para deixar que ele mesmo incrimine-se antes de tomarem qualquer ação legal. Isto significa que você poderá pensar ter acesso livre após hackear um sistema, quando na verdade você estará sendo observado, e poderá ser detido a qualquer momento.

Avisos

  • Hackear sistemas de terceiros pode ser ilegal, portanto não o faça a menos que você tenha a certeza de que o dono do sistema lhe deu permissão para tal ou caso tenha a certeza de que valerá a pena e de que você não será pego.
  • O uso indevido desta informação pode ser um crime local e/ou federal. Este artigo pretende ser informativo e deveria ser utilizado apenas para propósitos éticos, e nunca para atividades ilegais.
  • Não delete completamente os arquivos de log; ao invés disto, remova apenas as entradas que possam lhe incriminar neste arquivo. A outra pergunta é, existe algum backup do arquivo de log? E se eles compararem ambos os arquivos e perceberem as linhas que você apagou? Sempre pense em suas ações. A melhor coisa é deletar linhas randômicas de um log, incluindo as suas.
  • Seja extremamente cauteloso caso você pense que encontrou uma brecha muito fácil de ser explorada ou um erro grotesco na gestão de segurança. Um profissional de segurança que projeta um sistema pode estar tentando lhe pregar uma peça ou pode ter configurado um honeypot (pote de mel).
  • Se você não se sente confiante com suas habilidades, matenha-se longe de tentativas de invasão em sistemas do governo ou mesmo militares. Mesmo que eles possuam falhas de segurança, eles possuem muito dinheiro para lhe rastrear e prender. Se você encontrar uma brecha em redes como estas, é melhor deixar que algum hacker mais experiente que você, de sua confiança, lide com isto de forma que possa colocar estes sistemas em bom uso.
  • Nunca faça algo apenas por diversão. Lembre-se que invadir redes e sistemas não é um jogo, mas um poder que pode, inclusive, mudar o mundo. Não o desperdice em atitudes infantis.

Materiais Necessários

  • Um computador (rápido) com uma conexão com a internet
  • Um proxy (opcional)
  • Um escaner de IPs
  • Petaflops podem ajudar