Lab 02 — Bug Bounty Program Scope Analysis and Target Prioritization
Welcome to:
Lab 02 — Bug Bounty Program Scope Analysis and Target Prioritization
In Lab 01, you built your professional Bug Bounty research environment.
You now have:
Workspace
Scope Templates
Research Accounts
Evidence Structure
Hypothesis Register
Testing Logs
Reporting TemplatesThe next step is to learn how to correctly interpret a Bug Bounty program before performing any technical testing.
A professional researcher does not begin with:
Open Tool ↓Scan TargetThey begin with:
Read Program ↓Understand Authorization ↓Classify Scope ↓Identify Restrictions ↓Prioritize Targets ↓Plan ResearchYour mission in this lab is to transform a fictional Bug Bounty policy into a structured research plan.
Mission Information
Section titled “Mission Information”Your Role
Section titled “Your Role”You are operating as a:
Bug Bounty Hunter
Security Researcherwho has just joined a new Bug Bounty program.
You have received:
Program Policy
In-Scope Assets
Out-of-Scope Assets
Testing Rules
Reward GuidelinesBefore sending any security-testing traffic, you must determine:
What Can I Test?
What Must I Avoid?
Which Assets Matter Most?
Where Should I Begin?Lab Objectives
Section titled “Lab Objectives”By completing this lab, you will learn how to:
-
read a Bug Bounty program policy systematically.
-
identify explicit authorization boundaries.
-
distinguish in-scope and out-of-scope assets.
-
interpret wildcard scope.
-
identify third-party infrastructure.
-
identify testing restrictions.
-
interpret automation limits.
-
identify prohibited testing techniques.
-
understand safe-harbor language.
-
classify assets by technology and business function.
-
identify high-value attack surfaces.
-
prioritize targets.
-
build a target-priority matrix.
-
create initial security hypotheses.
-
create a time-boxed research plan.
-
document ambiguous scope safely.
-
avoid scope drift.
-
build a reusable program profile.
Prerequisites
Section titled “Prerequisites”You should have completed:
Lab 01Build Your ProfessionalBug Bounty Research EnvironmentYou should also understand:
Bug Bounty Fundamentals
Scope
Safe Harbor
Rules of Engagement
Web Applications
APIs
Cloud ServicesLab Scenario
Section titled “Lab Scenario”You have joined the fictional:
NovaCloud Security Research Program
Section titled “NovaCloud Security Research Program”NovaCloud provides:
Cloud File Storage
Team Collaboration
Project Management
Developer APIs
Mobile ApplicationsYou have been provided with the following program policy.
Program Policy
Section titled “Program Policy”In-Scope Assets
Section titled “In-Scope Assets”www.novacloud.test
app.novacloud.test
api.novacloud.test
*.labs.novacloud.test
NovaCloud Android Application
NovaCloud iOS ApplicationOut-of-Scope Assets
Section titled “Out-of-Scope Assets”support.novacloud.test
status.novacloud.test
careers.novacloud.test
Third-party analytics services
Third-party payment providers
Customer-owned integrationsTesting Restrictions
Section titled “Testing Restrictions”The program states:
Do not performDenial-of-Service testing.
Do not performsocial engineering.
Do not performphysical attacks.
Do not accessreal customer data.
Do not exceed10 requests per secondduring automated testing.
Do not performpassword spraying.
Use researcher-controlledaccounts wherever possible.Allowed Testing
Section titled “Allowed Testing”The program allows:
Web Application Testing
API Security Testing
Mobile Application Testing
Authentication Testing
Authorization Testing
Business Logic Testing
Controlled AutomationSafe Harbor
Section titled “Safe Harbor”The program states that good-faith research performed:
Within Scope
Within Program Rules
Without Intentional Harm
With Responsible Disclosureis authorized under the program.
Lab Deliverables
Section titled “Lab Deliverables”By the end of the lab, create:
01 Program_Profile.md
02 Scope_Register.csv
03 Exclusion_Register.csv
04 Testing_Restrictions.md
05 Asset_Classification.csv
06 Target_Priority_Matrix.csv
07 Initial_Hypotheses.csv
08 Research_Plan.md
09 Scope_Decision_Log.md
10 Scope_Safety_Checklist.mdPart 1 — Read the Program Before Testing
Section titled “Part 1 — Read the Program Before Testing”Before using:
Browser
Proxy
Scanner
Recon Tool
API Clientread the complete policy.
Your first task is:
UnderstandAuthorizationnot:
DiscoverVulnerabilitiesPart 2 — Create the Program Profile
Section titled “Part 2 — Create the Program Profile”Create:
01 Program_Profile.mdUse:
# Program Profile
## Program Name
NovaCloud Security Research Program
## Program Type
Fictional Bug Bounty Training Program
## Date Reviewed
YYYY-MM-DD
## Business
Cloud file storage, collaboration,project management and developer APIs.
## In-Scope Assets
- www.novacloud.test- app.novacloud.test- api.novacloud.test- *.labs.novacloud.test- NovaCloud Android Application- NovaCloud iOS Application
## Out-of-Scope Assets
- support.novacloud.test- status.novacloud.test- careers.novacloud.test- third-party analytics- third-party payment providers- customer-owned integrations
## Allowed Testing
- Web application testing- API testing- Mobile application testing- Authentication testing- Authorization testing- Business logic testing- Controlled automation
## Prohibited Testing
- Denial of service- Social engineering- Physical attacks- Password spraying- Access to real customer data
## Automation Limits
Maximum 10 requests per second.
## Safe Harbor
Good-faith research is authorizedwhen performed within scope andprogram rules.
## Initial Notes
-Part 3 — Identify Explicit In-Scope Assets
Section titled “Part 3 — Identify Explicit In-Scope Assets”Create:
02 Scope_Register.csvUse:
| Asset | Type | Scope | Authorization Basis | Notes |
|---|---|---|---|---|
| www.novacloud.test | Web | In Scope | Explicit | Public website |
| app.novacloud.test | Web App | In Scope | Explicit | Main authenticated app |
| api.novacloud.test | API | In Scope | Explicit | Developer/application API |
| *.labs.novacloud.test | Wildcard | In Scope | Explicit | Requires host validation |
| Android App | Mobile | In Scope | Explicit | Official application |
| iOS App | Mobile | In Scope | Explicit | Official application |
Part 4 — Understand Explicit Scope
Section titled “Part 4 — Understand Explicit Scope”An asset is easiest to classify when it is explicitly named.
For example:
api.novacloud.testis clearly:
In Scopebecause it appears directly in the program policy.
Part 5 — Interpret Wildcard Scope
Section titled “Part 5 — Interpret Wildcard Scope”The program includes:
*.labs.novacloud.testThis may cover hosts such as:
demo.labs.novacloud.test
api.labs.novacloud.test
mobile.labs.novacloud.testHowever:
labs.novacloud.testitself may not necessarily be covered by the wildcard notation depending on program wording.
Document this separately.
Part 6 — Wildcard Does Not Mean Unlimited Scope
Section titled “Part 6 — Wildcard Does Not Mean Unlimited Scope”A wildcard does not mean:
AnythingConnected tothe OrganizationFor example:
partner.example.netdoes not become authorized because it is used by NovaCloud.
Part 7 — Create the Exclusion Register
Section titled “Part 7 — Create the Exclusion Register”Create:
03 Exclusion_Register.csvUse:
| Asset | Type | Reason | Action |
|---|---|---|---|
| support.novacloud.test | Web | Explicitly out of scope | Do not test |
| status.novacloud.test | Web | Explicitly out of scope | Do not test |
| careers.novacloud.test | Web | Explicitly out of scope | Do not test |
| Analytics provider | Third Party | Third-party infrastructure | Exclude |
| Payment provider | Third Party | Third-party infrastructure | Exclude |
| Customer integration | Third Party | Customer-owned | Exclude |
Part 8 — Third-Party Assets
Section titled “Part 8 — Third-Party Assets”Suppose:
app.novacloud.testloads JavaScript from:
analytics.vendor.testThat does not make:
analytics.vendor.testan authorized target.
Classify it as:
Third Party ↓Out of ScopePart 9 — Payment Systems
Section titled “Part 9 — Payment Systems”Suppose the application redirects to:
checkout.paymentvendor.testfor payments.
Your target may include:
NovaCloud'sPayment Workflowbut not necessarily:
Payment VendorInfrastructureThis distinction is critical.
Part 10 — Customer-Owned Integrations
Section titled “Part 10 — Customer-Owned Integrations”NovaCloud may allow users to connect:
Git Repositories
Webhooks
Cloud Storage
Third-Party SaaSIf a customer connects their own system:
Customer Integration ≠NovaCloud AssetDo not test it.
Part 11 — Create Testing Restrictions
Section titled “Part 11 — Create Testing Restrictions”Create:
04 Testing_Restrictions.mdUse:
# Testing Restrictions
## Denial of Service
Not allowed.
Do not intentionally:
- overload services- exhaust resources- create production outages
## Social Engineering
Not allowed.
Do not target:
- employees- customers- support teams
## Password Attacks
Password spraying is prohibited.
## Automation
Maximum:
10 requests per second
Automation must remain within:
- authorized scope- program restrictions- reasonable resource usage
## Data Access
Do not access real customer data.
Use researcher-controlled accountsand researcher-controlled objectswherever possible.
## Physical Security
Not allowed.
## General Rule
If a test could createunnecessary operational,customer or third-party impact,stop and reassess.Part 12 — Convert Restrictions into Controls
Section titled “Part 12 — Convert Restrictions into Controls”A restriction should become an operational control.
Example:
Policy:
Maximum10 Requests / Secondbecomes:
Recon Configuration:
Requests / Second:≤ 10Part 13 — Automation Safety
Section titled “Part 13 — Automation Safety”For this lab, configure your conceptual automation limits to:
Concurrency:Low
Request Rate:≤ 10 requests/sec
Retries:Limited
Timeout:Reasonable
Scope Filter:RequiredPart 14 — Data Handling Restriction
Section titled “Part 14 — Data Handling Restriction”The policy says:
Do Not AccessReal Customer DataYour testing strategy should therefore use:
Account A
Account Band:
Researcher-OwnedTest ObjectsPart 15 — Safe Authorization Testing
Section titled “Part 15 — Safe Authorization Testing”Instead of:
EnumerateCustomer Documentsuse:
Account A ↓Create Test Document ↓Account B ↓Attempt AccessThis demonstrates the security boundary without accessing unrelated data.
Part 16 — Identify Business Functions
Section titled “Part 16 — Identify Business Functions”Based on the scenario, NovaCloud provides:
File Storage
Projects
Collaboration
Developer APIs
Mobile ApplicationsThese create different attack surfaces.
Part 17 — Create Asset Classification
Section titled “Part 17 — Create Asset Classification”Create:
05 Asset_Classification.csvUse:
| Asset | Function | Authentication | Data Sensitivity | Complexity |
|---|---|---|---|---|
| www.novacloud.test | Marketing | Low | Low | Low |
| app.novacloud.test | Main Application | Yes | High | High |
| api.novacloud.test | API | Yes | High | High |
| *.labs.novacloud.test | Labs | Varies | Medium | Medium |
| Android App | Mobile | Yes | High | High |
| iOS App | Mobile | Yes | High | High |
Part 18 — Identify High-Value Features
Section titled “Part 18 — Identify High-Value Features”Inside:
app.novacloud.testpotentially important functions may include:
Login
Password Reset
Projects
Files
Sharing
Invitations
Organizations
Billing
API KeysThese should receive different research priority than:
About Page
Marketing Blog
Static AssetsPart 19 — Prioritization Factors
Section titled “Part 19 — Prioritization Factors”Use:
Authentication
Sensitive Data
User Roles
Business Importance
Attack Surface
Complexity
Cross-Tenant Impact
Recent ChangesPart 20 — Build Target Priority Matrix
Section titled “Part 20 — Build Target Priority Matrix”Create:
06 Target_Priority_Matrix.csvExample:
| Asset | Auth | Sensitive Data | Roles | Complexity | Priority |
|---|---|---|---|---|---|
| app.novacloud.test | High | High | High | High | P1 |
| api.novacloud.test | High | High | High | High | P1 |
| Android App | High | High | Medium | High | P2 |
| iOS App | High | High | Medium | High | P2 |
| *.labs.novacloud.test | Varies | Medium | Varies | Medium | P2 |
| www.novacloud.test | Low | Low | Low | Low | P3 |
Part 21 — Priority Definitions
Section titled “Part 21 — Priority Definitions”Use:
P1Immediate Research
P2Secondary Research
P3Low Priority / ContextPriority is:
Research Prioritynot:
Vulnerability SeverityPart 22 — Why app.novacloud.test Is P1
Section titled “Part 22 — Why app.novacloud.test Is P1”Because it likely contains:
Authenticated Users
Private Files
Organizations
Sharing
User Roles
Billingwhich means it contains multiple:
Security BoundariesPart 23 — Why api.novacloud.test Is P1
Section titled “Part 23 — Why api.novacloud.test Is P1”APIs expose:
Objects
Methods
Authorization
Properties
Business LogicPotential high-value questions include:
Can User AAccess User B'sObjects?
Can Normal UserCall Admin Functions?
Can SensitiveProperties Be Modified?Part 24 — Mobile Priority
Section titled “Part 24 — Mobile Priority”The mobile applications may reveal:
Mobile-Specific APIs
Deep Links
Token Handling
Local Storage
Mobile Business LogicBut the backend may overlap heavily with:
api.novacloud.testTherefore mobile may start at:
P2until architecture is understood.
Part 25 — Main Website Priority
Section titled “Part 25 — Main Website Priority”The marketing site may provide:
Technology Clues
JavaScript
Documentation
Historical Linksbut may have less business impact than:
Authenticated ApplicationThus:
P3may be appropriate initially.
Part 26 — Identify Security Boundaries
Section titled “Part 26 — Identify Security Boundaries”For the NovaCloud application, likely boundaries include:
Guest ↓Authenticated User
User A ↓User B
Organization A ↓Organization B
Member ↓Organization Admin
Mobile App ↓Backend API
Application ↓Cloud StoragePart 27 — Create Security Questions
Section titled “Part 27 — Create Security Questions”Convert these boundaries into questions.
Examples:
Can User BAccess User A's File?
Can MemberPerform Admin Action?
Can Tenant BAccess Tenant A's Project?
Can Revoked Share LinkStill Access a File?Part 28 — Build Initial Hypothesis Register
Section titled “Part 28 — Build Initial Hypothesis Register”Create:
07 Initial_Hypotheses.csvUse:
| ID | Asset | Feature | Hypothesis | Priority |
|---|---|---|---|---|
| HYP-001 | app | Files | User B may access User A file by changing object ID | High |
| HYP-002 | app | Sharing | Revoked links may remain valid | High |
| HYP-003 | app | Invitations | Invite may allow role manipulation | High |
| HYP-004 | API | Projects | Object authorization may fail across tenants | High |
| HYP-005 | API | Profile | Sensitive properties may be writable | Medium |
| HYP-006 | API | Admin | User may call restricted function directly | High |
| HYP-007 | app | Password Reset | Reset token may remain valid after use | Medium |
| HYP-008 | mobile | Session | Mobile token may remain valid after logout | Medium |
| HYP-009 | mobile | Deep Link | Deep-linked resources may lack authorization | Medium |
| HYP-010 | labs | Legacy API | Old API may enforce weaker authorization | Medium |
Part 29 — Hypothesis Quality
Section titled “Part 29 — Hypothesis Quality”Avoid:
Test IDORPrefer:
A standard usermay be able to accessanother user's private fileby changing the file identifier.A good hypothesis identifies:
Actor
Action
Target
Expected Control
Possible FailurePart 30 — Prioritize Hypotheses by Security Boundary
Section titled “Part 30 — Prioritize Hypotheses by Security Boundary”High-priority boundaries may include:
Cross-Tenant Access
Account Takeover
Administrative Functions
Private File Access
Billing
Cloud AccessPart 31 — Create Initial Research Plan
Section titled “Part 31 — Create Initial Research Plan”Create:
08 Research_Plan.mdUse:
# Initial Research Plan
## Program
NovaCloud Security Research Program
## Research Objective
Understand the authenticatedapplication and API authorization model.
## Priority Assets
1. app.novacloud.test2. api.novacloud.test3. mobile applications4. *.labs.novacloud.test
## Initial Focus
- authentication- files- projects- organization membership- sharing- API authorization
## Research Accounts
Account AAccount B
Where possible:
Tenant ATenant B
## Initial Hypotheses
HYP-001HYP-002HYP-003HYP-004HYP-006
## Testing Restrictions
- maximum 10 requests per second- no denial-of-service testing- no password spraying- no customer data access- controlled accounts only where possible
## First Research Session
Objective:
Map application roles,objects and authorization boundaries.
Time Box:
90 minutes.
## Deliverables
- application map- object register- role matrix- request register- updated hypothesesPart 32 — Build the First 90-Minute Session
Section titled “Part 32 — Build the First 90-Minute Session”Use:
15 MinutesPolicy + Scope Review
20 MinutesApplication Exploration
20 MinutesRole + Object Mapping
20 MinutesCapture Baseline Requests
15 MinutesCreate HypothesesNotice:
No Exploitationis required yet.
Part 33 — Why Map Before Testing?
Section titled “Part 33 — Why Map Before Testing?”If you do not understand:
Objects
Roles
Workflows
Business Rulesyou may miss:
High-ImpactAuthorizationandBusiness LogicVulnerabilitiesPart 34 — Create Scope Decision Log
Section titled “Part 34 — Create Scope Decision Log”Create:
09 Scope_Decision_Log.mdUse:
# Scope Decision Log
## Decision 001
Asset:
cdn.novacloud.test
Observation:
Referenced by app.novacloud.test.
Scope Status:
Unknown.
Decision:
Do not actively test untilownership and scope are confirmed.
## Decision 002
Asset:
analytics.vendor.test
Observation:
Loaded by application JavaScript.
Scope Status:
Third party.
Decision:
Exclude from testing.Part 35 — Why Scope Decision Logs Matter
Section titled “Part 35 — Why Scope Decision Logs Matter”During recon you will discover many:
UnknownAssetsA decision log prevents:
I ThinkThis WasProbably In Scopefrom becoming your authorization model.
Part 36 — Unknown Assets
Section titled “Part 36 — Unknown Assets”Use the status:
Unknownwhen:
Ownership Is Unclear
Wildcard Applicability Is Unclear
Third-Party Relationship Is Unclear
Program Language Is AmbiguousThen:
Do NotActively Testuntil clarified.
Part 37 — Scope Drift
Section titled “Part 37 — Scope Drift”Scope drift occurs when research slowly moves from:
Explicitly Authorized Assetto:
Related Assetto:
Probably Owned Assetto:
Unrelated Infrastructurewithout conscious authorization checks.
Part 38 — Scope Drift Example
Section titled “Part 38 — Scope Drift Example”You begin with:
api.novacloud.testThe API references:
storage.vendor.testThe storage domain resolves into:
Cloud ProviderInfrastructureDo not continue:
API ↓Vendor ↓Cloud Range ↓EverythingPart 39 — The Scope Gate
Section titled “Part 39 — The Scope Gate”Use:
Discovered Asset ↓Scope Check ↓Authorized? / \ Yes No/Unknown ↓ ↓Research StopPart 40 — Create Scope Safety Checklist
Section titled “Part 40 — Create Scope Safety Checklist”Create:
10 Scope_Safety_Checklist.mdUse:
# Scope Safety Checklist
Before interacting with an asset:
- [ ] Asset appears in explicit program scope- [ ] Wildcard rules have been interpreted correctly- [ ] Asset is not explicitly excluded- [ ] Asset is not third-party infrastructure- [ ] Asset is not customer-controlled- [ ] Testing method is permitted- [ ] Automation limits are understood- [ ] Data-access rules are understood
Before automated testing:
- [ ] Scope filter configured- [ ] Exclusion list configured- [ ] Request rate within allowed limits- [ ] Concurrency set conservatively- [ ] No exploit actions automated
Before authorization testing:
- [ ] Researcher-controlled accounts available- [ ] Researcher-controlled objects created- [ ] No real customer resources required- [ ] Stop condition defined
If scope is uncertain:
- [ ] Stop active testing- [ ] Record asset as unknown- [ ] Review program language- [ ] Request clarification where appropriatePart 41 — Business Impact Prioritization
Section titled “Part 41 — Business Impact Prioritization”Attack-surface priority improves when you understand business impact.
For NovaCloud:
Private File Storagelikely matters more than:
Marketing Pagebecause private storage involves:
Customer Data
Authorization
Sharing
Tenant IsolationPart 42 — Asset vs Feature Priority
Section titled “Part 42 — Asset vs Feature Priority”An asset may be high-value while individual features vary.
Example:
app.novacloud.testcontains:
About Page → Low
Profile → Medium
Files → High
Organization Admin → High
Billing → HighPrioritize features, not only hosts.
Part 43 — Create Feature Priority Matrix
Section titled “Part 43 — Create Feature Priority Matrix”Add to your research notes:
| Feature | Security Boundary | Data | Business Impact | Priority |
|---|---|---|---|---|
| Login | Guest → User | Identity | High | P1 |
| Files | User A → User B | Private Data | High | P1 |
| Organization | Member → Admin | Privilege | High | P1 |
| Billing | User → Financial Workflow | Financial | High | P1 |
| Search | User Input | General Data | Medium | P2 |
| Marketing | Public | Public | Low | P3 |
Part 44 — Prioritize New and Complex Features
Section titled “Part 44 — Prioritize New and Complex Features”Features may deserve extra attention if they are:
New
Complex
Integrated
Role-Based
Multi-Tenant
Financial
Identity-RelatedPart 45 — Do Not Equate Priority with Likelihood
Section titled “Part 45 — Do Not Equate Priority with Likelihood”A high-priority feature means:
If SomethingIs Wrong Here,Impact Could MatterIt does not mean:
This FeatureIs Probably VulnerablePart 46 — Create a Testing Backlog
Section titled “Part 46 — Create a Testing Backlog”Create:
Testing_Backlog.csvwith:
| Priority | Asset | Feature | Hypothesis | Status |
|---|
Example:
| P1 | app | Files | Cross-user file access | New |
| P1 | API | Projects | Cross-tenant project access | New |
| P1 | app | Organizations | Member can modify admin settings | New |
| P2 | mobile | Sessions | Token survives logout | New |
Part 47 — Decide What NOT to Test First
Section titled “Part 47 — Decide What NOT to Test First”Professional prioritization also means intentionally postponing:
Low-Value
Duplicative
Unclear-Scope
Third-Party
High-Risktesting.
Part 48 — Example
Section titled “Part 48 — Example”Do not begin with:
Brute-ForceEvery Hostwhen your highest-value questions are:
Can Users AccessOther Users' Files?
Is Tenant IsolationEnforced?
Can Members ReachAdmin Functions?Part 49 — Target Selection Decision
Section titled “Part 49 — Target Selection Decision”Your recommended initial target should be:
app.novacloud.testwith supporting analysis of:
api.novacloud.testbecause together they likely expose:
Authentication
Authorization
Objects
Roles
Business Logic
Private DataPart 50 — Initial Research Sequence
Section titled “Part 50 — Initial Research Sequence”Use:
01 app.novacloud.test
↓
02 Authentication Mapping
↓
03 Research Accounts
↓
04 Object Mapping
↓
05 API Capture
↓
06 Authorization Matrix
↓
07 Initial TestsPart 51 — Research Accounts Plan
Section titled “Part 51 — Research Accounts Plan”Create:
Account A ↓Tenant A ↓Project A ↓File Aand:
Account B ↓Tenant B ↓Project B ↓File BThis creates controlled boundaries for later labs.
Part 52 — Define Stop Conditions
Section titled “Part 52 — Define Stop Conditions”Before testing, document:
Authorization Finding:
If Account Bcan access oneresearcher-controlledresource belonging toAccount A,
capture evidenceand stop.Part 53 — Why Stop Conditions Matter
Section titled “Part 53 — Why Stop Conditions Matter”They prevent:
One Test Object ↓Ten Test Objects ↓Real Customer Objects ↓Unnecessary ExposurePart 54 — Research Plan Review
Section titled “Part 54 — Research Plan Review”Before starting technical testing confirm:
Scope Defined
Exclusions Recorded
Restrictions Documented
Assets Classified
Priorities Assigned
Accounts Planned
Hypotheses Created
Stop Conditions DefinedPart 55 — Scope Analysis Workflow
Section titled “Part 55 — Scope Analysis Workflow”Your complete workflow is:
Read Program ↓Extract Scope ↓Extract Exclusions ↓Extract Restrictions ↓Identify Third Parties ↓Classify Assets ↓Understand Business ↓Map Security Boundaries ↓Prioritize Targets ↓Create Hypotheses ↓Plan ResearchPart 56 — Common Mistake: Start Scanning Too Early
Section titled “Part 56 — Common Mistake: Start Scanning Too Early”Avoid:
Join Program ↓Copy Domain ↓Launch ScannerYou may:
Violate Rules
Hit Third Parties
Waste Time
Generate NoisePart 57 — Common Mistake: Assume Ownership Means Scope
Section titled “Part 57 — Common Mistake: Assume Ownership Means Scope”An organization may own:
100 Domainsbut authorize:
3 DomainsOnly:
Program Authorizationmatters.
Part 58 — Common Mistake: Ignore Out-of-Scope Lists
Section titled “Part 58 — Common Mistake: Ignore Out-of-Scope Lists”Out-of-scope assets are not:
RecommendationsThey are:
BoundariesPart 59 — Common Mistake: Ignore Automation Rules
Section titled “Part 59 — Common Mistake: Ignore Automation Rules”Automation allowed does not mean:
Unlimited RequestsAlways record:
Rate
Concurrency
Permitted ActivityPart 60 — Common Mistake: Prioritize Only by Technology
Section titled “Part 60 — Common Mistake: Prioritize Only by Technology”Do not prioritize:
Old Frameworkautomatically above:
New Multi-TenantFile SharingBusiness security boundaries often matter more.
Part 61 — Common Mistake: No Research Objective
Section titled “Part 61 — Common Mistake: No Research Objective”Avoid:
Today I WillTest NovaCloudPrefer:
Today I WillMap and AssessObject-Level Authorizationin NovaCloud Projectand File WorkflowsPart 62 — Common Mistake: Too Many Hypotheses
Section titled “Part 62 — Common Mistake: Too Many Hypotheses”Do not begin with:
100 RandomSecurity IdeasStart with:
5–10High-QualityHypothesesPart 63 — Common Mistake: Confuse Recon with Testing
Section titled “Part 63 — Common Mistake: Confuse Recon with Testing”Recon:
What Exists?Testing:
Does SecurityWork Correctly?Keep them separate.
Part 64 — Common Mistake: Testing Real Users
Section titled “Part 64 — Common Mistake: Testing Real Users”If the program explicitly tells you:
Use Controlled Accountsdesign testing around:
Your OwnAccountsandObjectsPart 65 — Common Mistake: Scope by Association
Section titled “Part 65 — Common Mistake: Scope by Association”Example:
app.novacloud.testuses:
auth.identityvendor.testDo not assume:
Identity VendorIs In ScopePart 66 — Build a Program Decision Summary
Section titled “Part 66 — Build a Program Decision Summary”At the end of your scope analysis, write:
NovaCloud Program Decision SummaryExample:
Primary research will focuson the authenticated NovaCloudweb application and API.
The highest-value securityboundaries involve cross-userand cross-tenant authorization,organization roles, private fileaccess and account workflows.
Mobile applications will bereviewed after the primary APImodel is understood.
Third-party payment, analytics,support and customer-managedintegration infrastructure willnot be tested.
Automation will remain at orbelow the program's stated10-request-per-second limit.
Researcher-controlled accountsand test objects will be usedfor authorization validation.Part 67 — Lab Success Criteria
Section titled “Part 67 — Lab Success Criteria”You have successfully completed this lab when:
Program Profile Created
Scope Register Completed
Exclusion Register Completed
Testing Restrictions Recorded
Third Parties Identified
Assets Classified
Targets Prioritized
Initial Hypotheses Created
Research Plan Created
Scope Decision Log Created
Safety Checklist CompletedPortfolio Deliverables
Section titled “Portfolio Deliverables”Keep:
01 Program_Profile.md
02 Scope_Register.csv
03 Exclusion_Register.csv
04 Testing_Restrictions.md
05 Asset_Classification.csv
06 Target_Priority_Matrix.csv
07 Initial_Hypotheses.csv
08 Research_Plan.md
09 Scope_Decision_Log.md
10 Scope_Safety_Checklist.mdPortfolio Structure
Section titled “Portfolio Structure”Lab 02 — Bug Bounty Program Scope Analysis│├── Program Profile├── Scope Register├── Exclusion Register├── Testing Restrictions├── Asset Classification├── Target Priority Matrix├── Initial Hypotheses├── Research Plan├── Scope Decision Log└── Safety ChecklistKnowledge Check
Section titled “Knowledge Check”-
Why must a program policy be read before testing?
-
What defines authorization in Bug Bounty research?
-
What is explicit scope?
-
What is wildcard scope?
-
Why does wildcard scope not mean unlimited scope?
-
What is an out-of-scope asset?
-
Why must third-party assets be identified?
-
Why is a payment provider not automatically part of the target?
-
What are customer-controlled integrations?
-
Why should testing restrictions be converted into technical controls?
-
What is an automation rate limit?
-
Why should researcher-controlled accounts be used?
-
What is an Asset Classification Register?
-
What factors determine research priority?
-
Why is research priority different from vulnerability severity?
-
Why are authenticated applications often high-value targets?
-
Why are APIs often high-value targets?
-
Why might mobile applications initially be secondary targets?
-
What is a security boundary?
-
What makes a good security hypothesis?
-
Why should hypotheses be prioritized?
-
What should an initial research plan contain?
-
Why should research sessions be time-boxed?
-
What is a scope decision log?
-
Why should unknown assets not be actively tested?
-
What is scope drift?
-
What is a scope gate?
-
Why should assets and features both be prioritized?
-
Why are multi-tenant boundaries important?
-
Why are file-sharing workflows high-value?
-
Why are authentication workflows high-value?
-
Why should third-party services be excluded from automation?
-
Why should stop conditions be documented before testing?
-
Why should real customer data not be used for proof?
-
What is a testing backlog?
-
Why is deciding what not to test important?
-
Why should business function influence target priority?
-
Why does asset ownership not automatically provide authorization?
-
Why should automation rules be recorded?
-
What defines successful scope analysis?
Key Takeaways
Section titled “Key Takeaways”Before:
Reconbefore:
Scanningand before:
Exploitationcomes:
AuthorizationThe professional workflow is:
Program Policy ↓Scope ↓Exclusions ↓Restrictions ↓Asset Classification ↓Business Context ↓Security Boundaries ↓Target Priority ↓Hypotheses ↓Research PlanRemember:
Organization Owned ≠In ScopeRelated Asset ≠Authorized AssetThird-Party Service ≠TargetWildcard Scope ≠Unlimited ScopeAutomation Allowed ≠Unlimited AutomationHigh Priority ≠VulnerableA professional Bug Bounty Hunter should be able to say:
I Know
What I Can Test
What I Must Avoid
Which SecurityBoundaries Matter
Where I ShouldBegin
and
WhyCareer Connection
Section titled “Career Connection”Scope analysis and target prioritization are critical skills for:
Bug Bounty Hunters
Penetration Testers
Security Researchers
Application Security Engineers
Red Teamers
Security ConsultantsDuring an interview, you should be able to explain:
Before testing a program,I first convert the policyinto a structured scopeand exclusion register.
I document prohibitedtesting, automation limits,data-handling rules andsafe-harbor conditions.
I then classify authorizedassets by business function,authentication, datasensitivity and securityboundaries.
Rather than testing everyasset equally, I prioritizethe systems where a securityfailure would have meaningfulimpact, such as authenticatedapplications, APIs, tenantboundaries and private-dataworkflows.
Finally, I convert thoseobservations into specificsecurity hypotheses andcreate a time-boxed researchplan before active testingbegins.What’s Next?
Section titled “What’s Next?”➡️ Next: Lab 03 — Reconnaissance and Attack Surface Mapping
You now know:
What Is In Scope
What Is Out of Scope
Which Restrictions Apply
Which TargetsMatter MostThe next step is to take your:
Structured Scopeand discover:
What Actually ExistsInside ItIn the next lab, you will perform a controlled reconnaissance mission covering:
Domains
Subdomains
DNS
HTTP Services
Applications
APIs
JavaScript
Technology
Cloud Signals
Third Parties
Attack Surface ClassificationYou will build:
Recon Inventory
DNS Map
HTTP Asset Register
Technology Register
API Candidates
JavaScript Endpoint Register
Cloud Asset Register
Third-Party Register
Attack Surface Map
Priority QueueYou will move from:
Authorized Scopeto:
ValidatedandPrioritizedAttack Surface➡️ Next: Lab 03 — Reconnaissance and Attack Surface Mapping