In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.
Test your applicationsLearn about Improper Authorization vulnerabilities in an interactive lesson.
Start learningUpgrade @openzeppelin/confidential-contracts to version 0.3.2, 0.4.2, 0.5.2 or higher.
@openzeppelin/confidential-contracts is a Smart Contract library for use with confidential coprocessors
Affected versions of this package are vulnerable to Improper Authorization via the release and vestedAmount functions in VestingWalletConfidential.sol, which consume encrypted FHE handles returned by a caller-supplied token (via confidentialTransfer and confidentialBalanceOf) without verifying that the token holds ACL authority over those handles. Because FHE handles are global and not namespaced by token, a malicious token can return a handle belonging to a different ERC7984 token held by the wallet, causing the wallet to compute over and enable disclosure of a confidential balance it does not intend to expose. An attacker who controls or deploys a malicious token contract can therefore read the confidential balance of any other ERC7984 token held by the vesting wallet.