
Introdução
Apresentação das ferramentas que iremos utilizar no desenvolvimento e apresentação do módulo de apoio.
É importe configurar o ambiente de desenvolvimento para que você consiga replicar os códigos.
Instalar o python2 e python3 no linux, como também o gerenciador de pacotes do python para ambas versões.
Criar uma conta no Github para versionamento dos projetos que serão desenvolvidos durante o curso.
saber classificar, organizar e abstrair conceitos da vida era para a programação.
Saber implementar encapsulamento de dados para objetos, poder usar recursos importante como herança, polimorfismo e métodos abstratos em python.
usar encapsulamento da forma correta para classes em python
métodos estáticos e construtor padrão do python
aplicar o conceito de POO para utilizar reaproveitamento de código.
implementar o conceito de herança de duas ou mais classes
implementar o polimorfismo para permite que referências de tipos de classes mais abstratas representem o comportamento das classes concretas que referenciam
método estáticos em python
usar o super vai chamar o construtor da classe pai
manipular algumas API do sistema operacional utilizando o modulo os.
Implementar threads (execução paralela) para determinada atividade que requer muito processamento.
Usar as funções providas do módulo os do python
Criar, remover, editar arquivos usando a linguagem de programação python
Manipular comandos Linux com Python
Manipular comandos Linux e filtrar a saída
implementar algumas funções úteis nos nomes de caminho. Para ler ou gravar arquivos open(), consulte e, para acessar o sistema de arquivos.
Saber criar scripts para fazer busca por arquivos em um determinada arvore de diretórios no sistema.
Saber Parâmetros e funções específicos do sistema
Entender o conceito de threads ou encadeamento de execução, é uma forma de um processo dividir a si mesmo em duas ou mais tarefas que podem ser executada.
Implementar comunicação entre Threads, Usando o módulo Queue podemos fazer uma Thread, que está sendo executada
Trabalhar com versionamento de código usando o github
Trabalhar com versionamento de código usando o github
Comunicar entre threads para extrair dados
Saber implementar e criar processos paralelos para executar tarefas pesada no software.
Saber usar objetos específicos do multiprocessing para estabelecer uma comunicação efetiva entre processos.
Implementar multi processos em qualquer sistema operacional usando o módulo multiprocessing
Usar corretamente a função format do objecto str() do python
Usar corretamente a função format do objecto str() do python
Usar cores para modelar ferramentas organizadas
Usar o módulo argparser para implementar sistema de command line bem organizado
Usar o formato json object para armazenar dados em objetos iteráveis.
Implementar arquitetura de arquivos para um determinado software de segurança
Criar ou abstrair o conceito de modulação de ferramentas para que outros contribuidores possam contribuir de forma simples e rápida.
Criar ou abstrair o conceito de modulação de ferramentas para que outros contribuidores possam contribuir de forma simples e rápida.
Conhecer o modelo de rede OSI (acrônimo do inglês Open System Interconnection) que tem como objetivo de ser um padrão, para protocolos de comunicação entre os mais diversos sistemas em uma rede local (Ethernet)
Conhecer a teoria por trás de cada camada implementada no modelo OSI.
Saber implementar comunicação entre redes de computações usando o modulo padrão do python socket no protocolo TCP
Saber como funciona Camada de Rede, protocolos de internet
Conhecer as RFC de cada protocolo
Conhecer como funciona o modelo TCP IP
Conhecer o que é roteamento
Saber como funciona a tabela de roteamento
Implementar Endereços IP
Implementar comunicação em rede local
Implementar comunicação em rede externa
Funcionamento do protocolo ARP
Saber estabelecer uma comunicação direta ou reversa
Saber como funciona descoberta de máquinas em redes local usando o protocolo ARP
Implementar ataques como ARP spoof ou ARP cache poison
Como usar o módulo scapy para capturar pacotes do protocolo ARP
Saber os campos de frame packet de uma requisição e resposta do ARP
Implementar pacotes usando o protocolo HTTP
Estabelecer comunicação HTTP usando os conceitos abordados
Saber distinguir quais são as diferença entre o HTTP 1.1 e HTTP 2.0
Implementar, Analisar pacotes e requisições http
Entender como funciona o HTTPS
Conhecer a importância da encriptação de dados no protocolo HTTP
Saber a teoria por trás dos protocolo de segurança
Conhecer a camada de proteção SSL e TLS
Conhecer ferramentas que foram desenvolvidas para fazer bypass
Conhecer o que há de mais atual para contornar essas proteções
Ser capaz de implementar e manipular pacotes na rede
Ser capaz de replicar ferramentas famosas para segurança
Ser capaz de usar técnicas como spoof e poison usando scapy
Saber implementar frames do protocolo ICMP
Conhecer ferramentas do scapy e porque utiliza-las
Enviar pacotes para um determinado tipo de protocolo
Enviar pacotes para um camada de rede específica
Usar o módulo scapy para scannear redes locais
Conhecer funções extra do scapy para diferentes tipos de implementação
Implementar scanner usando funções assíncronas usando o módulo do scapy
Desenvolver ferramentas para redes captura em redes locais e externas
Implementar comunicação com sockets em python
Implementar comunicação com sockets em python
Desenvolver um chat para conectar várias pessoas no mesmo canal.
Aplicar os conceitos obtidos no módulo 03 para implementar um chat do zero
Desenvolver um chat para conectar várias pessoas no mesmo canal.
Aplicar os conceitos obtidos no módulo 03 para implementar um chat do zero
Desenvolver um RAT (remote access control) para entender como funciona
Aplicar os conceitos obtidos no módulo 03 para implementar um RAT
Saber qual a diferença fundamental entre um Chat e Rat
Desenvolver um RAT (Remote Access Control) do zero
Desenvolver um RAT (Remote Access Control) do zero
Desenvolver um RAT (Remote Access Control) do zero
Desenvolver um scanner ICMP para fazer discovery de machina em LAN ou WLAN.
Utilizar os conceitos obtidos no modulo 03 para criação de Threads no Scanner.
Utilizar os conceitos obtidos no modulo 03 para criação de Threads no Scanner.
Implementar arquitetura de plugins
Definir prototipo de funções abstratas
Extrair campos do protocolo HTTP
Filtrar dados de string usando o módulo re
Implementar sistema de logger
Filtrar pacotes por tipo de camada do scapy
Usar o módulo scapy_http para parsers do protocolo
Aplicar os conceitos utilizado no módulo 3 sobre Threads
Modular sistema de plugins para diferentes situações
Usar o módulo Queue para manipulação de pacotes
Entender o conceito do ataque "homem no meio " corretamente
Entender sobre ataque de ARP poison ou ARP spoof
Entender como funciona as requisições POST e GET na prática
Aprenda usar linguagem de programação python para desenvolver ferramentas de segurança RedTeam e testes de penetração.
Grandes nomes de sucesso na área de segurança da informação diz que, "Uma fase importante para todo hacker: O momento onde todo conhecimento adquirido é colocado em prática ".
Escrever o seu próprio código/ferramenta faz de você entender realmente o que está por trás da falha ou até mesmo descobrir novas vulnerabilidades. O maior ganhador de CTF de bugbounty (HackerOne) vem se destacando por automatizar e desenvolver suas próprias ferramentas.
O conhecimento que você aprenderá com este curso é literalmente uma arma, saber desenvolver suas próprias ferramentas da forma correta, irá ti levar para outro nível na área segurança da informação Red Team. Meu objetivo é fazer de você um verdadeiro Coder, com uma base sólida para assim ajuda-lo melhor nos pentests.
O curso é dirigido aos profissionais de segurança da informação e a pessoas que têm interesse entender como as ferramentas funcionam por baixo dos panos, seus modelos de uso e de segurança, assim como conhecer (ou aprimorar o conhecimento) dos métodos de segurança, suas características e fragilidades, bem como as técnicas utilizadas por varias ferramentas conhecida no mundo cibernético.
Apaixone-se por Python, vá além e comece a escrever suas próprias armas!
Te espero nas aulas! HACKTHEPLANET