Create your own
Lesson illustration

Authorized Testing vs. Out-of-Scope Activity

Hello, and welcome to the course. You are working toward the practical habits needed for a junior web application penetration-testing role: using tools well, testing deliberately, and producing evidence that someone else can verify. Before we capture a single request in Burp, we need to establish the boundary that makes security testing legitimate and professionally useful.

This first module combines safe lab setup with Burp fundamentals. Today’s outcome is simple to state but essential in practice: distinguish an authorized web security test from activity that exceeds the approved scope. Technical skill never substitutes for authorization. A well-executed test on the wrong system, with an unapproved method, or after a testing window ends is not a valid penetration test.

By the end, you should be able to read a scope statement or disclosure policy, turn it into concrete testing limits, recognize common scope traps, and decide when to stop and ask for clarification.


Authorization is more than “I have permission”

A penetration test is an agreed security assessment. Its authorization is normally expressed through a combination of documents:

  • a scope, defining what may be tested;
  • rules of engagement, defining how, when, and under which safety constraints it may be tested;
  • a signed permission to test or equivalent authorization, establishing that the appropriate party has approved the work;
  • operational details such as points of contact, a testing window, supplied accounts, and an escalation procedure.

For a deliberately vulnerable training lab, the platform’s lab terms and the specific lab instructions typically provide this authorization. For a client engagement, authorization is more formal and must come from someone able to grant it. A company employee casually saying, “Sure, test our website,” is not an adequate substitute for a documented agreement.

The Penetration Testing Execution Standard emphasizes why this administrative step matters: scope defines what will be tested, while rules of engagement govern how the work will be conducted. Lack of clear preparation creates both operational risk and legal risk.

Pre-engagement Interactions — pentest-standard 1.1 ...

Read the “Pre-engagement Interactions” guidance from the Penetration Testing Execution Standard. It establishes why scope and written permission are part of the technical profession, not optional paperwork.

In “Introduction to Scope,” read the opening explanation. Focus on the distinction between defining targets and defining the way testing will be conducted. Then find the “Permission to Test” subsection near the later part of the page. Read the full paragraph. Notice that testing begins only after documented approval, even when everyone informally expects the test to happen.

A useful working definition is:

A web security action is authorized only when the exact target, method, conditions, and time period are all covered by valid permission.

This definition deliberately uses all. Scope is not a vague overall mood of permission. It is a set of boundaries.

For example, suppose an engagement authorizes testing staging.shop.example from Monday through Friday, using two supplied test accounts, with manual testing and low-rate automated checks permitted. The following are distinct decisions:

Proposed actionAuthorized?Why
Browse and test https://staging.shop.example during the windowLikely yesExact target and ordinary web testing are covered.
Test api.shop.example because the staging application calls itNot automaticallyA related hostname is a separate asset unless explicitly included.
Use the supplied customer test account to change its own shipping addressLikely yesThis is a normal state-changing action within the provided test role.
Attempt thousands of rapid login requestsOnly if explicitly permittedRate and method restrictions may prohibit it, even on an in-scope host.
Send denial-of-service traffic to test resilienceNo, unless unambiguously approvedAvailability testing is inherently disruptive and needs specific approval.
Download a database after proving an injection flawUsually noConfirmation does not authorize unnecessary data access or extraction.
Continue testing next MondayNoThe original time window has ended.

“Likely yes” still means verify the actual engagement terms. Good testers do not fill gaps with assumptions.


Scope has several dimensions

People often reduce scope to a list of domains. Domain names matter, but they are only one dimension. Before acting, evaluate the entire scope profile.

1. Assets: What exact systems are included?

An asset definition may name:

  • full hostnames, such as portal.example.test;
  • a wildcard, such as *.example.test;
  • particular paths or applications;
  • specific APIs;
  • IP ranges;
  • a production environment, a staging environment, or both;
  • user accounts or roles provided for testing.

Small differences are consequential:

  • app.example.test does not normally include admin.example.test.
  • A root domain does not necessarily include every subdomain.
  • A web page that loads an image, analytics script, payment widget, or CAPTCHA from another domain does not put that third-party service in scope.
  • A production domain and a staging domain may have similar code but very different safety constraints.

Public reachability is not authorization. A host can be visible on the internet, owned by an organization you recognize, and still be out of scope.

2. Methods: What actions are allowed?

The assessment method must also be approved. Common examples that require explicit treatment include:

  • automated scanning and its request rate;
  • password guessing or credential-stuffing simulations;
  • exploiting a finding past initial confirmation;
  • uploading files or triggering server-side processing;
  • testing payment, email, or notification workflows;
  • social engineering;
  • testing physical security;
  • denial-of-service, stress, or other availability-impacting activity.

Even apparently low-impact activity can create alerts, consume resources, or affect users. A port scan, a large directory-enumeration run, or a high-volume parameter test is not automatically allowed merely because a web application is in scope.

3. Conditions: How must the work be performed safely?

Rules of engagement commonly specify conditions such as:

  • approved testing dates and hours;
  • tester source IP addresses, VPN requirements, or geographic restrictions;
  • named test accounts and permitted roles;
  • rate limits and concurrency limits;
  • production safeguards;
  • data handling rules;
  • a client contact and an emergency stop procedure.

A test can therefore become out of scope without changing either the target or vulnerability class. If the permitted rate is 10 requests per second and a tool is configured to send 200, the test has exceeded the agreed conditions.

4. Ownership and third parties: Who can authorize the test?

A client can authorize testing of systems it owns or controls, but it cannot automatically authorize testing of infrastructure belonging to a cloud provider, SaaS vendor, payment processor, managed security provider, or another customer.

This is especially important in web testing because one application commonly depends on many external services. A request captured from an in-scope application may refer to:

  • a cloud-hosted storage bucket;
  • an identity provider;
  • a support-chat service;
  • a payment processor;
  • an analytics endpoint;
  • a content-delivery network;
  • an externally managed API.

The presence of an external hostname in browser traffic is evidence that the application uses it. It is not evidence that you may test it.

The CISA disclosure-policy template makes this principle concrete: before a system can be placed in scope, the organization must be able to authorize security testing on it. If a vendor has not authorized testing, the service cannot be included.

Vulnerability Disclosure Policy Template

Read the relevant parts of CISA’s “Vulnerability Disclosure Policy Template.” Although a vulnerability disclosure policy is not the same as a contracted penetration-test engagement, it provides a clear model for good-faith limits, minimal-impact confirmation, and precise asset scope.

First, in “Guidelines,” read the bullet list beginning the researcher conduct requirements, then continue through the paragraph stating that testing must stop if sensitive data is encountered. Focus on the principle of proving a vulnerability with the minimum necessary impact. Next, in “Scope,” read the paragraph beginning the vendor authorization requirement. Then read the exclusion rule. Treat “not expressly listed” and “uncertain” as a prompt to contact the designated security team, not as permission to explore.

A disclosure policy may offer a safe-harbor statement for research that follows its terms. That is valuable, but it is not unlimited permission: it applies only to the policy’s specified systems, methods, and conditions. It also does not make a third-party service in scope.


The minimum-necessary-impact principle

An authorized test is not a license to cause damage or collect everything accessible. Professional testing follows a principle of minimum necessary impact:

Use the least invasive action that establishes the security issue and its realistic impact.

Consider an access-control example. You have two explicitly supplied lab accounts: User A and User B. You alter an object identifier in a request made by User A and can view one non-sensitive profile field belonging to User B. That may be enough to demonstrate broken access control.

At that point, continuing to enumerate every account, download all profile data, modify user records, or pivot into other systems adds risk without improving the essential proof. In a real environment, sensitive data might appear unexpectedly. Stop, preserve only the minimum evidence needed, and report through the agreed channel.

The same restraint applies to exploit chains:

  • Establish that the issue exists.
  • Demonstrate a bounded, reversible impact where the rules allow it.
  • Record the request, response, timestamps, test account, and observed result.
  • Stop at the agreed proof point.
  • Escalate when the finding could affect real users, sensitive data, availability, or a connected system.

This approach is not timid testing. It is controlled testing. A finding is stronger when its proof is clear, reproducible, bounded, and tied directly to the approved engagement.


A practical decision procedure: test, stop, or ask

Before sending a request that goes beyond ordinary browsing, make the decision explicit. Treat each proposed action as a short statement:

“I intend to send this request type, to this exact host/path, using this account, at this rate, for this purpose.”

Then check the following.

  1. Identify the exact asset.
    Confirm the full hostname and environment. Do not infer scope from branding, a shared root domain, a redirect, or a related API call.

  2. Confirm authorization.
    Locate the target in the signed scope, lab instructions, or published policy. Check whether any exclusions override a broad inclusion.

  3. Confirm the test method.
    Is manual parameter tampering allowed? Is automation allowed? Is exploitation allowed only to confirmation? Is the method prohibited?

  4. Check conditions.
    Verify the testing window, account restrictions, source-network requirements, rate limits, and data-handling rules.

  5. Estimate impact before acting.
    Could the request alter data, send messages, charge a card, lock an account, create load, access another tenant, or interact with a third party? If so, look for a specific authorization and safety control.

  6. Decide conservatively.

    • All relevant elements clearly approved: proceed carefully.
    • Any element clearly excluded: do not proceed.
    • Any element ambiguous: pause and ask the designated contact for written clarification.

The right outcome of a scope check is sometimes “do not test this.” That decision protects the client, users, and your professional credibility.


Common scope traps in web assessments

“The application sent the request, so the destination must be in scope.”

Not necessarily. Modern web applications often communicate with many separate services. When you later configure Burp, you may see traffic to external libraries, authentication systems, metrics providers, and embedded tools. Capture does not grant authorization.

Safe response: record the hostname as an observed dependency. Test it only if the scope explicitly includes it or written approval expands the scope.

“The client owns the company, so every subdomain is fair game.”

Corporate ownership structures, acquisitions, subsidiaries, franchises, and separate business units can make this assumption wrong. Scope might intentionally cover one business unit or one prepared application while excluding another.

“The client asked me to be realistic, so I can use any technique.”

“Realistic” is not a method authorization. If the rules prohibit phishing, denial-of-service, credential attacks, destructive payloads, or persistent access, those remain prohibited.

“I found a critical issue, so I should go further to prove severity.”

Not without authorization. Severity can often be demonstrated with a limited proof and a clear explanation of what further impact would be possible. If the finding exposes sensitive data, stop according to the engagement procedure and notify the contact promptly.

“The project has started, so dates no longer matter.”

Testing windows exist so teams can monitor systems, staff support channels, avoid business-critical events, and manage risk. Outside the window, authorization may no longer apply.

“The client verbally expanded scope during a call.”

Do not rely on memory or informal phrasing. Ask for written confirmation that identifies the new asset, allowed methods, timing, and any third-party approval. This prevents scope creep: unplanned work that is poorly documented and potentially unauthorized.

The following brief video reinforces why scoping is a core job skill rather than bureaucratic overhead.

PRO-TIP When GETTING STARTED with PENTESTING - LEARN ABOUT SCOPING!

Watch “PRO-TIP When GETTING STARTED with PENTESTING - LEARN ABOUT SCOPING!” by Daniel Lowrie for a concise explanation of scope as a firm testing boundary.

Watch the scope definition. Focus on the idea that scope identifies both the assets worth testing and the targets that must remain untouched. The presenter’s client-impact framing is useful: scope protects operations as well as defining your work.


Build a one-page scope card for every lab

For this course, use a compact scope card before you interact with any intentionally vulnerable application. It takes a few minutes and creates the discipline needed for real engagements.

FieldWhat to record
Engagement or lab nameThe exact lab, exercise, or client engagement identifier
Authorization sourceLab rules, signed permission, statement of work, or disclosure policy
In-scope assetsExact hostnames, URLs, APIs, environments, and supplied roles
Explicit exclusionsDomains, paths, functions, accounts, third-party services, and methods not allowed
Permitted methodsManual testing, low-rate automation, approved vulnerability classes, allowed proof level
Safety limitsRequest rate, concurrency, data restrictions, availability constraints
Testing windowStart and end date/time, including time zone where relevant
Credentials and dataOnly supplied accounts; whether test data is required; handling instructions
ContactsTechnical contact, emergency stop contact, and escalation channel
Evidence rulesWhat to capture, where to store it, and what sensitive data must be redacted

For a training lab, this card can be very short. The important habit is to make authorization concrete before testing, rather than trying to reconstruct it later.

A quick example

Suppose a hypothetical lab states:

  • Scope: https://lab.acme.test
  • Allowed: web application testing using a learner account
  • Excluded: denial-of-service, attacks against linked third-party domains, and testing outside the lab window
  • Stop condition: if the lab becomes unstable, stop and notify the platform

Your scope card would identify lab.acme.test as in scope, but not cdn.acme-assets.test or support-vendor.test, even if browser traffic includes them. You could test application input handling manually, but you would not send high-volume traffic or attempt to affect availability.

This discipline will become immediately useful in the next lesson, where you configure Burp’s browser and target scope so your proxy workflow is limited to authorized HTTPS lab traffic.


Key takeaways

An authorized web security test requires more than recognizing a vulnerability:

  • Exact targets must be listed or clearly covered.
  • Methods such as automation, exploitation depth, social engineering, and availability testing require their own approval.
  • Conditions such as time windows, test accounts, traffic rate, and data rules are part of scope.
  • Third-party services are not authorized merely because the client application uses them.
  • A strong proof of concept demonstrates the issue with minimum necessary impact.
  • When scope is missing, contradictory, or ambiguous, stop and obtain written clarification.

Next, you will turn these boundaries into a practical Burp setup: using Burp’s built-in browser and target scope to capture only authorized HTTPS lab traffic.

Can't find a good explanation? Sign up and we'll make it for you

Sign up