You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Otherwise the proposer can include an unbounded number of transactions - possibly multisigs with the last sig failing - which the proposer doesn't process but every other node has to, consuming an unbounded amount of RAM and/or disk space.
The SDK needs to track the block gas limit and immediately return a nonzero ABCI error on DeliverTx for all transactions as soon as the gas limit is hit.
With this limit in place this is still a DoS vector, but at least the compute is limited - and if we don't write to storage on ante handler failure (ref #2772) no disk space will be used.
Otherwise the proposer can include an unbounded number of transactions - possibly multisigs with the last sig failing - which the proposer doesn't process but every other node has to, consuming an unbounded amount of RAM and/or disk space.
The SDK needs to track the block gas limit and immediately return a nonzero ABCI error on
DeliverTx
for all transactions as soon as the gas limit is hit.With this limit in place this is still a DoS vector, but at least the compute is limited - and if we don't write to storage on ante handler failure (ref #2772) no disk space will be used.
cc @ebuchman @alexanderbez @ValarDragon
The text was updated successfully, but these errors were encountered: