This study plan is based on milestones. So, check how much you can cover and close the checkboxes. The more you close, the better candidate you are for the job role. Also, I assume you have already checked and are comfortable with Common Security Skills study plan.
Just to make sure that everyone understands what you need to learn to be a pentester. It is altogether different from bug bounty, Red Team etc. but to excel in any of those roles you should be good at pentesting. It's not necessary that you can be a Red Teamer or Bug bounty hunter if you know pentesting. But a red teamer is surely very good at pentesting. Also, Vulnerability assessment is not pentesting, however, VAPT is a common skills required for pentesters job.
In short:
- Pentesters are offensive security folks who try to find as many security vulnerabilities as possible, access the risk and exploit as much as possible. They can play as internal or external attackers for the organization.
- Red Teamers are least bothered of finding all security gaps, and their ultimate goal is to find one way in, exploit it and then escalate laterally through your system to access the juiciest data they can.
- It's totally upon your preference and timings that you should join bug bounty platform or not.
Read more here about Pentesters vs Red Team
Usually it will take you 6 months to be good at fundamentals to get a job at entry level.
- Pentesting Concepts - 6 weeks
- Tools fo Trade - 2 weeks
- Lab Practices - 8 weeks
- Books (Read 1-2 books) - 2-3 months
- Videos
- Courses - Try to complete at least one course (1-2 months)
- Certifications - on your bandwidth and wish
Go with your pace, but make sure you understand the basic security concepts very well like HTTP Security Response headers, Bruteforce, DoS, XSS, CSRF, Injection, IDoR, JWT etc.
- Understanding of various HTTP methods, PUT vs POST, UPDATE vs PATCH, leverage OPTIONS method
- Ability to understand response status codes.
- what if you got 200, when you tried something malicious
- what can we do if we get 403
- let's try to get 500 status code, and why so? What will it reveal.
- Try to understand each status code which as a pentester you would love to see.
- Understand HTTP headers very well, specially response headers. You would need it more often while doing pentest.
- TCP 3 way handshake
- How SSL works
- Basics of security terminologies
- Essentials Security Concepts
You can find majority of the security concepts at OWASP Cheatsheet
Understand the fundamental concepts on what it is, how it can be vulnerable and how you can either exploit it or mitigate it.
- Understanding how proper implementation of AuthN and AuthZ contribute to robust security. What can an attacker do to exploit it.
- How session and cookies can be vulnerable, bypassed or even exploited
- In-depth understanding of XSS
- Some REST concepts like CRUD.
- Different types of injections specially SQLi, RFI,LFI
- Mass Assignment
- CSP concepts
- SSRF
- Automated Bruteforce
- Credential Stuffing
- JWT Tokens
- Basic of encoding, decoding, hashing
- Session Fixation, Session Hijacking
- 3rd Party Vulnerability checks and exploitations
- Understand the work defined for black box and white box testing
- SAST vs DAST
- CORS
- Very good at OWASP Testing Guide hands-on
- How to leverage a vulnerability to achieve RCE
- Learn how to test for OS Command Injection
- Understand what causes BOLA and BFLA and try to be good at testing these vulnerabilities
- Various weak cipher suites
- Advanced SQL Injection
- XML Injection, JSON Injection
- Understand SAML and LDAP Injection
- NoSQL Injection
- GraphQL Injection
- XXE Attacks
- Template Injection
- Deserialization
They say tools are not everything but tools play an important role to make you a better and efficient penetration tester. But, don't just be tool junkie. Try to understand in-depth of each tool, its functionalities and when to use with how concept! I am not writing names of many tools for DAST, SAST etc like acunetix, appscan, checkmarx etc. Kali OS will have almost all the tools that you would need for pentest, but I would explicitly mention few of them here as well.
- Kali Linux (I am sure majority of us would be using this only)
- Burp Suite Pro or OWASP ZAP (Really a single tool for bread and butter ;) )
- Metasploit
- nmap (you would use it everytime you start with pentest)
- dirb
- nikto
- fierce
- dnsenum
- sqlmap
- Shodan
- BeeF
- Arachni
- wireshark
- hydra
- cain and abel
- w3af
- Kontra for OWASP Top 10 for Web
- hackthebox
- tryhackme
- OWASP WebGoat
- OWASP JuiceShop
- PentesterLab
- AttackDefense Lab - Recommended (you would need paid subscription)
- DVWA
- The Web Application Hacker's Handbook (read this book as the first thing or learn from web security academy)
- OWASP Top 10 2021 Testing Guide (read this as the 2nd book)
- The Hacker Playbook 3: Practical Guide To Penetration Testing
- Real World Bug Hunting
- Web Hacking 101 by Peter Yaworski - pdf
It's upto you to choose some paid or free courses to speed up what you have learned so far to test how much you understand under web pentesting category. You should choose lab based courses though.
- Cybrary
- Pentester academy - I liked few of its courses on
- Python for Pentesters
- JavaScript for Pentesters
- Pentesting with Metasploit
- WAP Challenges
- Web Application Pentesting
- Introduction to Web Security form Stanford
- Pentesting for beginners
- Pentesting from EdX
- Web Security Academy (You can ignore reading Web Application Hackers Handbook, if you are learning from here!)
- Computer Systems Security form MIT
Certification gives you an entry for HR calls, but remember real hands-on experience can beat anything.
- CEH: not highly recommended, but good to start with if you don't know anything about security.
- eJPT
- eWPTXv2
- OSCP
- OSWE
- GPEN
- GWAPT
List of other famous cybersecurity certifications are mentioned here.
Once you are on track and now understands the heat, it's time to:
- Make some good LinkedIn contacts from security domain
- Find a mentor
- Make connections through various security conference online/offline
- Publish some good hacking articles, may be basic concepts but you must publish. Choose medium
- Join webinars, conferences
- help someone who is still a beginner
By the time you cover all these checklists, you will be already on a way to have a good start in web security job role. All the best!
Why twitter? Because you will see lots of security professionals very active here and sharing cool stuffs often.
- Dave Kennedy
- Kevin Mitnick
- The Hacker News(THN)
- PortSwigger
- Dark Reading
- Defcon
- Nullcon
- NahamSec
- TryHackMe
- HackerOne
- BugCrowd
- OWASP
- Troy Hunt
- Jason Haddix
- Security Princess - Parisa Tabriz
- Binni Shah
- Random Robbie
- TomNomNom
- Aditya Shende
- Infosec Community
- Hacking Articles
- harsh Bothra
Possible Web Security interview questions is shared at different github repo to keep it aligned with career roadmap guide.