Jump to: 🔥 Challenge News ⚡ Intel 🔬 Research Labs 📡 All News →
💰 EARN WHILE YOU LEARN

Bug Bounty Hunting Bootcamp

From absolute zero to finding and reporting real vulnerabilities on HackerOne, Bugcrowd, and Intigriti. Every phase builds practical skill — including exactly how to earn money, which programs to target, and how to write reports that get paid.

6
Phases
22
Modules
300
Days
$0
Cost
$$$
Earning Potential
Phase 1 · Foundations
Web Fundamentals, Lab Setup & the Bug Bounty Mindset
You cannot find what you do not understand. Before touching a target, you need a deep working knowledge of how the web actually functions — HTTP, cookies, sessions, JavaScript execution, same-origin policy, and the client-server model. This phase builds that foundation and sets up your hunting environment.
📅 40 days🎯 Zero experience needed🛠 Burp Suite CE · OWASP Juice Shop · Firefox DevTools
MOD 01 How the Web Works — The Foundation Everything Else Sits On Days 1-12
Tutor Explanation

Every vulnerability you will ever find is a consequence of how the web was designed. HTTP is stateless, text-based, and built on trust assumptions that attackers exploit constantly. Understanding the full request-response cycle — at the byte level — is what separates hunters who find critical bugs from hunters who only find the same XSS everyone else reports.

Start with HTTP. A browser sends a request with a method (GET, POST, PUT, DELETE, PATCH, OPTIONS), a path, headers (Host, User-Agent, Cookie, Authorization, Content-Type), and optionally a body. The server returns a response with a status code, headers, and body. Every single field in this exchange is attacker-controlled and therefore a potential injection point.

The Same-Origin Policy (SOP) is the browser's core security mechanism. A page at https://bank.com cannot read the response from a request to https://evil.com. SOP is enforced by the browser, not the server. Every CORS misconfiguration, every CSRF vulnerability, every postMessage attack is fundamentally a bypass of or gap in SOP. Understand this deeply before anything else.

Cookies are the primary session mechanism. They have flags that determine security: HttpOnly prevents JavaScript access (blocks XSS cookie theft), Secure prevents transmission over HTTP, SameSite=Strict/Lax/None controls cross-site sending (CSRF mitigation). A cookie without these flags is a vulnerability waiting to happen. Always check flags in Burp.

Critical HTTP Concepts for Bug Hunters
HTTP Methods: GET (retrieve, no body, safe), POST (submit data, body), PUT (replace resource), PATCH (partial update), DELETE (remove), OPTIONS (CORS preflight — reveals allowed methods and origins — always test this).

Status codes that matter: 200 (OK), 201 (Created — confirms something was created, useful for IDOR), 301/302 (redirect — test for open redirect), 400 (bad request — your input broke parsing), 401 (unauthenticated), 403 (forbidden — try to bypass), 404 (not found — not always), 429 (rate limited — note the threshold), 500 (server error — your input caused a crash — high priority).

Headers that reveal information: Server (technology stack), X-Powered-By (PHP version, framework), X-Frame-Options (clickjacking protection — absent = clickjacking possible), Content-Security-Policy (XSS mitigation — misconfigured = XSS surface), Access-Control-Allow-Origin (CORS — wildcard or reflected = CORS vulnerability).

The browser security model: DOM, JavaScript execution context, localStorage vs sessionStorage vs cookies, how iframes isolate content, how postMessage works and fails, how Content Security Policy restricts script execution.
Bug bounty hunting is like being a health inspector for websites. You know exactly what a kitchen should look like — proper separation of raw and cooked, correct temperatures, clean surfaces. When you walk into a kitchen, you immediately notice what's wrong because you know the standard so well. Web security works the same way — learn the standards deeply enough and vulnerabilities jump out at you.
Lab 1.1 — Intercept and Manipulate Your First HTTP Request
1Download and install Burp Suite Community Edition (free, portswigger.net). Install the Burp CA certificate in Firefox. Every HTTP request your browser makes now flows through Burp's proxy on localhost:8080.
2Open http://juice-shop.herokuapp.com (OWASP Juice Shop — a deliberately vulnerable app, free). Browse the site normally. Watch every request appear in Burp's HTTP History tab.
3Find a GET request to a product page. Send it to Repeater (Ctrl+R). Modify the product ID in the URL from /rest/products/1/reviews to /rest/products/2/reviews. Send. You just manually tested your first IDOR — accessing a different resource by changing an ID.
4Inspect the response headers on every request. Make a list: which headers are missing that should be present? X-Frame-Options? Content-Security-Policy? Strict-Transport-Security? Each missing header is a potential finding.
5Complete PortSwigger Web Security Academy — "Web Application Penetration Testing" learning path (free, labs.portswigger.net). This is the best free resource in existence. Do every apprentice-level lab in this phase.
Daily Tasks
Set up your full hunting environment: Burp Suite CE with CA cert installed in Firefox, OWASP Juice Shop running locally via Docker (docker run -d -p 3000:3000 bkimminich/juice-shop), and Firefox configured with FoxyProxy to route through Burp. Document your setup in a personal wiki.
Easy
Read the HTTP/1.1 specification summary (MDN — HTTP overview). Then open Burp and browse 10 different websites. For each, identify: what server technology, what frameworks, what cookies are set and with what flags, what security headers are present or missing. Build a comparison table.
Medium
Complete all 14 "Apprentice" level labs in the PortSwigger SQL Injection and XSS learning paths. For each lab: before solving it, write down your hypothesis of what the vulnerability is and how to exploit it. After solving: compare your hypothesis to the actual solution. The gap is what you need to learn.
Hard
MOD 02 Platform Strategy — Where to Hunt, How Programs Work, and How to Get Paid Days 13-25
Tutor Explanation

Understanding the business side of bug bounty before you find your first bug is essential. The difference between hunters who earn consistently and those who find bugs but get nothing is largely strategy — choosing the right programs, understanding scope, writing reports that get triaged correctly, and building relationships with the right companies.

The major platforms: HackerOne (largest, most enterprise programs, strongest reputation system), Bugcrowd (strong in financial services and technology), Intigriti (strongest in Europe, GDPR-compliant programs), YesWeHack (growing, good French and European programs), Hackenproof (strong crypto and Web3 programs), and Synack (invite-only, vetted, highest average payouts). Start with HackerOne and Bugcrowd — the most programs, the best documentation, the most learning resources.

Bug bounty programs come in two types. Public programs are open to everyone — high competition, more duplicate reports, but excellent for learning. Private programs are invitation-only — lower competition, faster triage, better relationships with security teams, and typically higher payouts. You get invited to private programs by performing well on public ones. Reputation score on HackerOne is the primary invitation criterion.

How to Choose Your First Programs — The New Hunter Strategy
Avoid the top 10 most popular programs. Programs like Twitter, Google, Apple, and Facebook receive thousands of reports monthly. As a new hunter, almost everything you find will be a duplicate. You will waste time and get demoralized.

Target programs with these characteristics:
• Recently launched (low existing researcher coverage)
• Wide scope (all subdomains of *.company.com rather than just www.company.com)
• Cash payouts (not swag-only — swag programs waste your time)
• Response time SLA under 14 days (programs that respond fast are better to work with)
• Few reports resolved (shown on HackerOne program stats — lower number means less competition)
• Asset types you understand (if you know web apps, pick web app scope not Android)

The goldmine: new programs. When a company launches a new bug bounty program, it typically has significant unresearched attack surface. The first 30-90 days of a new program's life are when the most unique, high-severity bugs are found. Follow @disclosedh1 on Twitter and HackerOne's program launch feed to catch new programs immediately.
Severity and Payout Tiers — What Actually Gets Paid
Programs use CVSS or their own severity tiers. Approximate payout ranges across major platforms:

Critical (CVSS 9.0-10.0): RCE, authentication bypass on production, SQL injection dumping user data, mass account takeover. Payout range: $5,000 — $100,000+. Average: $15,000-$25,000 on major programs.

High (CVSS 7.0-8.9): Stored XSS on sensitive pages, IDOR exposing PII, SSRF with internal service access, privilege escalation. Payout range: $1,000 — $15,000.

Medium (CVSS 4.0-6.9): Reflected XSS, open redirect, limited IDOR, information disclosure. Payout range: $200 — $2,000.

Low (CVSS 0.1-3.9): Self-XSS (not exploitable without victim action), missing headers, minor information disclosure. Payout range: $0 — $500. Many programs don't pay for Low.

Informational: Theoretical issues with no direct exploit path. Rarely paid. Good for building reputation if acknowledged.
Daily Tasks
Create accounts on HackerOne, Bugcrowd, and Intigriti. Complete all profile sections including background and skills. Read the complete documentation for each platform: how reports are submitted, how severity is calculated, how payouts work, and what happens during triage. Read 20 disclosed reports on HackerOne (hackerone.com/hacktivity) — pay attention to how they are written, not just what the bug was.
Easy
Identify 10 programs that match the "new hunter strategy" criteria above. For each: note the scope, maximum payout, response time SLA, number of resolved reports, and whether private or public. Rank them by attractiveness. This is your initial target list — you will refine it as you learn more about your own strengths.
Medium
Read 50 disclosed HackerOne reports covering at least 8 different vulnerability classes. For each report: write one paragraph analysing what the hunter did to find the bug, why the program paid the reported severity, and what you could have done differently in the writeup. This exercise trains report-reading AND report-writing simultaneously.
Hard
MOD 03 Burp Suite Mastery — Your Primary Weapon Days 26-40
Tutor Explanation

Burp Suite is the industry-standard tool for web application security testing. The Community Edition (free) gives you everything you need to find real bugs. Every professional bug hunter uses Burp as their primary tool. Learning it deeply is non-negotiable.

Proxy: Intercepts every HTTP/S request between your browser and the target. You can pause, inspect, and modify any request before it reaches the server. This is how you test every parameter, every header, every cookie for injection vulnerabilities. Set Intercept to off for browsing — turn it on only when you want to pause and modify a specific request.

Repeater: Send any intercepted request here and re-send it as many times as you want with modifications. This is where you test payloads — modify the parameter, send, check the response, modify again. You will spend 80% of your time in Repeater.

Intruder (CE limited): Automates payload injection across a parameter. Community Edition rate-limits this heavily but it still works for small wordlists. Use for brute-forcing parameters, fuzzing inputs, and testing for IDOR across a range of IDs.

Decoder: Encode/decode Base64, URL encoding, HTML entities, hex. Attackers and developers both use encoding to transform payloads. Understand what encoding is applied to your input — XSS payloads that get URL-encoded before reaching the DOM don't fire. You need to know when and how encoding is applied.

Extensions (BApp Store — many free): Logger++ (enhanced HTTP history), Retire.js (identifies vulnerable JavaScript libraries), JWT Editor (free — manipulate and attack JWT tokens), Param Miner (discovers hidden parameters — extremely valuable), Turbo Intruder (fast fuzzing, Python-scriptable), Active Scan++ (additional active scanning checks).

Lab 3.1 — Burp Suite Workflow Drills
1Install these free Burp extensions: Logger++, Param Miner, JWT Editor, Retire.js, Active Scan++. Configure Logger++ to log everything. This gives you a permanent searchable history of all requests during a session.
2On Juice Shop: find the login request. Send to Repeater. Attempt SQL injection in the email field: ' OR 1=1--, admin'--, ' UNION SELECT 1,2,3--. Observe the responses. Does anything change? What does a 200 vs 401 vs 500 tell you about whether injection is working?
3Right-click any request → Send to Intruder. Mark the product ID parameter as the injection point. Load a list of IDs 1-100. Run the attack. Look for response length anomalies — different length = different content = potential IDOR.
4Run Param Miner on Juice Shop's main pages. It will discover hidden parameters not visible in the UI. Every hidden parameter is a potential attack surface that other hunters miss because they only test what they can see.
5Complete the PortSwigger Burp Suite learning path (free, labs.portswigger.net/burp). Every lab uses Burp — this is the fastest way to develop tool fluency alongside technique knowledge.
Daily Tasks
Spend 2 hours per day for 5 days doing nothing but browsing Juice Shop through Burp and reading every request in HTTP History. Annotate what each request does, what parameters it sends, and what security-relevant headers the response contains. By the end you should know the entire Juice Shop API surface from memory.
Medium
Complete all Practitioner-level PortSwigger labs for: SQL Injection (all 18), XSS (all 30), and CSRF (all 12). These are the three most common paid vulnerability classes. Document every payload that worked and why. This becomes your personal payload reference library.
Hard

Frequently Asked Questions