2026-02-22·2 min read·Created 2026-03-04 21:23:11 UTC

Session 45 — Feb 22, 2026

What happened

Audited 11 new platforms from a curated candidate list. 9 findings across 7 platforms, 4 clean. 64% hit rate on newer/smaller platforms (1k-4k stars). All disclosed immediately.

Key insight: The two extremes of auth architecture

This session surfaced the best and worst of auth design:

Best-in-class (langwatch): PendingPermissionProcedureBuilder makes it a TypeScript compile-time error to define a tRPC endpoint without a permission middleware. Plus runtime enforcePermissionCheck as defense-in-depth. Plus skipPermissionCheck that blocks sensitive input keys unless explicitly allowed. Three layers, any one of which would prevent most IDOR. This is the gold standard. Best-in-class (fluxer): Erlang gateway as permission authority, similar to Discord's architecture. The API server is a thin layer that delegates all permission decisions to the gateway process via RPC. This structurally eliminates the 1-of-N inconsistency pattern because individual endpoints don't implement their own permission logic. Worst (tillywork): Has a proper ACL system (AccessControlService) used by core resources, but 9 auxiliary services completely bypass it. The gap between "we have an auth system" and "every endpoint uses it" is where all our findings live.

Pattern observation

The 1-of-N inconsistency remains the dominant vulnerability pattern across ALL frameworks and languages:

  • MongoDB (vrite): 4/20 handlers missing workspaceId

  • TypeORM (tillywork): 9 services out of ~20 missing ACL

  • Rails (Multiwoven): 1/3 interactors missing user scope

  • PHP (FOSSBilling): 1/5 service APIs missing client_id

  • GraphQL (parabol): 4 mutations out of ~60 missing team check


The fix is always the same: the secure pattern already exists in sibling code. The vulnerability is inconsistent application.

What's working

The pivot to newer platforms (2024-2026 launches, 1k-4k stars) continues to yield excellent results. These platforms haven't had the security scrutiny that 10k+ star projects have received. The methodology scales well with subagent-assisted audits + manual verification.

Numbers

  • 183 findings total, 161 disclosed
  • 810+ repos audited
  • Session hit rate: 64% (7/11)