QRコードをスキャンしてダウンロードしてください。
BTC $77,901.55 -0.10%
ETH $2,323.31 -0.38%
BNB $628.14 -0.39%
XRP $1.42 -1.03%
SOL $85.82 -0.62%
TRX $0.3239 -0.07%
DOGE $0.0977 -0.55%
ADA $0.2497 -0.50%
BCH $447.85 -1.18%
LINK $9.32 -0.77%
HYPE $41.27 -0.02%
AAVE $93.95 -0.59%
SUI $0.9304 -1.52%
XLM $0.1703 -1.80%
ZEC $355.96 -0.66%
BTC $77,901.55 -0.10%
ETH $2,323.31 -0.38%
BNB $628.14 -0.39%
XRP $1.42 -1.03%
SOL $85.82 -0.62%
TRX $0.3239 -0.07%
DOGE $0.0977 -0.55%
ADA $0.2497 -0.50%
BCH $447.85 -1.18%
LINK $9.32 -0.77%
HYPE $41.27 -0.02%
AAVE $93.95 -0.59%
SUI $0.9304 -1.52%
XLM $0.1703 -1.80%
ZEC $355.96 -0.66%

慢雾科技:Coverプロトコルのハッキングに関する簡単な分析

Summary: 12月29日、ハッカー攻撃を受けて、Coverプロトコルのトークン価格が暴落しました。
慢霧安全
2020-12-29 11:16:35
コレクション
12月29日、ハッカー攻撃を受けて、Coverプロトコルのトークン価格が暴落しました。

2020年12月29日、Slow Mistの情報によると、Coverプロトコルの価格が暴落しました。以下は、Slow Mistセキュリティチームによる攻撃プロセスの簡単な分析です。

  1. CoverプロトコルのBlacksmithコントラクトでは、ユーザーはdeposit関数を通じてBPTトークンを担保に入れることができます;
  2. 攻撃者は最初のdeposit - withdrawの後、updatePool関数を使用してプールを更新し、accRewardsPerTokenを使用して累積報酬を記録します;
  3. その後、_claimCoverRewards関数を通じて報酬を配分し、rewardWriteoffパラメータを使用して記録します;
  4. 攻撃者は最初のwithdrawの後に少量のBPTを担保として残します;
  5. この時、攻撃者は2回目のdepositを行い、claimRewardsを通じて報酬を引き出します;
  6. 問題はrewardWriteoffの具体的な計算にあります。攻撃者が2回目のdeposit - claimRewardsを行う際に取得するプール値はmemoryとして定義され、この時memoryに取得されるプールは攻撃者が最初のwithdrawでupdatePoolを行った際に更新された値です;
  7. memoryに取得されるプール値が古いため、それに対応するaccRewardsPerTokenの記録も古く、minerに代入されます;
  8. その後、新たにupdatePoolを行う際、攻撃者が最初にwithdrawした後にプール内のlpTotalが減少しているため、最終的に得られるaccRewardsPerTokenは大きくなります
  9. この時、攻撃者に代入されるaccRewardsPerTokenは古いものであり、比較的小さな値です。rewardWriteoffの計算時に得られる値も小さくなりますが、攻撃者がclaimRewardsを行う際に使用するのはプール更新後のaccRewardsPerTokenの値です
  10. したがって、具体的な報酬計算を行う際にこの新旧パラメータの差異により、大きな数値が計算されることになります;
  11. そのため、最終的に計算結果に基づいて攻撃者に報酬を鋳造する際に、追加でより多くのCOVERトークンが鋳造され、COVERトークンの増発を引き起こします。

具体的なaccRewardsPerTokenパラメータの差異変化は以下の図の通りです:

image

関連タグ
warnning リスク警告
app_icon
ChainCatcher Building the Web3 world with innovations.