慢雾:Rubic プロトコルが誤って USDC を Router ホワイトリストに追加し、承認された契約ユーザーの USDC が盗まれる。
ChainCatcher のメッセージによると、SlowMist セキュリティチームの情報により、Rubic クロスチェーンアグリゲーター プロジェクトが攻撃を受け、ユーザーアカウント内の USDC が盗まれました。SlowMist セキュリティチームは以下のように簡潔に共有しています:
Rubic は DEX クロスチェーンアグリゲーターであり、ユーザーは RubicProxy コントラクト内の routerCallNative 関数を通じてネイティブトークンの交換を行うことができます。交換を行う前に、ユーザーが渡した必要な呼び出しのターゲットルーターがプロトコルのホワイトリストに含まれているかどうかを確認します。
ホワイトリストチェックを通過した後にのみ、ユーザーが渡したターゲットルーターに対して呼び出しが行われ、呼び出しデータもユーザーから外部に渡されます。
不幸なことに、USDC も Rubic プロトコルのルーターのホワイトリストに追加されていたため、任意のユーザーが RubicProxy コントラクトを通じて USDC を自由に呼び出すことができました。
悪意のあるユーザーはこの問題を利用し、routerCallNative 関数を通じて USDC コントラクトを呼び出し、RubicProxy コントラクトに対して権限を与えられたユーザーの USDC を transferFrom インターフェースを介して悪意のあるユーザーのアカウントに移転させました。
今回の攻撃の根本的な原因は、Rubic プロトコルが誤って USDC をルーターのホワイトリストに追加したため、RubicProxy コントラクトに権限を与えられたユーザーの USDC が盗まれたことにあります。(出典リンク)