Beginner FriendlyFoundry
100 EXP
View results
Submission Details
Severity: high
Valid

Everybody can find the password

Summary

The whole smart contract is not secure.

Vulnerability Details

Everybody can see the password using two methods:

  1. Read the value at the memory slot where 'string private s_password' is stored.

  2. Decode the data from a 'setPassword' transaction

Impact

Sensitive data is not secure.

Tools Used

Manual review

Recommendations

Don't store sensitive data on chain.

Updates

Lead Judging Commences

inallhonesty Lead Judge
almost 2 years ago
inallhonesty Lead Judge almost 2 years ago
Submission Judgement Published
Validated
Assigned finding tags:

finding-anyone-can-read-storage

Private functions and state variables are only visible for the contract they are defined in and not in derived contracts. In this case private doesn't mean secret/confidential

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.