Fundamentals
Penetration testing vs vulnerability scanning
Published Updated 5 min read
The short answer
Vulnerability scanning is automated software checking your systems against known weaknesses, while penetration testing is a skilled person actively trying to exploit them and proving what an attacker could reach. Scanning is cheap, frequent and broad; penetration testing is slower and deeper, and finds the logic flaws and chained attacks that scanners cannot. Most organizations need both, at different frequencies.
How do they compare side by side?
| Vulnerability scanning | Penetration testing | |
|---|---|---|
| Who does it | Software, configured by your team or a provider | Human testers, supported by tools |
| Question answered | Which known weaknesses might exist here? | What can an attacker actually do here? |
| Frequency | Continuous, daily, weekly or monthly | Periodic (often yearly or per major release) or continuous |
| Breadth | Very wide: thousands of hosts or URLs | Narrower: a defined scope |
| Depth | Surface signatures and version checks | Exploitation, chaining, business logic |
| False positives | Common; results need triage | Low; findings are proven before reporting |
| Business logic flaws | Rarely detected | A core focus |
| Cost per run | Low, often included in tooling | Higher, driven by tester time |
| Typical output | A long list ranked by CVSS score | A prioritized report with evidence and fixes |
Neither is a weaker version of the other. They answer different questions, and the right mix depends on how much your systems change and what is at stake.
What are vulnerability scanners good at?
A vulnerability scanner compares what it can see (software versions, open ports, configuration, responses to crafted inputs) with a database of known issues, usually identified by CVE number. OWASP describes dynamic application scanners (DAST) as automated tools that scan web applications from the outside for issues like cross-site scripting, SQL injection and insecure server configuration.
- Coverage at scale. A scanner can check every internet-facing host you own every night.
- Known, unpatched software. If a published vulnerability affects a version you run, a scanner is the fastest way to find out.
- Configuration drift. Expired certificates, newly opened ports, weak TLS settings.
- Regression in CI. Scanners and SAST tools catch common mistakes before they ship.
Free options exist too. In the US, the Cybersecurity and Infrastructure Security Agency (CISA) offers no-cost external vulnerability scanning to eligible government and critical infrastructure organizations, with weekly reports.
What do scanners miss?
A scanner does not know what your application is supposed to do, so it cannot tell when it does something it should not. The highest-impact issues in modern applications tend to fall in that gap:
- Broken access control. User A requesting user B's invoice by changing an ID (IDOR or BOLA) looks like a perfectly normal request to a scanner. Broken access control is ranked first in the OWASP Top 10:2025.
- Business logic abuse. Applying a discount twice, skipping a payment step, or approving your own request.
- Chained attacks. Three low-severity findings that together reach an admin account. Scanners score each one in isolation.
- Authentication and session flaws that only appear across multi-step flows, single sign-on or role changes.
- Context. A scanner cannot tell you that one medium finding exposes your entire customer table while another is harmless.
Scanners also produce false positives, which cost engineering time to triage. A penetration test removes those by proving each finding before it is reported.
When is a vulnerability scanner enough?
Be honest about this: sometimes a scanner is the right purchase and a penetration test would be overkill.
- You run mostly off-the-shelf software and a marketing site, with no custom application holding sensitive data.
- Your main risk is unpatched, internet-facing infrastructure and you have not yet built a patching routine. Fix the basics first; a pentest will mostly report what a scan would have.
- You need a compliance control that specifically calls for scanning, such as the PCI DSS quarterly scans in Requirement 11.3.
- You are tracking known issues between periodic tests.
When do you need a penetration test?
- You build your own application or API, especially one with multiple users, tenants or roles.
- You hold customer data, payment data, health data or credentials for other systems.
- A customer, auditor or regulation asks for one. PCI DSS v4.0.1 requires penetration testing at least every 12 months and after significant change (Requirement 11.4), separately from its scanning requirement.
- You have shipped a major change: new authentication, a new permissions model, a cloud migration.
- You want to know whether your scanning and patching actually work. The NCSC suggests a pentest should include an opinion on the accuracy of your own vulnerability assessment.
What does each find on the same application?
Picture a typical multi-tenant software product: a web app, an API behind it, an admin console and a cloud storage bucket for uploads. Run both approaches against it and the results usually look different in kind, not just in number.
- The scanner reports an outdated JavaScript library, a missing security header, a TLS setting to tighten and a handful of informational items. All useful, all quick to fix, mostly low or medium severity.
- The penetration tester may report fewer items, but of a different type: an API endpoint that lets one tenant list another tenant's users, an admin function reachable by a normal user who knows the URL, and upload links that never expire. Each comes with proof of the data that was reachable.
The scanner's list is about hygiene. The tester's list is about what a determined attacker would actually do with your product. You want both lists, but only one of them answers the question your customers and board are really asking.
How should the two work together?
Treat scanning as the always-on baseline and penetration testing as the depth check. Run scans continuously, fix what they find, and then let testers spend their limited time on what scanners cannot see. Sharing recent scan results with testers before an engagement avoids paying people to rediscover known issues.
For applications that change every week, the gap between annual tests can be long. That is the case for continuous penetration testing, which keeps human-proven or agent-proven exploitation running between formal tests.
How Brexa approaches this
Brexa's work sits on the penetration testing side of this line: findings are reported only after a human operator reproduces them, and fixes are retested before a finding closes. Brexa works alongside your existing scanning and security provider rather than replacing them. See how it works.
Frequently asked questions
Is a DAST scan a penetration test?
No. A dynamic application security testing scan is automated and checks for known patterns. A penetration test may use DAST tools, but adds human exploitation, chaining and business logic testing.
Can I pass an audit with only vulnerability scans?
It depends on the framework. PCI DSS requires both scanning and penetration testing. SOC 2 and ISO 27001 do not strictly require a pentest, but auditors and customers often expect one as evidence.
Why does my scanner report so many issues that do not matter?
Scanners infer vulnerability from signals such as version numbers and cannot always confirm exploitability or context. Triage, or a test that proves each finding, separates real risk from noise.
Sources
- OWASP: Vulnerability Scanning Tools
- OWASP Top 10:2025
- UK National Cyber Security Centre (NCSC): Penetration testing guidance
- CISA Cyber Hygiene Services: Vulnerability Scanning
- PCI Security Standards Council: PCI DSS v4.0.1 published
- NIST SP 800-115, Technical Guide to Information Security Testing and Assessment
Written and reviewed by the Brexa team. Educational information, not legal or compliance advice. See our editorial policy.
Keep reading
Find out what an attacker could do with your systems.
Book a short scoping call. Nothing is tested until scope and rules of engagement are signed, and every finding comes with proof.