Contract upgrade authority can be bypassed
An actor outside the upgrade policy can change a proxy’s execution target or equivalent privileged configuration.
Candidate CWE: CWE-862
Test hypothesis#
Compare authorized and ordinary local actors invoking the actual upgrade path, using a benign compatible implementation that emits a local marker. Inspect the effective implementation and authority checks.
Evidence required#
Exact proxy family, authorization path, implementation state before/after and harmless proof that execution follows the new target.
Rule out false positives#
A configured owner performing an intended upgrade is not an authorization bypass; role-compromise assumptions must be disclosed.
Playbook and command references#
- Contract state: authorization, callbacks and accounting — Turn protocol promises into explicit invariants and test realistic local operation sequences with independent accounting.
- Object, function, and property authorization — Turn identities, tenants, objects, roles, and lifecycle transitions into a reproducible permission matrix.
Find the associated command snippets
Referenced by these target playbooks#
Report checklist#
- Capture the affected version, configuration, identities, and object ownership.
- Preserve a valid baseline and a negative control.
- Reproduce the forbidden data access, action, or state change on controlled fixtures.
- Explain the intended security rule and why the observed behavior violates it.
- State prerequisites, uncertainty, cleanup, and the smallest demonstrated impact.
Conditional ATT&CK mapping#
No direct ATT&CK mapping selected. Record the weakness and demonstrated impact without forcing an adversary-behavior classification. See the mapping guide.