Skip to content

Fix equivocation DoS vector #6434

@lidatong

Description

@lidatong

A malicious leader with >epsilon stake can generate arbitrarily many equivocating FEC sets and trivially cause Firedancer to OOM. This is because various structures in Firedancer fill up with the equivocating junk data. Firedancer needs to be able to cap and limit the amount of equivocation it processes for a given slot.

This requires reworking a number of components. For example, consumers downstream of the shred tile have to be able to ignore / drop equivocating shreds from the shred tile past a point. However, consensus might later confirm one of the equivocating forks, so we need to repair it. However, shred tile filters shreds it has already processed, so this would need to be reworked.

Other relevant components in addition to shred: repair, replay, tower

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions