SmartAccount
and VerifyingSingletonPaymaster
signature validation are not conforming to the latest EIP-4337 EntryPoint
specification
#212
Labels
2 (Med Risk)
Assets not at direct risk, but function/availability of the protocol could be impacted or leak value
bug
Something isn't working
duplicate-498
satisfactory
satisfies C4 submission criteria; eligible for awards
sponsor confirmed
Sponsor agrees this is a problem and intends to fix it (OK to use w/ "disagree with severity")
Lines of code
https://github.com/code-423n4/2023-01-biconomy/blob/main/scw-contracts/contracts/smart-contract-wallet/SmartAccount.sol#L511
Vulnerability details
Impact
The most recent canonical
EntryPoint
contract states that:This requirement is also described on the latest
BaseAccount
NatSpec, that should be inherited bySmartAccount.sol
. The same goes forVerifyingPaymaster
that is the sample code forVerifyingSingletonPaymaster.sol
.Proof of Concept
EntryPoint.simulateHandleOp
expectsSIG_VALIDATION_FAILED
instead of a revert.Tools Used
Manual review
Recommended Mitigation Steps
Update the codebase to use the latest AA source code from the repository eth-infinitism/account-abstraction repository. In addition, keep close attention to protocol changes through the developers' social media.
The text was updated successfully, but these errors were encountered: