I am sometimes asked the question "how to start in Penetration Testing/ Bug Bounty" and I feel speechless as I am not sure where to point a beginner as there aren't many resources that won't confuse a beginner. I understand the struggle newcomers go through, as I too went through the same when I was beginning. Back then I only wished somebody could tell me what to do, how to start and, what skills to gather. I am thus writing this guide to help newcomers in the field, this guide is suitable for both students and working professionals.
A beginner may sometimes get overwhelmed by the breadth (as well as depth) of the field, but don't let this discourage you, always remind yourself that the same immensity also means the field has a lot of opportunities. However, becoming an expert would take some time and a lot of knowledge. I am thus segregating the guide into three levels, Basics, Intermediate, and expert level. However, feel free to skip something if you are already aware of, or if confident enough.I am going to list some of the topics to learn, methodology to practice, some Dos and Don'ts. So let's begin
- HTTP/ HTTPS
- What is HTTP (an overview)
- Client-Server architecture
- Handshake
- HTTP request and response
- HTTP methods
- HTTP status codes
- HTTP Headers
- URL/ URI/ URN
- Proxies
- Cookies
- Session
- HTTP Connection
- Various HTTP Headers
- SSL/ TLS
- Cryptography
- Certificates/ CAs
- SSL/ TLS handshake
- PKI
- Web application architectures
- Monolithic
- N layered
- Clean
- The client: Browser
- HTML/ CSS/ JavaScript
- Developer tools
- Checking certificate
- The server
- Proxy
- Cache, CDN, Reverse Proxy
- Load balancers, SNI
- Modern Web
- JavaScript
- AJAX
- DOM
- Web Sockets
- IP address, MAC address, ISPs
- Router, Switch, Hub
- Broadcast, Multicast, Unicast
- LAN, WAN, MAN, VLAN, Segmentation
- Subnets, Subnet mask, CIDR notation
- TCP/ UDP
- OSI Model
- TCP/ IP Model
- Routing, Port, NAT, PAT, Port forwarding,
- TCP Handshake
- DNS, DNS records, Name resolution, Zones, DNSSEC
- ARP, RARP
- DHCP
- NetBios, LLMNR
- NFS
- SMB, SAMBA
- POP, SMTP, IMAP
- Active Directory, Domain Controller, Users, Groups
- Rights, Trusts, ACLs, DACLs
- NTLM, Kerberos, PTH, PTT, Token
- LSASS, SAM,
- Terminal/ CMD prompt, shell
- Ipconfig, getmac/ Ifconfig/ Ip
- Nslookup, Netstat, Tracert
- sysetminfo/ uname -a, lsb_release, /proc,
- DNS, Host files, Cache files
- Tasklist, ps
- Registry/ /proc, /etc
- User/ Kernel
- Memory, Stack
- Services, Process
- Nc, netcat
- Wireshark, Tcpdump
- User accounts, Administrator/ root
- Local, domain users
- Password, Authentication, Authentication Manager
- Authorization, Privileges, Tokens
- Programs/ Applications
- Executable, Libraries, Hooking, Process execution, Memory allocation
- Database
- CIA
- Query Language: SQL, NoSQL
- Directories, Directory services, LDAP
- Files
- API, REST, SOAP
- JSON, XML, GrraphQL
- Serialisation/ Deserialisation
- Template Engines
- Password storage
- Authentication, Authorisation, Accounting
- CIA, Validation, Verification
- Password, Token/ Key, Session, Digital Signature
- PAP, CHAP, EAP
- Radius, 802.1x, TACACS
- Kerberos, OpenID, NTLM, Basic Auth
- Directory, LDAP
- Encryption (Symmetric, Aymetric), Encoding, Hashing, Salt
- SSL, TLS, RSA, ECC, MD5, SHA1, NT, LM
- Encryption/ Decryption Oracle
- Tunneling, VPN, IPSec, Tor
- DMZ, Bastion host, Screened subnet
- NAC, Firewall, Proxy, IDS/ IPS, EDR, Anti Virus, XDR, SOC, NOC,
- Zero Trust network, Microservice, Microsegmentation
- SSO, SAML, Oauth, JWT
- Sandbox, Microkernel, Containers, Virtual Machines, Hypervisor
- DKIM, DMARC, SPF
- Trust
- Validation
- Assumptions