BiconomyMetaFactory is a top-level factory that utilizes several other factories under the hood. The BiconomyMetaFactory includes a function called deployWithFactory, which deploys with a specified factory. The deployWithFactory function is payable, meaning it allows for the creation of an account with the same initial ETH that was transferred during its creation.
In BiconomyMetaFactory, we use a low-level call to interact with other factories. However, when making a call to create, we forget to transfer the msg.value, causing the ETH to be stuck forever.
This causes the ETH to be stuck forever in BiconomyMetaFactory, resulting in the loss of user funds.
Manual
We should send msg.value with the low-level call like this:
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.