14 scenarios · Applications, identity & cloud

Understand the risk. Know what to check.

A misleading link, a missing permission check or an overly permissive configuration: see how risks can arise in business software and which defences to examine.

Fictional learning examples. The checks describe criteria to test within an authorised scope, not audit results or client incidents.

Accounts & authentication

Phishing: a fake sign-in invitation

An employee receives a sharing invitation that imitates a familiar tool. The link leads to a page designed to capture their credentials.

Defence and verification
Defence to consider
Prefer phishing-resistant authentication such as FIDO2/WebAuthn, and secure account recovery. A temporary code can also be intercepted.
Verification criterion
Using demo accounts, check enforced sign-in methods and recovery procedures without collecting real credentials.

OWASP reference ↗

Brute force: repeated guesses against one account

A portal accepts many sign-in attempts against the same account. Weak passwords make the risk worse.

Defence and verification
Defence to consider
Combine throttling, MFA and monitoring. Preserve legitimate recovery: aggressive lockout can itself be used to block a user.
Verification criterion
On a test account, a bounded number of failures should trigger the agreed protection without disrupting other accounts.

OWASP reference ↗

Reused credentials: credential stuffing

Password reuse exposes a portal when another service is breached. Password spraying instead tries a few common passwords across many accounts.

Defence and verification
Defence to consider
Combine MFA with behavioural monitoring. An IP-only limit does not cover every distributed attack.
Verification criterion
Use synthetic credentials and limited traffic only; check alerts and the team’s response process.

OWASP reference ↗

Account recovery: a link that works twice

An old reset link remains valid after a password change. Reusing it could allow account takeover.

Defence and verification
Defence to consider
Use unpredictable, time-limited, single-use tokens. Avoid revealing account existence in the public response.
Verification criterion
Check that used or expired links fail while a valid recovery flow still works for a dummy account.

OWASP reference ↗

Web applications & APIs

CSRF / XSRF: an action triggered without your intent

An application uses a session cookie. An external page could trigger an email change if the server does not verify the action’s legitimacy.

Defence and verification
Defence to consider
Enable the framework’s anti-CSRF protection for sensitive requests. SameSite adds protection; using POST alone is not enough.
Verification criterion
A change without a valid token should fail while the legitimate form works. CSRF and XSRF name the same risk.

OWASP reference ↗

XSS: a comment treated as code

A support tool displays user comments. Unsafe rendering can turn that content into browser instructions.

Defence and verification
Defence to consider
Encode for the output context; sanitise HTML if it is required. CSP is an additional defence, not a replacement.
Verification criterion
Use harmless markers in an isolated environment to check that text stays text and permitted formatting still works.

OWASP reference ↗

SQL injection: a search changes the query

A search screen builds its query by concatenating user input. Unexpected input can change the data-access logic.

Defence and verification
Defence to consider
Keep SQL structure separate from values using parameters. In .NET, review raw SQL even when an ORM is present.
Verification criterion
On a dummy database, check bound parameters and expected results, including input containing special characters.

OWASP reference ↗

IDOR / BOLA: another customer’s invoice

A signed-in user requests an invoice by ID. Without ownership and organisation checks, the API may return someone else’s document.

Defence and verification
Defence to consider
Check permission for each resource on the server. A hard-to-guess ID does not replace this rule.
Verification criterion
Two dummy users and organisations allow allowed and denied access to be checked. Our .NET lab illustrates this principle.

OWASP reference ↗

View our .NET lab →

JWT: a valid token intended for another API

An API reads a token without checking which service it targets. It may accept an identity in the wrong context.

Defence and verification
Defence to consider
Use a maintained library to verify signature, issuer, audience and validity. Business permissions remain a separate check.
Verification criterion
With a test issuer, reject expired tokens, wrong-audience tokens and tokens from untrusted issuers.

OWASP reference ↗

Cloud, files & CI/CD

SSRF: a URL import reaches an internal service

A feature imports an image from a user-supplied URL. Without restrictions, the server could contact resources not intended for public access.

Defence and verification
Defence to consider
Restrict destinations, protocols and outbound network access. Handle redirects and name resolution explicitly.
Verification criterion
Use mock services: excluded destinations must remain unreachable, including after redirects. No third-party service is contacted.

OWASP reference ↗

Attachments: a document accessible without permission

A customer portal accepts supporting documents. Poor validation or public storage can expose data or introduce unsafe content.

Defence and verification
Defence to consider
Limit types and sizes, inspect content, isolate storage and check download permissions. A filename does not prove its type.
Verification criterion
Using harmless files, check that excluded formats are rejected and another account’s document cannot be read.

OWASP reference ↗

CI/CD: a secret appears in a log

A pipeline prints its full configuration during deployment. A key may become visible to anyone who can read the logs.

Defence and verification
Defence to consider
Revoke or rotate the exposed secret through the agreed process; fix logging and restrict access. Deleting one line is not enough.
Verification criterion
Use a dummy marker to check that sensitive values stay out of output, and review pipeline permissions.

OWASP reference ↗

Azure: an oversized role for one task

A service that only reads one file has permissions across many resources. A compromise would therefore have a wider impact than its normal purpose.

Defence and verification
Defence to consider
Reduce role actions and scope, accounting for inherited permissions. Distinguish resource administration from data access.
Verification criterion
In a dedicated environment, check that the required task succeeds and excluded operations are denied.

Microsoft Learn reference ↗

Dependencies: an alert that needs a decision

An SCA check flags a vulnerable library. The team needs to establish the affected version, how it is used and available upgrade paths.

Defence and verification
Defence to consider
Review the advisory, upgrade to a fixed version and check compatibility. Document an exception rather than hiding an alert.
Verification criterion
Rerun analysis and application tests. Distinguish a verified fix from a temporarily accepted risk.

OWASP reference ↗

Turn a scenario into a useful check

A scenario helps frame the right question; it does not replace a review of your architecture. For each agreed check, we define prerequisites, expected evidence and stop conditions with your team.

Scope the test

Choose the components, dummy accounts and authorised environments. Sign-in tests are volume-limited and never target real users without explicit agreement. A phishing simulation needs its own scope; this page launches no campaign.

Check rejection and normal operation

The forbidden case should be blocked while the legitimate workflow remains usable. Keep evidence minimal: observed behaviour, a redacted excerpt and the tested version, without passwords, real tokens or client data.

Fix, then repeat the check

Keep the regression scenario and record anything not verified. An alert disappearing does not by itself prove a fix. The references above guide the review; they do not constitute OWASP certification.