
What's the best use of a pen tester's valuable time?
Penetration testing is expensive—running from $20,000 to $100,000+, depending on scope—and it should be. Skilled pen testers bring creativity, intuition, and adversarial thinking that's genuinely valuable. What shouldn't be expensive is watching those same pen testers spend the majority of an engagement systematically checking whether User A can access User B's data across dozens of endpoints.
And don't get me wrong. Authorization flaws like BOLA and BFLA are critical findings; they're responsible for roughly a third of API breaches. But the testing itself is methodical. Repeatable. User A creates a resource, User B tries to access it, checks the response. Repeat.
The findings that keep me up at night aren't the ones that follow patterns—they're the ones that don't. Complex multi-step attack chains exploiting subtle timing windows. Business logic flaws unique to your specific workflow. Attack vectors require a deep understanding of your technology stack and business context. That's where pen testers earn their rates.
AI-assisted pen testing is getting better fast, but it's not yet a replacement for human creativity on complex attack chains. What it absolutely shouldn't be doing—same as human testers—is grinding through systematic authorization checks that follow predictable patterns.
The Authorization Automation Challenge
Historically, business logic testing has been hard to automate because it's extremely context and business-dependent. Understanding payment flows, order states, user hierarchies—these require knowledge of how your specific application works.
But authorization boundary testing is different. The patterns are consistent across applications: can this user access that user's resource? Can a non-admin perform admin functions? The business context matters for understanding what resources exist, but the testing methodology is universal.
The real blocker was technical. Authorization testing requires runtime validation—you can't prove "can User A access User B's data" by looking at code. You have to authenticate as both users and actually try it. Static analysis tools catch valuable issues early, but they can't validate that authorization works correctly at runtime. They flag suspicious patterns; they don't prove exploitability.
Traditional DAST tools couldn't help either. They tested with a single authenticated session, making authorization boundary testing impossible. You can't check whether User A can access User B's resources when you only have one user.
That left manual pen testing as the only option—and that's where we've been stuck.
What's Changed
That single-user limitation is gone. Modern dynamic testing can configure multiple user profiles with different authorization levels, coordinate test sequences across those profiles, and verify authorization boundaries hold—automatically.
The test logic follows the same patterns pentesters use, making requests and validating responses. But here's what separates effective automation from security theater: you can only test what you know exists.
Authorization testing depends on complete, accurate API specifications. Most approaches rely on observing network traffic or scanning production environments—which means you're only discovering APIs after they're deployed and exposed. Shadow APIs, new endpoints, internal services that haven't seen traffic yet? Invisible.
The better approach starts at the source: code. When API discovery is based on source code analysis, your specs stay current as code changes. Every endpoint exists in your testing inventory before it ever reaches production. No traffic required, no gaps from endpoints that haven't been hit yet.
That foundation—complete visibility into what actually exists—is what makes automated authorization testing trustworthy. Without it, you're systematically testing an incomplete picture.
The Payoff
Better coverage. Automated testing runs as often as you need, testing every endpoint against every authorization boundary. Manual pen testers work within time constraints—they can't test every combination during a three-week engagement.
Reduced costs. When systematic authorization testing happens in CI/CD, pentesting engagements focus on higher-value work. You're not paying premium rates for automatable tasks.
Continuous validation. Authorization rules change. Endpoints get added. But manual pentests happen on an ad hoc basis. Automated testing validates as continuously as you need it to.
Maximized manual test value. When pen testers and internal teams aren't spending a third of their time on authorization checks, they can focus on more complex attack scenarios and creative exploit research that genuinely requires human insight.
The Bottom Line
The principle is straightforward: automate what can be automated so humans can focus on more complex risks. But the key to automating business logic flaws like authorization testing is complete API visibility rooted in source code—not traffic patterns or production scans that miss what hasn't been hit yet.
When that foundation is in place, authorization testing is comprehensive and automatic. And your pen testing budget goes where it belongs: on the creative, complex work that actually requires human intuition.