Ter o conhecimento prévio de programação é algo que o separará de todos os outros script kiddies (quem querem ser hackers) e outros amantes de ferramentas por aí, muitas vezes durante os testes de penetração você se depara com um ponto em que precisa escrever ou construir seu próprios scripts e programas personalizados é aqui que o conhecimento de programação é útil.
A outra e de longe a vantagem mais importante da programação é que você será capaz de entender códigos de exploração e até aprender a escrevê-los também, embora existam softwares que tornaram o processo de escrita de exploração muito mais simples, mas você ainda precisa ter uma sólida compreensão de linguagens de programação para saber como funcionam os exploits.
Agora que você entendeu a importância de aprender linguagens de programação, você pode estar se perguntando “ por onde começar” , “com qual linguagem de programação ” devo começar a aprender, não se preocupe, já vi esses tipos de perguntas muito em várias comunidades e fóruns de hackers. A resposta a essas perguntas é que depende do seu interesse.
Hackeando Website
Agora, se você estiver interessado no assunto de hackers na web, recomendamos que você aprenda os seguintes idiomas:
1. HTML – Comece com Html se você não souber. (Recomendado)
2. Javascript – Em seguida, aprenda javascript, que o ajudará a entender os fundamentos do script entre sites.
3. Bancos de dados SQL – Você deve aprender a trabalhar com bancos de dados, o que o ajudará a entender os fundamentos dos ataques de SQL Injection.
4. PHP – Aprender PHP deve ser uma de suas primeiras prioridades se você quiser entender os mecanismos por trás dos ataques de hackers na web. Eu recomendo que você aprenda o mais rápido possível.
Explorar Escrita
A escrita de exploração é um segmento muito difícil em hacking, pois requer conhecimento de programação puro, e é por isso que eu não recomendo que você comece com a escrita de exploração, as explorações são/podem ser codificadas em quase qualquer linguagem de programação, por exemplo, C/C++, Python, Perl etc , mas mais de 50% das explorações que você encontrará na web serão codificadas em linguagens C/C++ porque estavam presentes antes de qualquer outra linguagem. Linguagens como C e C++ são consideradas linguagens de programação enquanto linguagens como ruby, perl e python são consideradas mais como linguagens de script.
Recomendamos que você comece com as linguagens C e depois para C++, C/C++ tem muitas semelhanças, então, se você puder ter uma boa compreensão de qualquer uma delas, poderá aprender a outra facilmente.
Rubi
Falando sobre linguagens de script, eu recomendo que você comece com Ruby, Ruby é uma das minhas linguagens de programação favoritas, pois é puramente orientada a objetos, o que significa que tudo em que você trabalha é um objeto. Ruby é realmente útil quando se trata de explorar a escrita, Ruby é usado para codificar scripts meterpreter e o que poderia ser melhor que o próprio framework Metasploit foi codificado em linguagem ruby.
Python
Python também é uma linguagem de programação muito útil, também pode ser usada para escrever exploits.
PERL
Falando sobre PERL, ele também é amplamente usado para escrita de exploits, você encontrará muitos exploits por aí escritos em PERL, mas o problema é que o perl é realmente difícil em comparação com outras linguagens como ruby e python, então recomendamos que você aprenda isso no finalzinho.
Engenharia Reversa
A engenharia reversa é um ato de adulteração de softwares, aplicativos para fazê-los funcionar. Se você estiver interessado em engenharia reversa e materiais de cracking de software, certamente precisará aprender a linguagem Assembly.
Comunidades úteis para aprender linguagens de programação
Sempre quis aprender linguagens de programação de computador, mas não sabia por onde começar? Bem, esses dias terminaram. Hoje aprender linguagens de programação não é realmente um trabalho difícil. Se você é iniciante e tem aptidão para aprender programação de computadores, pode atingir esse objetivo em poucos meses. Aqui estão os principais sites, que são úteis para aprender programação.
1. W3schools.com
Se você é um programador iniciante ou intermediário, o w3schools é um excelente site para aprender programação. W3schools oferece tutoriais para uma variedade de programação web e linguagens de script como html, html5, css, asp, Ajax, JavaScript, php, jQuery etc.
2. Codeavengers.com
Se você quer aprender codificação para criar jogos, aplicativos ou sites usando html/html5, css3, JavaScript python, mas quer um recurso didático divertido. Então codeavengers.com é a escolha ideal para você. Codeavengers.com foi projetado tendo em mente a dificuldade para iniciantes. Ele fornece um ambiente de aprendizagem divertido e interativo que é eficaz para todas as faixas etárias. Mesmo se você for um programador intermediário, poderá encontrar ótimos aprendizados por lá.
3. Codecademy.com
Codeacademy é outro ótimo site para aprender linguagens como JavaScript, HTML/CSS, PHP, Python e Ruby. Você pode até aprender a usar algumas APIs da Web populares em seu site ou aplicativo. A Codeacademy possui um ótimo sistema de aprendizado moderno, baseado na interação do usuário. Possui cursos de programação completos para iniciantes. Novamente, este site é ótimo para iniciantes e alunos intermediários. Mas programadores avançados também podem encontrar algumas coisas bastante úteis lá.
4. tutorialspoint.com
Tutorialspoint tem tutoriais para muitas linguagens web, de alto nível e de script que são comumente usadas hoje. Você pode encontrar tutoriais para qualquer linguagem de computador que você já ouviu falar (aquelas que estão em uso atualmente). Além disso, ele também apresenta uma variedade de tutoriais para outras áreas, como DIP, OS, SEO, Telecom, DBMS, frameworks etc. Algumas linguagens comumente usadas que você pode aprender lá são: Java, C++, PHP, Python, Ruby , C#, Perl, VB.Net, iOS.
5. msdn.microsoft.com
Embora os programadores iniciantes possam achar o MSDN (Microsoft Developer Network) um recurso de aprendizado difícil, ainda é o melhor recurso que você pode obter, se quiser dominar linguagens orientadas pela Microsoft, como VB.Net, C# etc.
O MSDN tem ótimos tutoriais para programadores iniciantes, intermediários e avançados.
Mas, como afirmei anteriormente, os iniciantes podem não se sentir à vontade inicialmente com o MDSN, pois tenho muitos recursos e seria difícil para os iniciantes encontrarem o que estão procurando. Mas se você se acostumar com o MSDN, então é o ponto de aprendizado ideal para idiomas orientados pela Microsoft. Você pode obter muitos aplicativos de exemplo, tutoriais e recursos que são carregados pela comunidade Microsoft e MSDN. Como é uma rede de desenvolvedores, você pode até encontrar ajuda de desenvolvimento de membros da comunidade.








