Roadmap para Hacking criado pela XPSec Security, com o intuito de ajudar a todos dessa comunidade.
Note
Confira nossos treinamentos: XPSec Academy
Antes de tudo, é importante ter em mente que a Segurança da Informação abrange diversas áreas, e é necessário identificar em qual delas você deseja se aprofundar. É importante ressaltar que esse roadmap se concentra somente no aspecto ofensivo da segurança, ou seja, pessoas que se dedicam a realizar ataques.
Tip
É extremamente importante entender como o seu próprio computador funciona antes de querer hackear algo, principalmente o computador de outra pessoa.
📖 Arquitetura e Organização de Computadores
📖 Sistemas Operacionais Modernos
⏯️ CPU
⏯️ ASM hello world
📖 Linux Timeline
⏯️ Instalação Linux Mint
⏯️ Diferentes tipos de kernel
⏯️ Linux Kernel Drivers
⏯️ Syscalls
⏯️ Linux básico
📖 Formato PE
📖 Windows API
📖 Windows API
📖 Processos do Windows
Tip
É impossível atuar na segurança ofensiva sem conhecimentos em redes, você pode até rodar uma ferramenta ou outra, mas... no fim será escravo de ferramentas. Além de entender como seu computador funciona, entenda como ele se comunica com outros computadores ao redor do mundo.
⏯️ Protocolos TCP/IP
⏯️ Protocolo HTTP
⏯️ Protocolo ICMP
📖 DNS Protocol
⏯️ Redes de Computadores
⏯️ Fundamentos em Redes de Computadores
📖 Endereçamento IP
⏯️ IPV4 / IPv6
📖 Wireless Networks
📖 Redes Sem Fio
⏯️ Entendendo a Rede Wi-Fi
⏯️ Servidores web
⏯️ FREE CCNA // What is a Network?
Tip
Após você entender um pouco sobre sistemas operacionais, linux, windows e o redes de computadores, vamos também dar uma olhada em virtualização, visto que será extremamente importante durante a sua caminhada.
⏯️ O que é virtualização
⏯️ Como funciona a virtualização
⏯️ Criando máquina virtual
⏯️ Entendendo QEMU, KVM, Libvirt
Tip
Aprenda um pouco sobre docker também, atualmente está MUITO em alta e a maioria das ferramentas mais pesadas e que precisam de mais dependências podem ser executadas no docker para evitar dores de cabeça durante a instalação.
⏯️ O que é docker
⏯️ Docker Namespaces
⏯️ Containers
Tip
Não... você não vai ficar quebrando a cabeça com códigos fáceis simplesmente porque pulou a lógica de programação. Vamos pegar isso primeiro antes de começar a programar seus códigos...que imagino não serem lícitos.
⏯️ Curso Lógica de Programação Completo
⏯️ Introdução a Algoritmos
⏯️ Se nao aprender PROGRAMAÇÃO com esse video. - ̗̀ DESISTE ̖́-
Tip
Agora que você já deu uma estudada em lógica de programação, vamos realmente nos aprofundar em programação, pois você precisa criar seus próprios códigos.
⏯️ Curso C
⏯️ Curso Python3
⏯️ Golang
⏯️ SQL
⏯️ JavaScript
Tip
Como você já passou pelos conceitos da web na parte de redes de computadores e programação (javascript, sql, web servers e etc), vamos dar os primeiros passos em entender como vulnerabilidades web ocorrem e seus ataques comuns.
📖 Owasp top 10
⏯️ Web Hacking
⏯️ SQL Injection
📖 Hacktricks web pentest
📖 Web Pentest
📖 Awesome Web Hacking
Tip
Também é importante dar uma olhada em API pentest, principalmente pois a próxima categoria se trata especificamente de mobile, então é bom iniciar com isso já aplicado.
📖 Owasp API top 10
📖 Segurança em API rest
📖 API Pentest
⏯️ Pentest API
⏯️ API Hacking 101
⏯️ Owasp API top 10
📖 How to hack API in 2021
Tip
Hoje toda empresa tem um aplicativo, existem diversas vulnerabilidades que podem ser exploradas nesses ambientes, principalmente se baseando na falta de mecanismos de segurança como SSL Pinning.
📖 How android works
📖 How android app works
📖 Awesome Mobile Security
📖 Owasp mobile securitu checklist
📖 Android Cookbook
📖 Android pentest hacktricks
Tip
Aqui que entra a importância de ter aprendido sobre Windows lá na parte de sistemas operacionais. A maioria das empresas ainda usam o Active Directory para compartilhamento de recursos e saber isso é essencial para qualquer atacante.
⏯️ Conceito de domínios e árvores
⏯️ Como AD funciona
⏯️ Configurando o active directory
📖 Active Directory
📖 ired.team
📖 Hacktricks
⏯️ GoldenTicket na prática
Tip
É importante também aprender sobre vulnerabilidades em redes wi-fi, já que anteriormente também abordamos sobre esse tema.
📖 Hacktricks Wi-Fi
📖 Hacking Articles Wifi
⏯️ WPA2/PSK Handshake Attack explicado
📖 Awesome Wi-Fi Arsenal
📖 KRACK Attack
📖 Wi-Fi Attacks
Abaixo segue uma pequena lista de ferramentas que poderão te auxiliar em todo o processo do pentest, desde a enumeração à pós exploração em um ambiente, incluindo redes Active Directory, ambientes mobile, campanhas de phishing e muito mais!
Important
Ferramentas para Enumeração te ajudam a obter informações sobre o ambiente alvo, seja de forma passiva ou ativa.
Ferramenta | Linguagem | Suporte | Descrição |
---|---|---|---|
CrossLinked | Python | Linux/Windows/macOS |
LinkedIn enumeration tool to extract valid employee names from an organization through search engine scraping. |
Nmap | C | Linux/Windows/macOS |
Nmap - the Network Mapper. |
Sublist3r | Python | Linux/Windows/macOS |
Fast subdomains enumeration tool for penetration testers. |
Waybackurls | Go | Linux/Windows/macOS |
Fetch all the URLs that the Wayback Machine knows about for a domain. |
WhatWeb | Ruby | Linux/macOS |
Next generation web scanner. |
WafW00f | Python | Linux/Windows/macOS |
WAFW00F allows one to identify and fingerprint Web Application Firewall (WAF) products protecting a website. |
Subfinder | Go | Linux/Windows/macOS |
Fast passive subdomain enumeration tool. |
Feroxbuster | Rust | Linux/macOS |
A fast, simple, recursive content discovery tool written in Rust. |
Dnsx | Go | Linux/Windows/macOS |
dnsx is a fast and multi-purpose DNS toolkit allow to run multiple DNS queries of your choice with a list of user-supplied resolvers. |
Important
Ferramentas para ataques em aplicações web, facilitando o comprometimento de servidores por meio desses serviços.
Ferramenta | Linguagem | Suporte | Descrição |
---|---|---|---|
BurpSuite | Java | Linux/Windows/macOS |
Best-in-class software and learning for security engineers and penetration testers. |
OwaspZap | Java | Linux/Windows/macOS |
The ZAP core project. |
Commix | Python | Linux/Windows/macOS |
Automated All-in-One OS Command Injection Exploitation Tool. |
SQLMap | Python | Linux/Windows/macOS |
Automatic SQL injection and database takeover tool. |
Dalfox | Go | Linux/Windows/macOS |
Dalfox is a powerful open-source XSS scanner and utility focused on automation. |
Nuclei | Go | Linux/Windows/macOS |
Fast and customizable vulnerability scanner based on simple YAML based DSL. |
WPScan | Python | Linux/macOS |
WPScan WordPress security scanner. |
JexBoss | Python | Linux/macOS |
Jboss (and Java Deserialization Vulnerabilities) verify and EXploitation Tool. |
Important
Após obter acesso em uma rede, é necessário explorar mais a fundo a máquina onde o acesso foi obtido, e após isso, explorar a rede.
Ferramenta | Linguagem | Suporte | Descrição |
---|---|---|---|
LinPEAS | Shell | Linux/macOS |
Linux Privilege Escalation Awesome Script. |
WinPEAS | PowerShell | Windows |
Windows Privilege Escalation Awesome Script. |
Meterpreter | Ruby | Linux/Windows/macOS |
Meterpreter is a Metasploit attack payload that provides an interactive shell from which an attacker can explore the target machine and execute code. |
D3m0n1z3dShell | Shell | Linux |
Demonized Shell is an Advanced Tool for persistence in linux. |
Mimikatz | C++ | Windows |
A little tool to play with Windows security. |
Proxychains | C | Linux/macOS |
A a tool that forces any TCP connection made by any given application to follow through proxy like TOR or any other SOCKS4, SOCKS5 or HTTP(S) proxy. |
Empire | Python | Linux/Windows/macOS |
Empire is a post-exploitation and adversary emulation framework that is used to aid Red Teams and Penetration Testers. |
Evil-winrm | Ruby | Linux/macOS |
The ultimate WinRM shell for hacking/pentesting. |
Important
Abaixo confira algumas ferramentas com foco em quebra de senhas, seja online (serviços web) e offline (hash).
Ferramenta | Linguagem | Suporte | Descrição |
---|---|---|---|
Hashcat | C | Linux/Windows/macOS |
World's fastest and most advanced password recovery utility. |
PseudoHash | Python | Linux/Windows/macOS |
Generates millions of keyword-based password mutations in seconds. |
JohnTheRipper | C | Linux/macOS |
Advanced offline password cracker, which supports hundreds of hash and cipher types, and runs on many operating systems, CPUs, GPUs, and even some FPGAs. |
Hydra | C | Linux/macOS |
Online bruteforce tool. |
Trevorspray | Python | Linux/macOS |
TREVORspray is a modular password sprayer with threading, clever proxying, loot modules, and more. |
Important
Você poderá combinar as wordlists abaixo com ataques focados em quebra de senha e também reconhecimento de usuários/arquivos/diretórios/subdomínios em um ambiente web.
Ferramenta | Linguagem | Suporte | Descrição |
---|---|---|---|
Wordlists | Txt | n/a |
A collection of wordlists for many different usages. |
SecLists | Txt | n/a |
List types include usernames, passwords, URLs, sensitive data patterns, fuzzing payloads, web shells, and many more. |
RockYou2021 | Txt | n/a |
RockYou2021.txt is a MASSIVE WORDLIST compiled of various other wordlists. |
Important
Abaixo segue também uma lista de ferramentas com objetivo principal ataques em redes Wi-Fi, que podem ser combinadas com a lista de senhas anterior.
Ferramenta | Linguagem | Suporte | Descrição |
---|---|---|---|
Aircrack-ng | C | Linux/macOS |
WiFi security auditing tools suite. |
Wifite2 | Python | Linux/macOS |
Rewrite of the popular wireless network auditor, "wifite". |
Bettercap | Go | Linux/macOS |
The Swiss Army knife for 802.11, BLE, IPv4 and IPv6 networks reconnaissance and MITM attacks. |
Wifi-Hacking | Python | Linux/macOS |
Cyber Security Tool For Hacking Wireless Connections Using Built-In Kali Tools. |
wifipumpkin3 | Python | Linux/Windows/macOS |
Powerful framework for rogue access point attack. |
wifiphisher | Python | Linux/macOS |
The Rogue Access Point Framework. |
Important
Também são úteis algumas ferramentas para captura e análise de tráfego da rede.
Ferramenta | Linguagem | Suporte | Descrição |
---|---|---|---|
Wireshark | C | Linux/Windows/macOS |
Network traffic sniffer and analyzer. |
TCPDump | C | Linux/macOS |
Network dissector. |
ARPSpoof | C | Linux/macOS |
Performs an ARP spoofing attack using the Linux kernel's raw sockets. |
DNSSPoof | Python | Linux/macOS |
Drops DNS responses from the router and replaces it with the spoofed DNS response. |
Important
Principalmente em redes de Active Directory, as ferramentas abaixo podem ser facilmente utilizadas para ataques nesses ambientes.
Ferramenta | Linguagem | Suporte | Descrição |
---|---|---|---|
Crackmapexec | Python | Linux/macOS |
A swiss army knife for pentesting networks. |
Impacket | Python | Linux/macOS |
Impacket is a collection of Python classes for working with network protocols. |
BloodHound | PowerShell | Windows |
Six Degrees of Domain Admin. |
Responder | Python | Linux/Windows/macOS |
Responder is a LLMNR, NBT-NS and MDNS poisoner, with built-in HTTP/SMB/MSSQL/FTP/LDAP rogue authentication server supporting NTLMv1/NTLMv2/LMv2. |
PsMapExec | Powershell | Windows |
A PowerShell tool that takes strong inspiration from CrackMapExec. |
Important
Hoje qualquer empresa quer ter ou já tem um aplicativo, também existem ferramentas para pentest nesses aplicativos mobile, tanto Android quanto iOS.
Ferramenta | Linguagem | Suporte | Descrição |
---|---|---|---|
Frida | Python | Linux/Windows/macOS |
Dynamic instrumentation toolkit for developers, reverse-engineers, and security researchers. |
MobSF | Python | Linux/Windows/macOS |
Mobile Security Framework (MobSF) is an automated, all-in-one mobile application (Android/iOS/Windows) pen-testing, malware analysis and security assessment framework. |
reFlutter | Python | Linux/Windows/macOS |
Flutter Reverse Engineering Framework. |
Objection | Python | Linux/Windows/macOS |
objection - runtime mobile exploration. |
Important
Campanhas de phishing são extremamente importante, principalmente visando uma execução de um Red Team.
Ferramenta | Linguagem | Suporte | Descrição |
---|---|---|---|
Gophish | Go | Linux/Windows/macOS |
Open-Source Phishing Toolkit. |
Evilgnix2 | Go | Linux/Windows/macOS |
Standalone man-in-the-middle attack framework used for phishing login credentials along with session cookies, allowing for the bypass of 2-factor authentication. |
Important
Ferramentas de comando e controle são ótimas para manter acesso em um ambiente, principalmente quando você precisa desenvolver seus próprios beacons/stagers e precisa de uma framework robusta para manter conexão com as máquinas infectadas.
Ferramenta | Linguagem | Suporte | Descrição |
---|---|---|---|
CobaltStrike | Java | Linux/Windows/macOS |
Software for Adversary Simulations and Red Team Operations. |
BruteRatel | C# | Linux/Windows/macOS |
A Customized Command and Control Center for Red Team and Adversary Simulation. |
Covenant | .NET | Linux/Windows/macOS |
Covenant is a collaborative .NET C2 framework for red teamers. |
Villain | Python | Linux/Windows/macOS |
Villain is a C2 framework that can handle multiple TCP socket & HoaxShell-based reverse shells. |
Note
Esses são alguns livros que recomendamos, focados em tecnologia no geral e não abordando somente a área de Hacking/Pentest/Red Team.
📖 Advanced Penetration Testing: Hacking the World's Most Secure Networks
📖 The Hacker Playbook 2: Practical Guide to Penetration Testing
📖 The Hacker Playbook 3: Practical Guide To Penetration Testing
📖 Black Hat Python, 2nd Edition: Python Programming for Hackers and Pentesters
📖 Redes de Computadores
📖 Organização Estruturada de Computadores
📖 Sistemas Operacionais Modernos
Note
Se increva nesses canais abaixo para ficar sempre atualizado sobre o mundo da tecnologia e hacking!
🥷 XPSec Security
🥷 Formming Hackers
🥷 Hak5
🥷 STOK
🥷 John Hammond
🥷 Loi Liang Yang
🥷 cazz
🥷 CROW
🥷 The Cyber Mentor
🥷 David Bombal
🥷 NetworkChuck
🥷 Blackhat
🥷 LiveOverflow
Note
Alguns links que serão úteis para a sua jornada.
🔗 Awesome red team
🔗 Awesome Darknet
🔗 Pentest tools
🔗 Browser exploitation
🔗 ired.team
🔗 hacktricks
🔗 Portswigger
🔗 Hackthebox
🔗 Vulnhub
🔗 THM
Por favor, se esse conteúdo te ajudou, considere compartilhar para apoiar e motivar com o desenvolvimento.