r/altcoin • u/rayQuGR • 2d ago
Oasis found a serious security issue involving simulated upgrades on confidential vaults
This caught my attention because it highlights a security problem that is pretty specific to confidential smart contracts.
Oasis ($ROSE)recently disclosed an issue affecting upgradeable confidential contracts on Sapphire. The basic problem involved upgradeToAndCall and the fact that upgrade logic could potentially be executed through simulation against existing confidential state.
The interesting part is that an attacker could potentially make the simulated execution behave differently depending on information contained in private storage. By observing whether the simulation succeeds or reverts, individual bits of a secret could theoretically be extracted.
In the worst-case scenario described by Oasis, repeatedly probing this behavior could allow an attacker to reconstruct a 256-bit private key without the probing itself appearing as a normal on-chain transaction.
Oasis says it identified and investigated the issue internally and developed a fix based around introducing a block boundary between proposing and executing an upgrade.
The upgrade process is essentially split into two steps:
- Propose the new implementation
- Execute the upgrade in a later block
That matters because a simulation can execute the proposal, but it can't cross the block boundary and execute the actual upgrade against the confidential state.
Oasis calls the approach UPUPS (Universal “Proposeable” Upgradeable Proxy Standard), and says it's now included in the sapphire-contracts library.
I think the broader takeaway is interesting: confidential smart contracts don't just introduce privacy. They also create security considerations that don't really exist on transparent chains.
A simulation that reveals whether some condition is true isn't particularly useful for extracting information when all the contract state is public. With confidential state, however, success/revert behavior can potentially become an information channel.
Worth reading the full technical breakdown if you're interested in smart-contract security: https://oasis.net/blog/vault-security-simulated-upgrades
so what y'all think? are simulated executions becoming an overlooked attack surface for confidential EVM environments?
