The contract is designed to allow only the designated owner to store secrets.
However, the set_secret
function allows any user to create a Vault resource under their own account and store a secret.
Likelihood:
Any user can call this function and create their own vault, as there are no authorization checks
Impact:
Complete bypass of intended ownership model; anyone can store secret.
In this test we can see an unrelated user
set a secret.
Add a check, that the caller corresponds to the owner.
In Move for Aptos, the term "owner" refers to a signer, which is a verified account that owns a given resource, has permission to add resources and the ability to grant access or modify digital assets. Following this logic in this contest, the owner is the account that owns `Vault`. This means that anyone has right to call `set_secret` and then to own the `Vault` and to retrieve the secret from the `Vault` in `get_secret` function. Therefore, this group is invalid, because the expected behavior is anyone to call the `set_secret` function.
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.