-
Notifications
You must be signed in to change notification settings - Fork 0
Logbook July 2026
Week of Jul 6 — A security hole surfaced in the migration path: the
Migratingmint let anyone forge a genuine state token for any cage's asset name andSweepits contributor deposits. The week was spent closing it — spec, plan, and tasks on Tuesday, then a two-commit fix merged Wednesday that parameterizes thestatevalidator with apreviousPoliciesallowlist and rewritesvalidateMigrationto prove provenance through four ordered guards: allowlistedoldPolicy, a spent predecessor input carrying it, owner authorization, and full field-preservation of the migratedState. Amigrate_forged_token_cannot_sweepregression and a live devnet gate confirm the exploit is closed and the off-chain hash still matches the newly parameterized script.
Issue: #76
- Opened fix(76): authenticate migration provenance to stop cage-token forgery #96 — spec, plan, and tasks for closing the
Migratingmint-path token-forgery hole
Issue: #76
- Merged fix(76): authenticate migration provenance to stop cage-token forgery #96 — the
Migratingmint path could forge a genuine state token for any cage's asset name andSweepits contributor deposits; the fix parameterizes thestatevalidator with an immutablepreviousPoliciesallowlist and rewritesvalidateMigrationto prove provenance via four ordered guards (allowlistedoldPolicy, a spent predecessor input carrying it, owner authorization, full field-preservation of the migratedState). Off-chain addsapplyPreviousPoliciesand applies the empty genesis allowlist socfgScriptHashstill matches the on-chain script; amigrate_forged_token_cannot_sweepregression plus a livecage-tests-e2edevnet gate (6 examples, 0 failures) confirm the exploit is closed and the applied hash matches