Beco.py
Repositório criado para o curso de Python do Beco do Exploit
Install / Use
/learn @h41stur/Beco.pyREADME
beco.py
<center><img width="40%" src="https://becodoexploit.com/banner.gif"></center>Seja bem vindo ao beco.py um espaço feito para quem quer deixar de lado o conforto de códigos prontos e iniciar uma longa trilha de pesquisa e desenvolvimento das próprias ferramentas.
Se você chegou até aqui, é por que decidiu sair da zona de conforto e assumiu o compromisso de se tornar um dos melhores, um dos que pensam à frente e constrói suas próprias armas de guerra.
O intúito do que será lhe passado daqui por diante, é te dar uma base, uma direção para seguir, mas será necessário que você mesmo decida se irá seguir o caminho ou permanecer onde está.
A escolha é sua...
<center><img width="40%" src="https://github.com/leonardo-multiverso/img/blob/main/python-hack.jpg?raw=true"></center>Por quê Python?
Python é uma linguagem muito simples e com uma sintaxe muito direta que permite fácil entendimento e menor curva de aprendizado para técnicas avançadas.
Por se tratar de uma linguagem generalista e com inúmeras bibliotecas, Python pode ser utilizada em vários segmentos como:
- Desenvolvimento de aplicações/apps
- Front-end
- Back-end
- APIs
- Sistemas de diversos tipos...
E como não poderia ser diferente, uma vez que esta linguagem "constrói" tanta coisa, ela também é amplamente utilizada no HACKING!
Não existe a melhor forma de aprender Python...
Muito se diz sobre qual conteúdo é melhor, ou por onde começar a aprender Python. Porém, o que ninguém diz por aí, é que não existe a tal melhor forma.
O que é preciso entender, é que o necessário para programar, é a estrutura da linguagem, e não co código em si.
É preciso caminhar a passos curtos antes de conseguir correr por aí.
A partir do momento em que a estrutura da linguagem foi aprendida é que começa a verdadeira batalha do aprendizado. Pois Python, é uma linguagem dotada de milhares de bibliotecas, cada uma com sua finalidade, estrutura e sintaxe de uso.
Isto faz com que você precise LER DOCUMENTAÇÕES toda vez que quiser aprender algo novo, pois cada biblioteca vai funcionar de um jeito, ter suas próprias funções e classes. E a partir daí, é preciso estudar e saber sobre o que de fato vai desenvolver.
E é exatamente por isso, que tudo que precisa é saber a estrutura da linguagem, pois a partir daí, seus limities começam a se quebrar.
Ferramentas que utilizaremos
A intenção deste conteúdo, é ser o máximo hands on o possível, porém, precisaremos de algumas ferramentas principalmente no início, na parte conceitual.
Para que possamos organizar melhor os conteúdos, vamos criar Notebooks com o Jupyter.
Os Notebooks nos permitem executar comandos em Python, ao mesmo tempo em que conseguimos fazer nossas anotações.
Para que um Notebook possa ser visualizado, você pode utilizar um destes programas:
- VSCode
- Jupyter Lab (
pip install jupyterlab) - Google Colab
Obviamente, não custa lembrar que você precisará do PYTHON3 para dar segmento.
As demais bibliotecas, instalaremos com o decorrer do aprendizado.
Com o seguimento do curso, todo o material será disponível no GitHub.
Ementa
Ao longo das semanas, conheceremos os seguintes temas:
Semana 1
- Por que python?
- Não existe a melhor forma de aprender python
- Ferramentas utilizadas
- Hello World
- Operadores matemáticos
- Tipos de variáveis
- Integer
- float
- String
- Exercícios de leitura e pesquisa
Semana 2
- Strings
- Booleanos e operadores lógicos
- Exercícios de leitura e pesquisa
Semana 3
- Listas
- Tuplas
- Dicionários
- Estruturas condicionais
- Estruturas de repetição
- Exercícios de leitura e pesquisa
Semana 4
- Funções
- Classes
- Bibliotecas
- Instalando bibliotecas
- Importando bibliotecas
- Biblioteca OS
- Comandos do SO
- Descobrindo o home path do usuário
- removendo arquivos
- Trabalhando com argumentos em scripts
- Exercícios de leitura e pesquisa
Semana 5
- Biblioteca MySQL-Connector
- Conectando a um banco de dados
- Executando comandos no MySQL
- Extraindo informações do MySQL
- Criando um Brute Force de MySQL
- Exercícios de leitura e pesquisa
Semana 6
- Biblioteca Socket
- Criando um socket client
- Criando um socket server
- Comunicação via socket
- Criando um bruteforce de FTP
- Criando um Port Scanner
- Exercícios de leitura e pesquisa
Semana 7
- Introdução ao Flask
- Se vc sabe contruir, vc sabe desmontar
- Hello World em Flask
- Construindo uma API Rest em Flask com autenticação e token JWT (projeto)
- Exercícios de leitura e pesquisa
Semana 8
- Introdução ao Web Scraping
- Framework Scrapy
- Criando um Crawler em Scrapy
Semana 9
- Framework Selenium
- Automatizando um Crawler e um HTML parser com Selenium
- Exercícios de leitura e pesquisa
