Case study · SMBs

The lowest-privilege account reads the whole internal admin surface

Black-box external application penetration test, with a low-privilege member account provided mid-engagement. Anonymized.

Engagement
External · Web app · Authenticated
Aligned to
PTES · OWASP
Validated findings
10
Outcome status
Retest on roadmap; not yet performed
Client profile

Who we worked with.

A business-operations SaaS application serving several business clients from one deployment, with a built-in AI assistant.

Anonymized. No client names, people, domains, addresses or locations are published.

The challenge

The question we were asked.

Every employee and every client user gets the same low-privilege role. The central question was simple: what can the least-privileged account actually reach, and does the tenant boundary hold under the hood?

What TitanDef did

Assessment modules used.

Black-box external application penetration test, with a low-privilege member account provided mid-engagement.

Application penetration test

The production application and its API, unauthenticated and authenticated surfaces.

Authorization & tenant boundaries

All authenticated testing as the lowest role the product issues.

Server-side request forgery lane

On a connection health-check.

AI assistant lane

Live prompt-injection and cross-tenant testing against the built-in assistant.

Canary-only destructive tests

Destructive tests run against canary data and reverted.

AI-accelerated, human-validatedA black-box application test on TitanDef's pipeline, powered by frontier AI models. Findings were proven live and human-reviewed, and the controls that held were credited as validated positive controls, including the AI assistant's guardrails.
What we found

Severity, validated.

10 validated findingsThree end-to-end chains · 15 positive controls credited
Critical1
High5
Medium3
Low1
  • CriticalMost internal administrative routes enforced no server-side role check. The lowest-privilege session could read the operator's internal admin surface and write to an internal workflow queue, with no exploit code. Broken function-level authorization, CVSS 9.1.
  • HighFive High findings: a self-approvable quote workflow; a cross-tenant user-directory disclosure; the production backend for all tenants on a single unmanaged machine; one shared database behind every tenant with no isolation; and a blind server-side request forgery.
Outcome

What changed.

The direct exposure closes with a mechanical fix: apply the role guard the codebase already enforces elsewhere to every internal route. The blast radius closes by moving the backend onto managed, per-tenant-isolated infrastructure. Fifteen validated positive controls were credited, including five guardrail controls on the AI assistant that held on every probe.

Immediate

Extend the existing admin-role guard to every internal route; enforce maker-checker on the approval workflow.

30–90 days

Move the backend onto managed, per-tenant-isolated compute; add an authorization regression test.

Retest

Re-verify each remediation and re-run the authorization regression suite.

In the report
“there is no “regular user” tier that is actually contained.”Most significant observation, application penetration test report
Deliverables

What the client received.

  • Validated findings, proven live and human-reviewed
  • Three end-to-end attack chains
  • Fifteen credited positive controls, five on the AI assistant
  • Remediation roadmap: immediate, 30–90 days, retest
  • Full re-verification and authorization regression suite as closing step

Prepared by TitanDef offensive security team

Engage

Find out what an adversary already sees.

Focused engagements run 5 to 7 business days, with a 72-hour first-findings commitment. Powered by frontier AI models; every finding validated by a senior human.