QRコードをスキャンしてダウンロードしてください。
BTC $76,387.82 -2.10%
ETH $2,107.40 -3.59%
BNB $636.72 -2.39%
XRP $1.38 -2.58%
SOL $84.22 -2.55%
TRX $0.3541 -0.86%
DOGE $0.1038 -5.92%
ADA $0.2481 -2.74%
BCH $372.28 -9.67%
LINK $9.42 -3.00%
HYPE $44.81 +3.22%
AAVE $87.86 -2.88%
SUI $1.03 -3.16%
XLM $0.1461 -3.17%
ZEC $532.85 +3.37%
BTC $76,387.82 -2.10%
ETH $2,107.40 -3.59%
BNB $636.72 -2.39%
XRP $1.38 -2.58%
SOL $84.22 -2.55%
TRX $0.3541 -0.86%
DOGE $0.1038 -5.92%
ADA $0.2481 -2.74%
BCH $372.28 -9.67%
LINK $9.42 -3.00%
HYPE $44.81 +3.22%
AAVE $87.86 -2.88%
SUI $1.03 -3.16%
XLM $0.1461 -3.17%
ZEC $532.85 +3.37%

慢雾科技: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.