The protocol implements the ETH derivative for the Lido protocol. The stETH
token is the liquid representation of the ETH staked in this protocol.
the BridgeSteth
contrat is assuming a peg of 1 ETH ~= 1 stETH.
Even though both tokens have a tendency to keep the peg, this hasn't been always the case as it can be seen in this dashboard. There have been many episodes of market volatility that affected the price of stETH
, notably the one in last June when stETH
traded at ~0.93 ETH.
a user can deposit stETH
to the system and get a virtual balance of ZETH
Derivative that stands for ETH
by approving stETH
to the bridge contract. then calling the function deposit()
from BridgeRouterFacet
.
the user passes the bridge
address. which in this case BridgeSteth
and the amount wanna deposit.
this function calls the bridge that the user provided and the bridge get the tokens from the user. and return the amount getted from the user.
then The protocol increases the virtual balance of the user in the system by the same amount of stETH
the user deposited . in the function addZeth
from LibVault
.
the user then can withdraw
this Zeth
virtuals balance through any bridge in this vault. and in our case we have two bridges in this vault. the RethBridge
and stETHBridge
.
no the vulnerability arises when for example as we said the price of stETH
is less than ETH
then a malicious user can create a massive profit from that. by depositing stETH
and withdrawing REth
through RethBridge
. since the protocole don't Differentiate between the two since they are in the same vault you can deposits with any bridge and withdraw with any bridge you want.
The protocol's vulnerability allows malicious users to exploit price disparities between stETH
and ETH
. By depositing undervalued stETH
and withdrawing overvalued Reth
through different bridges within the same vault, these users can generate substantial profits, posing a significant financial risk to the protocol.
manual review
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.