Public API routes explicitly include story/search/news content that may be fed into LLM context (possible indirect data leakage)
Finding pentest-2026-06-12-003 · fff1920d51b8 · discovered by pentest-2026-06-12-controlled-44-3287b226
- Target
- mbarbine/platphormnews-www-prod
- Target URL
- https://platphormnews.com
- Run status
- completed · api-multi-model
- Framework
- llm-pipeline
- Priority score
- 0.0700
- Reachability
- model_assessed_from_passive_recon
- Chain depth
- 2
- PoC available
- no
- Asset
- not recorded
- Discovered
- Jun 12, 2026, 08:45 PM
Description
The public API includes endpoints for aggregated stories, comments, discussion metadata, and search (/api/v1/stories, /api/v1/stories/{id}/comments, /api/v1/search, /api/v1/hn/item/*, etc.). In an LLM inference pipeline, these endpoints can become “context ingestion” sources. If any upstream pipeline mistakenly merges protected/internal metadata with public content (e.g., internal route compliance details, tool credentials, or traces), an LLM could reproduce it in its output. The provided evidence shows public boundaries and disallows token/key/secret query parameters in robots.txt, but it does not show that the LLM integration is protected from context-mixing at inference time.
Validation
Validation stage failed; finding is pending operator review.
Remediation
At the boundary between retrieval and generation: (1) maintain strict schema/field-level allowlists so only intended public fields are inserted into the LLM prompt; (2) explicitly strip tracing/headers/cookies and any internal metadata from the prompt context; (3) add logging/telemetry to detect whether any protected-looking strings (keys/tokens/secrets/Authorization) are present in prompts or generation outputs; (4) include regression tests for context-window leakage (ensure model outputs never include internal system prompts/tool instructions).
Evidence Boundary
This page shows persisted finding evidence, validator rationale, target context, and run linkage. Raw prompts, raw target responses, provider payloads, secrets, cookies, and authorization headers are not rendered publicly. Use the linked run page for class execution evidence, run logs, cost events, and pipeline errors.