Skip to content

Latest commit

 

History

History
49 lines (24 loc) · 1.32 KB

File metadata and controls

49 lines (24 loc) · 1.32 KB

Joyful Gingham Tarantula

Medium

High Number of signers can make the Safe unusable.

Summary

In the Current HatsSignerGate Implementation there is no upper limit on the number of Signers. Anyone with a signer hat can claim signer and are hard to remove. Therefore increasing the threshold to a large number where making any descisions on transactions would prove extremely difficult.

Root Cause

As Number of owners is uncapped and getNewThreshold() relies on getRequiredValidSignatures(numowners) which is inturn used to calculate required signatures based on number of owners, When number of owners is extremely high, threshold also increases which can lead to problems with governance.eg:

 if (numOwners > config.target) _requiredValidSignatures = config.target;

here required signatures will be config.target but if actual number of signers is way higher than config.target required signatures would be disproportional to number of owners.

https://github.com/sherlock-audit/2024-11-hats-protocol/blob/main/hats-zodiac/src/HatsSignerGate.sol#L782-L786

Internal pre-conditions

No response

External pre-conditions

No response

Attack Path

No response

Impact

  • governance issues.

PoC

No response

Mitigation

Include a Cap on number of signers based on config.target.