Skip to content

Penetration testing

Web application testing that tries the second account.

Most web application findings that matter are access control findings, and you cannot find those with one login. They appear when a tester holds two accounts and asks whether account A can reach account B's data.

CyberArc tests web applications under written authorization, with real credentials for the roles that exist in your product.

Why the test needs more than one account

Broken access control is the first category on the OWASP Top 10:2025 list, and it is structurally invisible to single-account testing. A scanner logged in as one user sees a working application; it has nothing to compare against.

Give a tester an admin, a regular user and a second tenant and the questions become concrete: can the regular user call the admin endpoint directly, can tenant one load tenant two's object by changing an identifier, does the server re-check the role or does it trust what the front end sent.

What the test covers

The surface is the whole authenticated application, not just the login page. Scope is written down first, including which environments may be touched and which data may be created.

  • Authentication: credential handling, password reset, multi-factor bypass paths, session fixation and invalidation
  • Authorization: role boundaries, object-level access control, tenant isolation, direct endpoint access
  • Input handling: injection into queries, templates, commands and rendered output
  • Business logic: workflows that can be re-ordered, replayed, skipped or run with values the UI would not allow
  • Configuration: headers, cookie attributes, exposed debug surfaces, verbose errors
  • Dependencies: known-vulnerable components reachable from the application

Staging or production

Testing a staging environment is safer and tells you less, because staging is rarely configured like production. Testing production is accurate and needs tighter rules of engagement.

Either is workable. What is not workable is testing staging and reporting it as production assurance, so the report states which environment was tested and names the configuration differences you told us about.

What arrives in the report

Each finding carries the request that produced it, the account it was sent from, what it returned, and the fix. That is the level of detail a developer needs to reproduce an issue without a meeting.

Questions

What is web application penetration testing?
Authorized testing of a web application to find the weaknesses an attacker could use: broken access control between accounts and roles, authentication flaws, injection, business logic abuse and insecure configuration. Scope is written and signed before testing starts.
How many user accounts do you need for the test?
At minimum one per role that exists in the product, plus a second account at the lowest privilege level. The second low-privilege account is what makes horizontal access control testing possible at all.
Can you test against staging instead of production?
Yes, and the report will say that is what was tested. Staging results carry less assurance because configuration usually differs, so the report names the differences you disclose to us rather than implying production coverage.

Sources

Standards and legislation are quoted from the sources above and change over time. Read the primary source before relying on it. Nothing on this page is legal advice.

Next step

Start with a scoping call.

Tell us what you need tested. Before any testing begins, the scope is written down and the agreement and rules of engagement are signed.

Book a scoping call