Black Shard

Insights7 April 2026

Scoping a penetration test properly

Most of a penetration test's value is fixed before testing starts. What a useful scope contains, the scoping mistakes that waste an engagement, and the questions a good scoping call asks.

Brass drafting compass scribing a circle on dark slate under cold cyan light

Most of the value is set before testing starts

A penetration test is a block of skilled time pointed at your systems. What that time returns depends almost entirely on decisions made before the first request is sent: what the tester is trying to reach, what they are allowed to touch, what access they start with, and what happens when something serious turns up. Those decisions are the scope. Get them right and the report tells you something you could not have learned any other way. Get them wrong and you receive a tidy document about the wrong things.

This note covers what a useful scope contains, the scoping mistakes that quietly waste an engagement, and the questions a competent provider will ask before quoting anything. The same logic applies to web application, external, internal and cloud tests.

Frame the target around crown jewels

The strongest scopes start from an outcome to prevent rather than a list of assets to sweep. Name the things whose compromise would genuinely hurt: the customer database, the payment run, the ability to push code to production, the tenancy boundary between clients in your platform. Then ask the tester to demonstrate whether those outcomes are reachable. That is a different instruction from testing twelve IP addresses, and it produces a different engagement, because the tester prioritises paths that lead somewhere instead of cataloguing everything equally.

Crown-jewel framing also settles scope arguments cleanly. Should the marketing site be in scope? If it shares infrastructure, credentials or a login flow with anything that matters, yes, because attackers use it as a stepping stone. If it is a static page on isolated hosting, it can wait. The objective decides, and the same logic prunes or adds systems without haggling over each hostname.

Environments and exclusions

Decide early whether the test runs against production, a staging copy, or both. Testing staging is safer and is the right call for aggressive test cases against fragile systems, but a staging environment only gives assurance about production to the degree it actually matches: same code, same configuration, same authentication stack, realistic data shapes. Staging that has drifted answers a question nobody asked. Many engagements land on a split, with authenticated application testing in staging plus verification against production for the classes of finding that configuration drift would hide.

Treat every exclusion with suspicion, even the ones you propose yourself. The fragile legacy server everyone is scared to touch is precisely the machine a real attacker will lean on, and excluding it from the test does not exclude it from the breach. Write every exclusion down with a reason and a review date. Mark the third-party boundary honestly too: you can authorise testing of systems you own or control, while platforms you merely subscribe to are covered by the vendor's own terms. The major cloud providers publish standing rules that let customers test their own tenancy, and a scoping call should confirm what those rules allow before anyone touches the environment.

Credentials and access levels

An unauthenticated test of an application answers one narrow question: what can a stranger on the internet do? Almost everything that matters in a modern application sits behind the login, so a scope that withholds credentials buys a perimeter check and calls it an application test. Provide working test accounts for each role the application has, and provide two accounts per role, because proving that user A can read user B's records requires both to exist. For admin tiers, a monitored account in a test tenancy is usually workable where a production admin login is not.

The same principle applies to networks. An internal test that starts from a standard staff account or a device on the office network, often called an assumed-breach starting position, tells you what a phished employee's laptop is worth to an attacker, which is the question most Australian businesses actually need answered. Starting the tester outside with nothing is a legitimate scope as well, but choose it deliberately, knowing it spends much of the window on getting in rather than on what getting in leads to.

Timing windows and rules of engagement

Agree when testing happens and who knows about it. Business-hours testing means your team can respond if something breaks; after-hours windows suit fragile systems and noisy test cases. Check the window against change freezes, releases and peak trading before you sign it. Decide explicitly whether your IT or security team is told. An announced test avoids burning incident-response effort on friendly traffic, while an unannounced one doubles as a detection exercise. Both are valid, provided someone senior holds the full picture and can call off a real response.

Rules of engagement put the remaining edges in writing. Settle at least these: denial-of-service testing is excluded unless explicitly agreed, destructive actions and data modification in production are excluded, evidence handling is defined (what gets captured, where any sample data is stored, when it is destroyed), and a named emergency contact exists on both sides. Above all, agree a stop-and-report threshold. If the tester finds something critical and exposed, you want a phone call that day, and the tester needs to know that in advance rather than saving it for the report.

Retest expectations

A penetration test report is a snapshot of open paths, and its value is realised when those paths close. Agree before the engagement how fix verification works: whether a retest of remediated findings is included, how long after delivery it can be called on, and whether it produces an updated report you can hand to a customer or auditor. A finding marked fixed by the team that fixed it has not been verified. A finding retested by the person who originally exploited it has, and auditors and enterprise customers increasingly ask for that second kind of assurance.

Settle the report itself at the same time. Ask for reproduction steps detailed enough for your engineers to follow, severity ratings that account for your context rather than a raw scanner score, and an executive summary a non-technical owner can act on. If a sample report is not offered at scoping time, ask for one.

The scoping mistakes that waste an engagement

Most disappointing penetration tests were doomed at scoping, and the patterns repeat closely enough to list. If any of these describes the engagement you are about to sign, fix the scope before the start date.

  • Scoping by asset count with no objective, so effort spreads evenly across systems that do not matter equally
  • Pointing the test at a drifted staging environment and presenting the result as production assurance
  • Excluding the fragile legacy system that is the most likely real entry point
  • Withholding credentials, so the window is spent outside the login page of an application whose risk lives inside it
  • Booking the test so close to an audit or customer deadline that nothing found can be fixed and retested in time
  • Making the scope so broad that every system gets a shallow pass and none gets a determined one
  • Treating the report as the end of the engagement, with no owner, budget or retest planned for remediation

What a good scoping call asks

You can judge a provider by their scoping questions before you ever see a report. A call that only asks how many IP addresses and pages you have is pricing a scan. A useful one asks about your business first and your infrastructure second.

  • What outcome are you most worried about, and what data or capability would an attacker target here?
  • Who uses this system, what roles exist, and can working test accounts be issued for each?
  • Is there a staging environment, and how closely does it track production?
  • What must not break, and are there windows when testing is safer?
  • Who will know the test is running, and do you want your detection exercised or bypassed?
  • What has been tested before, what did it find, and were the fixes verified?
  • Who is the report for (your engineers, your board, a customer, an auditor), and is a retest expected?

The practical takeaway

Answering those questions well costs you a little preparation and shapes everything the engagement returns. The mechanics that follow, how an objective is decomposed into attack paths and how far each one is safely pushed, are the tester's craft and vary with every environment. The scope is the part you control. Write the objective down, decide the environment and the access honestly, put the rules and the retest in writing, and the same block of skilled hours returns answers you can act on.

See what an attacker would find.

Australia-wide, from our Brisbane head office. Someone will contact you as soon as possible.

Open a briefinfo@blackshard.com.au