Skip to content

docs: scan #112 — fossasia/voxbento (0 first-party, Starlette currency on the login path) - #162

Merged
elfrost merged 2 commits into
mainfrom
daily/2026-09-28-fossasia-voxbento
Sep 28, 2026
Merged

elfrost merged 2 commits into
mainfrom
daily/2026-09-28-fossasia-voxbento

Conversation

@elfrost

@elfrost elfrost commented Sep 28, 2026

Copy link
Copy Markdown
Owner

Summary

  • New post docs/scans/fossasia-voxbento.md: 168 findings at medium+, 0 first-party defects after curation. Post-only; nothing filed upstream (quality gate not met).
  • Index row, scan-log entry, and scan counters bumped to 112 (index.md, scan-log.md, fixed.md, work-with-me.md).
  • corpus/verdicts/fossasia-voxbento.json: 31 curation rows + 8 scanner rows, validated with run_verdict_check.py --check (exit 0).
  • treg post gets its forward pointer (and the resolved counter it shows is brought to 26).

Curation in one line each

  • 50 gitleaks: one CI-only key counted 49× (quoted across docs/plans/) + an empty .env.example value.
  • 45 semgrep django-no-csrf-token: FastAPI app with HttpOnly + SameSite=Lax auth cookies, POST/DELETE admin writes, double-submit token on the developer dashboard.
  • 39 trivy in website/package-lock.json: Docusaurus build chain, static output, never imported by the portal.
  • 1 actionable: starlette 1.1.0 → 1.3.1 (CVE-2026-54283), transitive, reachable on unauthenticated /register and /login.

The post states its scope explicitly: every tool finding is accounted for, but the OAuth2 provider, API-key platform and WebSocket layer were not swept by hand in this run.

🤖 Generated with Claude Code

elfrost and others added 2 commits September 28, 2026 09:21
…y on the login path)

168 findings at medium+ (83 high, 82 medium, 3 meta), 0 first-party defects after
curation. Post-only: the quality gate for filing upstream was not met.

Two families explain most of the count. Semgrep's django-no-csrf-token fired 45
times on a FastAPI app's Jinja templates, where the auth cookies are HttpOnly +
SameSite=Lax, admin writes are POST/DELETE and the developer dashboard adds a
double-submit token. Gitleaks counted one CI-only encryption key 49 times because
17 files under docs/plans/ quote the test workflow.

The one actionable item is starlette 1.1.0 -> 1.3.1 (CVE-2026-54283), transitive
via fastapi and reachable on the unauthenticated /register and /login routes;
39 of 45 Trivy advisories are the Docusaurus docs site's build chain. Credited:
the startup guard that refuses the compose file's change-me fallback outside
debug, and MultiFernet rotation for stored provider keys.

The post states its scope: every tool finding is accounted for, but the OAuth2
provider, API-key platform and WebSocket layer were not swept by hand this run.

verdicts.json validated (exit 0) and copied to corpus/. Also adds the treg post's
forward pointer and bumps the scan counters to 112.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Each item in the post's "Notes on the tool" maps to a roadmap entry:
the framework-applicability check gains the django-no-csrf-token-on-FastAPI
instance, and two new items cover Gitleaks secret-fingerprint dedupe and
partial-coverage advice keyed on the Semgrep error type.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@elfrost
elfrost merged commit b82aaee into main Sep 28, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant