The challenge
What did the client need?
A SaaS platform provider asked ioSENTRIX to test its customer-facing web application, its APIs and its administrative interfaces.
Engagement details
- Client
- SaaS platform
- Product
- Customer-facing web platform and APIs
- Scope
- Web application, APIs and administrative interfaces
- Findings
- 35+ in total, 4 Critical and 4 High
- Verified
- All findings closed; retested by ioSENTRIX
- Tested by
- ioSENTRIX application security testers
Our approach
How did ioSENTRIX approach it?
Our testers treated each gap as a step rather than a separate finding, then proved the chain end to end: from an anonymous visitor to a working administrator account.
Middle step of the chain: missing tenant checks let any signed-in user read other customers’ records and billing. Also found: time-based SQL injection, stored and reflected cross-site scripting, CSRF, clickjacking and session-handling weaknesses.
What we found
What did ioSENTRIX find?
Three gaps chained into a full takeover, and all are now closed.
CriticalFinding 1
Customer dashboards opened without a login
Account dashboards sat behind predictable URLs with no authentication at all. Changing the number in the URL opened any customer’s account, its data and its admin functions.
Business impact. Anyone on the internet could browse customers’ business data without ever creating an account.
CriticalFinding 2
Unprotected admin APIs let an outsider make themselves an admin
Organisation and user-management APIs answered requests without authentication. They allowed reading organisation data, listing customer groups, changing account status and creating users with elevated privileges.
Business impact. An attacker could take administrative control and change how customers’ accounts operate.
Three Critical gaps, chained from an anonymous visitor to platform admin
One chain · no login to admin · Critical
- 1No logindashboards open
- 2Any accountother customers’ data
- 3Open admin APIadmin user created
Outcome: Full control (of the platform)
The impact
What changed as a result?
We found that an outsider could open customer dashboards without signing in, read other customers’ data with any account, and create privileged users through unprotected admin APIs. The client closed every finding, and ioSENTRIX retested the fixes.
35+
findings across the platform
4
Critical findings, three of them chained
3
steps from no login to admin
How many findings, and how severe?
35+ findings in total, including 4 Critical and 4 High.
- Critical 4
- High 4
- Medium
- Low
- Info
What changed after the test?
- Authentication. Every account URL and API now requires sign-in.
- Authorisation. Server-side tenant and role checks on every resource; IDs are no longer guessable.
- Injection. Parameterised queries throughout, and output encoding against cross-site scripting.
- Sessions. CSRF tokens, session invalidation, security headers and rate limits.
✓ Verification: All closed by the client; retested by ioSENTRIX.