BiconomyMetaFactory.deployWithFactory()
does not forward ETH when calling factories.
When users call createAccount()
in factories to deploy new accounts, they can send ETH for the ETH to be forwarded to the new account. For example, in NexusAccountFactory
, msg.value
is forwarded to the newly deployed account in createDeterministicERC1967()
:
NexusAccountFactory.sol#L55-L56
However, when calling deployWithFactory()
in BiconomyMetaFactory
, the function does not send msg.value
along with the call:
BiconomyMetaFactory.sol#L70-L72
Therefore, if a user calls deployWithFactory()
with ETH to deploy a new account and send ETH to it in a single call, the ETH sent will be stuck in BiconomyMetaFactory
instead of being forwarded to the new account.
Users calling deployWithFactory()
with ETH will lose the ETH sent instead of depositing it into their new account.
In deployWithFactory()
, call the factory with msg.value
:
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.