{"id":"CYB-11067","slug":"how-to-scope-a-penetration-test","title":"How to scope a penetration test: targets, test windows, exclusions and contacts","excerpt":"A practical guide to scoping a penetration test: which targets to list, when testing may run, what stays out of bounds, who to call in an emergency and what the testers need before day one.","kind":"Guide","searchIntent":"implementation","category":"cybersecurity","tags":["penetration testing","test scoping","rules of engagement","security testing","application security"],"seoKeywords":["how to scope a penetration test","penetration test scope","pen test scoping checklist","penetration test exclusions","penetration test test window"],"authorId":"edilec-engineering","publishedAt":"2026-10-13","updatedAt":"2026-10-13","readingTime":"6 min","image":"/social-images/blog/edilec-photo-cyb-11067-b1f7274a9216.jpg","status":"published","sourceCredits":[{"title":"OWASP Web Security Testing Guide","url":"https://owasp.org/www-project-web-security-testing-guide/","author":"OWASP Foundation"},{"title":"SP 800-115: Technical Guide to Information Security Testing and Assessment","url":"https://csrc.nist.gov/pubs/sp/800/115/final","author":"National Institute of Standards and Technology"},{"title":"OWASP Mobile Application Security Testing Guide","url":"https://mas.owasp.org/MASTG/","author":"OWASP Foundation"}],"body":[{"type":"paragraph","text":"A penetration test is only as good as its scope. Scoping decides which systems are tested, when the testing may run, what must not be touched, who answers the phone if something looks wrong, and what the testers need to start. A clear scope protects your live operations, keeps the testers inside the law and makes the final report useful, because every finding maps to something you asked to have tested."},{"type":"paragraph","text":"At Edilec, scoping is the first of five steps in every engagement, followed by written authorization, testing, reporting and retesting. Nothing is tested until the scope is agreed and signed. This guide walks through the questions we ask, so you can prepare the answers before the first call."},{"type":"image","src":"/social-images/blog/edilec-photo-cyb-11067-b1f7274a9216.jpg","alt":"Hands placing coloured tabs along a printed list on a wooden table, beside a closed laptop and a hardware security key.","caption":"Scoping a penetration test means marking exactly which systems are in bounds before testing begins.","width":1200,"height":750},{"type":"heading","id":"start-with-the-question","depth":2,"text":"Start with the question you need answered"},{"type":"paragraph","text":"The most useful scopes start from a decision, not a list of hosts. \"Can a customer see another customer's records?\", \"Can our new payments integration be abused?\" and \"Can a vendor account reach our internal network?\" each lead to a different scope, a different method and a different report. Write down the question first, then the systems that answer it."},{"type":"list","items":["A release question: is the new app, API or feature safe to launch?","An assurance question: will our controls hold up for a customer, auditor or regulator who asks for evidence?","A change question: did a migration, new vendor or new cloud setup open a path that was closed before?","A detection question: would our team notice and respond to a realistic attack? (This one usually points to a red team exercise rather than a penetration test.)"]},{"type":"heading","id":"list-the-targets","depth":2,"text":"List the targets precisely"},{"type":"paragraph","text":"Targets must be specific enough that a tester can tell, without guessing, whether a request is in scope. Vague targets such as \"our website\" lead to either gaps or accidental testing of systems you do not own."},{"type":"table","columns":["Target type","What to list","What testers also need"],"rows":[["Web applications","Exact URLs and environments (production, staging)","Test accounts for each role, and any features that send real emails or payments"],["APIs","Base URLs, versions and the API documentation or collection","Tokens or keys for test clients, with rate limits you expect"],["Mobile apps","App store builds or test builds for Android and iOS","The backend APIs the app calls, and test accounts"],["Cloud","Accounts, subscriptions or projects in AWS, Azure, Google Cloud or a private cloud","Read-only access for configuration review, and which services may be actively tested"],["Networks","External IP ranges and internal segments","Confirmation that each range belongs to you or that its owner has authorized testing"],["Identity","Sign-in, single sign-on, MFA and account recovery flows","Accounts in each role, including a low-privilege starting account if escalation is in scope"]]},{"type":"callout","tone":"warning","title":"Only systems you own or are authorized to have tested","text":"Shared hosting, third-party SaaS and payment providers often have their own testing rules. If a target is run by someone else, their written permission is part of the scope, or the target stays out."},{"type":"heading","id":"set-test-windows","depth":2,"text":"Set test windows and pace"},{"type":"paragraph","text":"Test windows say when testing may happen and how hard the testers may push. Business-hours testing makes it easier to reach people if something looks wrong; out-of-hours testing reduces the impact on customers. Many engagements use both: lighter checks during the day, heavier automated scanning in an agreed quiet window."},{"type":"list","items":["Dates and hours for testing, with time zones written out.","Freeze periods: sales campaigns, month-end close, releases or audits when testing must pause.","Rate limits for automated tools on fragile or shared systems.","How to pause and resume testing if your team asks."]},{"type":"heading","id":"agree-exclusions","depth":2,"text":"Agree exclusions in writing"},{"type":"paragraph","text":"Exclusions protect systems that must not be touched and techniques that are not wanted. At Edilec, destructive attacks, ransomware and safety-critical systems are always excluded. Everything else is decided per engagement."},{"type":"list","items":["Systems: core infrastructure, devices or third-party services that are out of bounds.","Techniques: denial of service, social engineering and phishing, physical access. Phishing simulation is included only when you ask for it and approve it in writing.","Data: what testers may view to prove a finding, and what they must never download or keep.","Accounts: real customer or staff accounts that must not be used; testers work with dedicated test accounts and synthetic data."]},{"type":"heading","id":"name-the-contacts","depth":2,"text":"Name the contacts and the escalation path"},{"type":"paragraph","text":"Every scope names who to call. A tester who finds a critical weakness, sees signs of a real attacker or affects a live service needs a person who answers, not a shared inbox. At Edilec, critical findings go to your named contact immediately, not at the end of the engagement."},{"type":"table","columns":["Contact","Why they are needed"],"rows":[["Technical owner","Answers questions about the systems and approves changes to the plan"],["Emergency contact","Reachable during test windows to pause testing or handle an incident"],["Security or risk lead","Receives critical findings straight away and decides on urgent fixes"],["Hosting or cloud provider contact","Needed when the provider must be told or must approve testing"]]},{"type":"heading","id":"choose-the-method","depth":2,"text":"Choose the method and the depth"},{"type":"paragraph","text":"The method follows the question. We work from the [OWASP Web Security Testing Guide](https://owasp.org/www-project-web-security-testing-guide/) and the OWASP mobile guide for applications, the Penetration Testing Execution Standard (PTES) and NIST SP 800-115 for the overall approach, and MITRE ATT&CK for red team activity. The scope should state whether testing is black box (no inside knowledge), grey box (accounts and documentation) or white box (source code access as well). Grey box usually finds more in the same time, because testers spend less effort discovering what you could simply tell them."},{"type":"heading","id":"scope-checklist","depth":2,"text":"A scoping checklist"},{"type":"list","items":["The question the test must answer, in one sentence.","Every target, by URL, IP range, account or app build.","Test accounts for each role, and the test data to use.","Test windows, freeze periods and rate limits.","Written exclusions for systems, techniques and data.","Named technical, emergency and security contacts.","Third-party permissions for anything you do not run yourself.","How findings will be reported, and how retesting works under your contract."]},{"type":"paragraph","text":"When the scope is agreed, it goes into a signed rules-of-engagement document and an authorization letter. That is the subject of the next guide, [Rules of engagement and authorization letters](/blog/cyb-11068/penetration-test-rules-of-engagement-authorization-letter/). If you would like help scoping a test, see [Penetration Testing and Red Team Services](/services/penetration-testing/)."},{"type":"image","src":"/attachments/article-media/editorial/edilec-pentest-scoping-checklist.svg","alt":"Six-step Edilec diagram for scoping a penetration test: name the question, list the targets, set test windows, agree exclusions, name contacts and choose the method.","caption":"A clear scope names every target, test window, exclusion and contact before the first test runs."}],"relatedArticleIds":["CYB-11068","CYB-11069","CYB-11070","CYB-11005"],"faqs":["FAQ-SEC-PT-002","FAQ-SEC-PT-006"],"researchSources":[{"title":"OWASP Web Security Testing Guide","url":"https://owasp.org/www-project-web-security-testing-guide/","author":"OWASP Foundation"},{"title":"SP 800-115: Technical Guide to Information Security Testing and Assessment","url":"https://csrc.nist.gov/pubs/sp/800/115/final","author":"National Institute of Standards and Technology"},{"title":"OWASP Mobile Application Security Testing Guide","url":"https://mas.owasp.org/MASTG/","author":"OWASP Foundation"}],"mediaAssets":[],"relatedIds":["CYB-11068","CYB-11069","CYB-11070","CYB-11005"]}