Executando verificação de segurança...
16

Como se Tornar um Hacker?

Nota do Tradutor: "Olá Pessoal, hoje não vou compartilhar algum artigo próprio, mas sim a tradução de algumas partes de um já existente do escritor e porta do voz do open source Eric Steven Raymond escrito lá em 2001. Ser hacker não se restringe unicamente a segurança de computadores ou saber como invadir um sistema, é uma cultura, uma filosofia, quase que um estilo de vida. Profissionalmente, já atuei descobrindo e explorando brechas em sistemas em empresas de diferentes tamanhos, mas dizer que eu sou hacker apenas por isso seria um equivoco da minha parte. Esse artigo traduzido ilustra bem o que é ser um hacker no sentido mais puro da palavra. OBS: A tradução não reflete o texto completo, por isso acabei deixando o link do artigo completo no final. Como a plataforma da tab news só permite vinte mil caracteres tive que fazer algumas adaptações"

O que é ser um Hacker?

O Jargon File contém um monte de definições do termo 'hacker', a maioria relacionada à habilidade técnica e ao prazer em resolver problemas e superar limites. Se você quer saber como se tornar um hacker, no entanto, apenas duas são realmente relevantes.

Existe uma comunidade, uma cultura compartilhada, de programadores especializados e magos em redes que remonta décadas até os primeiros minicomputadores de compartilhamento de tempo e os primeiros experimentos ARPAnet. Os membros dessa cultura originaram o termo 'hacker'. Hackers construíram a Internet. Hackers fizeram do sistema operacional Unix o que é hoje. Hackers fazem a World Wide Web funcionar. Se você faz parte dessa cultura, se contribuiu para ela e outras pessoas nela sabem quem você é e te chamam de hacker, você é um hacker.

A mentalidade hacker não se limita a essa cultura de hackers de software. Existem pessoas que aplicam a atitude hacker a outras coisas, como eletrônicos ou música - na verdade, você pode encontrá-la nos mais altos níveis de qualquer ciência ou arte. Hackers de software reconhecem esses espíritos afins em outros lugares e também podem chamá-los de 'hackers' - e alguns afirmam que a natureza hacker é realmente independente do meio particular em que o hacker trabalha. Mas no resto deste documento, vamos nos concentrar nas habilidades e atitudes dos hackers de software e nas tradições da cultura compartilhada que originou o termo 'hacker'.

Há outro grupo de pessoas que se chamam de hackers em voz alta, mas não são. Essas são pessoas (principalmente homens adolescentes) que se divertem invadindo computadores e pirateando o sistema telefônico. Hackers reais chamam essas pessoas de 'crackers' e não querem nada com elas. Hackers reais geralmente pensam que crackers são preguiçosos, irresponsáveis e não muito inteligentes, e objetam que ser capaz de quebrar segurança não faz de você um hacker, assim como ser capaz de ligar carros não faz de você um engenheiro automotivo. Infelizmente, muitos jornalistas e escritores foram enganados a usar a palavra 'hacker' para descrever crackers; isso irrita muito os hackers reais.

A diferença básica é esta: hackers constroem coisas, crackers as quebram.

Se você quer ser um hacker, continue lendo. Se você quer ser um cracker, vá ler o grupo de notícias alt.2600 e se prepare para passar cinco a dez na prisão depois de descobrir que não é tão inteligente quanto pensa que é. E isso é tudo que vou dizer sobre crackers.

A Atitude Hacker

  1. O mundo está cheio de problemas fascinantes esperando para serem resolvidos.
  2. Nenhum problema deveria precisar ser resolvido duas vezes.
  3. O tédio e a monotonia são males.
  4. A liberdade é boa.
  5. Atitude não substitui competência.

Hackers resolvem problemas e constroem coisas, e eles acreditam na liberdade e na ajuda mútua voluntária. Para ser aceito como um hacker, você precisa se comportar como se tivesse esse tipo de atitude você mesmo. E para se comportar como se tivesse a atitude, você realmente precisa acreditar na atitude.

Mas se você pensar em cultivar atitudes de hacker apenas como uma maneira de ganhar aceitação na cultura, você vai perder o ponto. Tornar-se o tipo de pessoa que acredita nessas coisas é importante para você - para ajudá-lo a aprender e mantê-lo motivado. Como em todas as artes criativas, a maneira mais eficaz de se tornar um mestre é imitar a mentalidade dos mestres - não apenas intelectualmente, mas também emocionalmente.

Ou, como diz o seguinte poema zen moderno:

Para seguir o caminho:"
olhe para o mestre,
siga o mestre,
caminhe com o mestre,
veja através do mestre,
torne-se o mestre."

Então, se você quer ser um hacker, repita as seguintes coisas até acreditar nelas:

1. O mundo está cheio de problemas fascinantes esperando para serem resolvidos.

Ser um hacker é muito divertido, mas é um tipo de diversão que exige muito esforço. O esforço requer motivação. Atletas bem-sucedidos encontram sua motivação em uma espécie de prazer físico em fazer seus corpos funcionarem, em se desafiarem além de seus próprios limites físicos. Da mesma forma, para ser um hacker, você precisa sentir um prazer básico em resolver problemas, aprimorar suas habilidades e exercitar sua inteligência.
Se você não é o tipo de pessoa que sente naturalmente dessa maneira, precisará se tornar uma para ter sucesso como hacker. Caso contrário, você encontrará sua energia de hacker sendo drenada por distrações como sexo, dinheiro e aprovação social.

(Você também precisa desenvolver uma espécie de fé em sua própria capacidade de aprendizado - a crença de que, mesmo que você não saiba tudo o que precisa para resolver um problema, se abordar apenas uma parte e aprender com isso, aprenderá o suficiente para resolver a próxima parte - e assim por diante, até terminar.)

2. Nenhum problema deve ser resolvido duas vezes.

Cérebros criativos são um recurso valioso e limitado. Eles não devem ser desperdiçados reinventando a roda quando há tantos novos problemas fascinantes esperando lá fora.
Para se comportar como um hacker, você tem que acreditar que o tempo de pensamento de outros hackers é precioso - tanto que é quase um dever moral compartilhar informações, resolver problemas e então dar as soluções apenas para que outros hackers possam resolver novos problemas em vez de ter que perpetuamente retomar os antigos.

Observe, no entanto, que "Nenhum problema deve ser resolvido duas vezes." não implica que você tenha que considerar todas as soluções existentes sagradas, ou que há apenas uma solução correta para qualquer problema dado. Muitas vezes, aprendemos muito sobre o problema que não sabíamos antes estudando a primeira tentativa de solução. Está tudo bem, e muitas vezes necessário, decidir que podemos fazer melhor. O que não está bem são barreiras técnicas, legais ou institucionais artificiais (como código fechado) que impedem que uma boa solução seja reutilizada e forçam as pessoas a reinventarem a roda.

(Você não precisa acreditar que é obrigado a dar todo o seu produto criativo, embora os hackers que o façam sejam os que recebem mais respeito de outros hackers. É consistente com os valores dos hackers vender o suficiente para mantê-lo em comida, aluguel e computadores. Está tudo bem usar suas habilidades de hacker para sustentar uma família ou até ficar rico, contanto que você não esqueça sua lealdade à sua arte e aos seus colegas hackers enquanto o faz.)

3. O tédio e a rotina são males.

Hackers (e pessoas criativas em geral) nunca devem ficar entediados ou ter que se esforçar em trabalhos repetitivos e estúpidos, porque quando isso acontece, significa que eles não estão fazendo o que só eles podem fazer - resolver novos problemas. Essa perda prejudica a todos. Portanto, o tédio e a rotina não são apenas desagradáveis, mas na verdade são maléficos.
Para se comportar como um hacker, você tem que acreditar nisso o suficiente para querer automatizar as partes chatas o máximo possível, não apenas para você, mas para todos os outros (especialmente outros hackers).

(Há uma exceção aparente a isso. Os hackers às vezes farão coisas que podem parecer repetitivas ou entediantes para um observador como um exercício de limpeza mental, ou para adquirir uma habilidade ou ter algum tipo de experiência que você não pode ter de outra forma. Mas isso é uma escolha - ninguém que possa pensar deve ser forçado a uma situação que o entedie.)

4. A liberdade é boa.

Hackers são naturalmente antiautoritários. Qualquer pessoa que possa dar ordens a você pode impedi-lo de resolver qualquer problema que você esteja fascinado - e, dado o funcionamento da mente autoritária, geralmente encontrará alguma razão horrivelmente estúpida para fazê-lo. Portanto, a atitude autoritária deve ser combatida onde quer que seja encontrada, para não sufocar você e outros hackers.
(Isso não é o mesmo que lutar contra toda autoridade. Crianças precisam ser guiadas e criminosos contidos. Um hacker pode concordar em aceitar alguns tipos de autoridade para obter algo que ele quer mais do que o tempo que ele gasta seguindo ordens. Mas esse é um acordo limitado e consciente; o tipo de rendição pessoal que os autoritários querem não está em oferta.)

Os autoritários prosperam com a censura e o segredo. E eles desconfiam da cooperação voluntária e do compartilhamento de informações - eles só gostam de 'cooperação' que eles controlam. Portanto, para se comportar como um hacker, você deve desenvolver uma hostilidade instintiva à censura, ao segredo e ao uso da força ou da decepção para compelir adultos responsáveis. E você deve estar disposto a agir com base nessa crença.

5. Atitude não é um substituto para competência

Para ser um hacker, você precisa desenvolver algumas dessas atitudes. Mas apenas copiar uma atitude não o tornará um hacker, assim como não o tornará um atleta campeão ou uma estrela do rock. Tornar-se um hacker exigirá inteligência, prática, dedicação e trabalho árduo.

Portanto, você deve aprender a desconfiar da atitude e respeitar a competência de todos os tipos. Os hackers não deixarão os posers desperdiçarem seu tempo, mas eles adoram competência - especialmente competência em hacking, mas a competência em qualquer coisa é valorizada. A competência em habilidades exigentes que poucos podem dominar é especialmente boa, e a competência em habilidades exigentes que envolvem acuidade mental, habilidade e concentração é a melhor.

Se você reverenciar a competência, você desfrutará de desenvolvê-la em si mesmo - o trabalho árduo e a dedicação se tornarão uma espécie de jogo intenso em vez de rotina. Essa atitude é vital para se tornar um hacker.

Habilidades Básicas de um Hacker

  1. Aprenda a programar.
  2. Obtenha um dos Unix's de código aberto e aprenda a usá-lo e executá-lo.
  3. Aprenda a usar a World Wide Web e escrever HTML.
  4. Se você não tem inglês funcional, aprenda.

A atitude de hacker é vital, mas as habilidades são ainda mais importantes. Atitude não substitui competência, e há um certo conjunto básico de habilidades que você precisa ter antes que qualquer hacker sonhe em chamá-lo de um.

Para que se interessou, deixo o artigo original em inglês:

http://www.catb.org/~esr/faqs/hacker-howto.html#skills4

5

Esse post sobre hacker, mudou simplesmente minha forma tanto de ver a programação quanto o mundo a fora. Obrigado por compartilhar esse post conosco!

4

Achei massa a iniciativa de traduzir esse texto. 👏👏

Só uma sugestão na tradução: melhor não traduzir "Jargon File" para "arquivo de jargão" pois se trata do nome do site. Traduzindo assim perdeu completamente o sentido ("qual arquivo? Onde acho isso???"). Talvez escrever "O Jargon File contém[...]" fique melhor de entender, pois deixa claro do que está falando.


E antes que alguém comente isso: não, o Eric S. Raymond não está "cagando regra". Pelo contrário, quem relativiza o significado de "hacker" e se autointitula assim é quem está cagando regra.

Esse texto do Raymond foi aceito pelas comunidades hackers mundo àfora, é quase a definição oficial do que é um hacker. Então não é uma "cagação de regra" mas sim algo coletivamente aceito nas comunidades.


Sobre o texto, vale destacar o ponto que eu considero o mais importante:

Para ser um hacker, você precisa desenvolver algumas dessas atitudes. Mas apenas copiar uma atitude não o tornará um hacker, assim como não o tornará um atleta campeão ou uma estrela do rock.

Já cansei de ver "entusiastas" em cybersec e/ou "hacking" que vivem falando sobre a importância de estudar, falando sobre a importância de ter conhecimento de base da computação, falando sobre a importância de ser "humilde" e blablabla. Mas como diria o Torvalds: falar é fácil.

Não adianta ficar mandando frase de efeito pros outros e repetir mecanicamente o que gente foda na área diz. Não adianta falar da importância dos estudos e ter um conhecimento superficial/medíocre sobre tudo o que estuda. Não adianta falar sobre humildade mas continuar sendo um cara arrogante que não conhece a própria ignorância. Falar frases de efeito como "eu não sei nada" ou "quanto mais eu estudo mais eu me sinto burro" não vai mudar como você pensa de fato.

E infelizmente, pelo menos no Brasil (não sei como é lá fora), essa galera superficial que fica mandando frases de efeito são os mais "famosos", são os mais "admirados" por muitas comunidades por aí que se dizem de "hacking" mas na prática são comunidades de CTF.

Por isso que no Brasil dá para contar no dedo quantas pessoas realmente sabem o que é um "hacker".

1

Muito obrigado pela sugestão amigo, apliquei ela no artigo! Concordo 100% com que você falou, não adianta ficar falando que não sabe e, realmente, não saber como é na prática.

4

Habilidades Básicas de um Hacker
1.Aprenda a programar.
2.Obtenha um dos Unix's de código aberto e aprenda a usá-lo e executá-lo.
3.Aprenda a usar a World Wide Web e escrever HTML.
4.Se você não tem inglês funcional, aprenda.

Essa é uma receita de bolo pra se tornar pen. tester web e nem tudo são flores, não é como no curso te mostram que você vai usar ferramental kali "linuquisiano" e achar vulnerabilidade no projeto web wordpress, php, javascript, python e afins feitos de qualquer jeito, esses exemplos são mais conhecidos que giria popular, qualquer framework moderno e bem feito ja fixou 90% desses casos, os outros 10% é responsabilidade de todo desenvolvedor + conhecimento básico de segurança.

Toda ramificação da área de TI é complexa, principalmente Cybersec, existe as mais main stream que são conhecidas e as que estão escondidas, o caminho "feliz" que existe é ser Red ou Blue team hoje em dia. Falando do meu ponto de vista, eu simplesmente acho muito entediante pen. testes e desenvolvimento web, utilizar linux e principalmente ferramenta pre-pronta de kali. Atualmente utilizo windows ( principalmente por causa de só no Windows ter acesso ao Windows Driver Kit, kernel dev ) e linux como hobby, desde a época dos antigos jogos de FPS que eram infestados de Cheaters como Crossfire e Pointblank sempre quis aprender como eram feito Cheat para jogos, sempre fui autodidata e corria atras de aprender C/C++, Windows Internals, Reverse engineering e Kernel Windows development.

Meu sonho sempre foi trabalhar com anti-cheats e por incrivel que pareça vendia cheat para jogos com os melhores anti-cheat (vanguard, eac, faceit, gamersclub e etc) do mercado, parece até controversia, mas se você pegar a lista de devs que trabalham nesses anti-cheats eram todos Hackers bem conhecidos de foruns.

TL;DR; Tudo isso pra dizer que nem tudo é Penetration tester web, desenvolvimento web e utilizar sistemas unix.

4

Não confunda segurança da informação com hacking. Ser hacker não é trabalhar com segurança da informação, e trabalhar com segurança da informação não é ser hacker. São duas coisas completamente distintas. Tem muita gente que trabalha com cybersec e não é hacker.

Essa parte final do texto não é uma tradução fiel, veja no original que não é meramente uma lista mas um monte de texto explicando o motivo da sugestão: http://www.catb.org/~esr/faqs/hacker-howto.html#basic_skills

Que não tem nada a ver com pentest. Hackers (de verdade) são curiosos e gostam de entender como as coisas funcionam, faz parte da cultura hacker. Quem não é assim nunca foi nem nunca será hacker, pode trabalhar com cybersec pra NSA ou para um banco e continuará não sendo hacker.

TL;DR

  1. Aprender a programar é a alfabetização básica. É como aprender a ler e escrever. Sem isso tu não entende absolutamente nada sobre computadores.
  2. Sobre a usar um UNIX, esse trecho resume bem: «Unix is the operating system of the Internet. While you can learn to use the Internet without knowing Unix, you can't be an Internet hacker without understanding Unix. For this reason, the hacker culture today is pretty strongly Unix-centered.». Se você não entende como um UNIX funciona você não entende nada sobre como a internet funciona.
  3. Sobre HTML: de novo é alfabetização. Não importa com o que tu trabalha ou quer trabalhar, sem saber o básico de WEB tu não faz a menor ideia como o WWW funciona.
  4. Sobre inglês: é essencial, também para alfabetização. Conteúdo técnico de qualidade majoritariamente está em Inglês, Russo ou Chines. Em outras línguas é raridade. Sem Inglês, obter um conhecimento sério é impossível.

Repito: hacking não tem nada a ver com pentest. Tem muita gente que é pentester e não é hacker.

E que tipo de "hacker" não entende nada sobre como a internet e páginas web funcionam? Quer dizer que o "hacker" vai se conectar na internet todo dia, acessar páginas web todo dia e nunca vai ter curiosidade sobre como tudo isso funciona?

Nop, um verdadeiro hacker teria essa curiosidade e gostaria de aprender como essas coisas funcionam. Não aprenderia por "obrigação" mas por curiosidade.

3

Obrigado Pelos Apontamentos! Vou deixar no texto que a tradução esta incompleta para não deduzirem que esse se trata do material completo. Mais um vez estou de pleno acordo, na verdade, acredito que a percepção do nosso amigo vem muito do que é divulgado na mídia ou em materiais de ensino de cursos de segurança(Hacker X Craker). Mas entendo também que algumas atividades que ele citou como desenvolvimento de Cheat é algo que possui certas características como curiosidade e resolução de problema

2

Verdade, parte da essencia do hacker acredito que seja a critividade: com os sistemas no geral ficando mais seguros, na parte do desenvolvimento, acredito que é essencial saber como achar as falhas de maneira criativa. Isso entra bastante na questão do desenvolvimento de cheats, acredito.