Reporting and Evidence

June 3, 2026 ยท View on GitHub

PTK can generate useful raw evidence, but the final report should explain impact, exploitability, and remediation in terms the target owner can act on.

Evidence Checklist

For each finding, collect:

  • affected URL, route, endpoint, or page
  • user role and authentication state
  • exact request and parameter, when applicable
  • payload or changed value
  • response status, body excerpt, redirect, or runtime behavior
  • screenshots only when they add clarity
  • PTK finding details and engine
  • SAST code reference or IAST source/sink evidence when relevant
  • reproducible steps
  • expected vs actual behavior
  • remediation guidance

Redact:

  • passwords
  • session cookies
  • JWT signatures and sensitive claims
  • API keys
  • personal data
  • private tenant/customer identifiers

Triage Rules

Use these rules before reporting:

  • Merge duplicate evidence into one finding when the root cause is the same.
  • Do not inflate severity because many routes show the same weakness.
  • Do not report passive/header findings without explaining application impact.
  • For SCA, verify reachability and usage before assigning high severity.
  • For SAST, pair risky code with runtime reachability when possible.
  • For IAST, prove the source is attacker-controllable and the sink is meaningful.
  • For DAST, prove the payload changed behavior in a security-relevant way.

Report Structure

Use this structure for most findings:

# [Severity] Finding title

## Summary

One or two sentences describing the weakness and affected component.

## Affected Asset

- URL:
- Endpoint:
- User role:
- Environment:

## Impact

Explain what an attacker can do and what business/security risk follows.

## Steps to Reproduce

1. Sign in as ...
2. Navigate to ...
3. Send or perform ...
4. Observe ...

## Evidence

Include request/response snippets, runtime evidence, PTK engine evidence, or code references.

## Root Cause

Explain why the issue exists.

## Recommendation

Provide specific remediation steps.

## Retest Steps

Explain how to verify the fix.

JWT Finding Template

# JWT validation weakness

## Token Location

- Header/cookie/storage:
- Affected endpoint:

## Original Claims

```json
{
  "sub": "...",
  "role": "..."
}
```

## Test Performed

Describe the changed header, claims, signature, carrier, or validation assumption.

## Result

Explain what the server accepted or rejected.

## Impact

Describe privilege, impersonation, auth bypass, or session risk.

## Recommendation

Validate signature, algorithm, issuer, audience, expiry, key source, and carrier consistently.

DOM XSS / IAST Finding Template

# DOM XSS through unsafe client-side sink

## Affected Page

- URL:
- Route:

## Source

URL/hash/storage/cookie/message/form/API response.

## Sink

Dangerous API, for example `innerHTML`, script creation, navigation assignment, or `eval`.

## Runtime Evidence

Describe PTK IAST evidence and the manual trigger.

## Impact

Explain attacker control and victim interaction.

## Recommendation

Use safe DOM APIs, contextual output encoding, sanitization, and Trusted Types where appropriate.

SCA Finding Template

# Vulnerable client-side component

## Component

- Name:
- Version:
- Loaded from:

## Affected Pages

List pages where PTK observed the component.

## Vulnerability

Reference CVE/advisory and affected feature.

## Application Impact

Explain whether the vulnerable feature is reachable in this app.

## Recommendation

Upgrade, remove, isolate, or mitigate the component.

Export Handling

When exporting PTK results:

  • store artifacts outside the repository
  • keep engagement artifacts separate per target/client
  • encrypt sensitive evidence when required
  • do not commit scan exports, browser profiles, cookies, or traces
  • include only the minimum evidence needed in the final report