get_secret
function can only be called successfully by the owner of the module, stopping all other users from reading their stored secrets.Normally, each user should be able to store and retrieve their own secret in the Vault
resource under their address.
In the current implementation, any user can set their own secret using set_secret
, but only the module owner can retrieve their secret using get_secret
. All other users cannot retrieve their own secrets, making the vault functionality unusable for non-owner accounts.
Likelihood:
The likelihood is High because:
Whenever a non-owner user calls get_secret with their own address, the assertion will fail and they will not be able to retrieve their secret.
Impact:
The impact is High because:
Non-owner users cannot access their own secrets.
The vault functionality is broken for all users except the owner.
The following test demonstrates that a non-owner cannot read their own secret:
Replace the caller parameter with a signer, and read the signer's secret instead.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.