メインコンテンツへスキップ

Documentation Index

Fetch the complete documentation index at: https://docs.raydium.io/llms.txt

Use this file to discover all available pages before exploring further.

このページは AI による自動翻訳です。すべての内容は英語版を正とします。英語版を表示 →
AMMは悪意あるコードの格好の標的です。LPの資金は完全に可視化されたプール内にあり、すべてのスワップは決定論的に価格を変動させます。このページでは、AMMに対して実証されている攻撃クラス、Raydiumへの適用可能性、およびRaydium(と統合者)による防御方法を整理しています。

1. サンドイッチ / MEV攻撃

攻撃

ボットがメモプール/ゴシップストリームを監視してユーザーのスワップを発見し、同じ方向の買いで先行実行して価格を上昇させ、ユーザーのトランザクションをより悪い価格で実行させ、反対の売りで後付実行します。ボットはスプレッドから利益を得ます。

露出度

  • 最も露出: 低TVLのCPMM プールとAMM v4プール — わずかなトレードでも価格が大きく変動。
  • 露出が低い: 深いCLMM プール — ティック内取引は価格を動かさない。
  • 露出なし: ファーム収穫、LP預金(比率が強制され、価格に同じ方法で敏感ではない)。

防御策

  • Jitoバンドル (integration-guides/routing-and-mev) — トランザクションをパブリックメモプールから隠す。
  • タイトなスリッページ — 期待値に近い最小アウト値がサンドイッチを不採算にする。約0.3%以下では、ほとんどのサンドイッチは損失。
  • 小さいトレードサイズ — $100kのスワップを10 × $10kに分割;各スワップは価格をより少なく動かす。

Raydiumの姿勢

RaydiumのコアプログラムはアンチMEV保護を強制しません — プログラムレベルでは中立的です。保護は送信層(Jito、ウォレットの組み込み保護)で行われます。UIはデフォルトのスリッページを0.5%に設定し、これはほとんどのプール向けに合理的です。

2. 価格操作

攻撃

大型トレーダーがプールの価格を一時的に移動させ(フラッシュローンまたは自己資金ホエール経由)、価格に依存する下流アクションをトリガーし(清算、オラクル派生借入、デリバティブペイアウト)、その後価格を正常に戻します。

露出度

  • ネイティブRaydium操作: 露出なし。スポットスワップの売買往復は手数料を発生させるだけ;トレーダーは損失。
  • 統合プログラム: Raydiumプール価格をナイーブに読む場合、露出。

防御策

  • スポット価格ではなくTWAP を使用 (合成可能性については security/oracle-and-token-risks を参照)。
  • CLMM ObservationState — 持続的な資本投入なしに操作できない短期ウィンドウTWAPを提供。
  • マルチオラクルコンセンサス: プログラムがRaydium、Pyth、Jupiterを読み、1%以内の同意がある場合のみ機能する場合、単一ソースのフラッシュローン操作は不十分。

Raydiumの姿勢

CLMMはObservationState TWAPサポートを備えており、スポット価格を使用して無視する統合者は自己責任です。RaydiumのフロントエンドはUSD表示に複数の価格ソースを使用します。

3. 寄付 / インフレーション攻撃

攻撃

最初のLPが新しいプールに少量を預金し(例:6小数点のミント各1トークン → 1単位のLP発行)。攻撃者が1,000,000トークンをSPLトークン転送経由でプールボルトに直接「寄付」します。現在1 LP単位は各ミント500,000を表します。その後LPが預金する場合、より少ない場合は0単位にラウンドされ、預金を失います。

露出度

  • CPMM / AMM v4: 新しく作成された、低流動性プールで潜在的に露出。
  • CLMM: 露出なし(共有LP ミント無し;各ポジションは独自のNFTで明示的流動性値)。

防御策

CPMMの initialize 命令は、最小LP額をプールに固定します(Uniswap V2の MINIMUM_LIQUIDITY パターンに触発)。これは最初のLPが sqrt(x × y) - MINIMUM_LIQUIDITY を受け取り、MINIMUM_LIQUIDITY (1000単位)がnullにバーンされることを意味します。寄付攻撃には、攻撃者が初期預金より大きく寄付する必要があり、経済的に実行不可能になります。 さらに、Raydiumの SDK は初期預金が小さい場合に大きく警告し、ユーザーに合理的な額へ導きます。

Raydiumの姿勢

MINIMUM_LIQUIDITY ロックアップはCPMMで配送されます;AMM v4は類似メカニズムを持ちます。プールを作成するユーザーは、いずれにせよ寄付攻撃を経済的に実行不可能にするため、各ミント 10,000+ ユニットでシードすべきです。

4. Token-2022トランスファーフック悪用

攻撃

ミントのトランスファーフックはアップグレード可能です。攻撃者がミント起動時に無害なフックを展開し、Raydiumにリストされ、ユーザーからのLPを蓄積します。後で、フックをアップグレードしてすべての転送をブロック(事実上のソフトラグ — ユーザーは引き出せない)。攻撃者がプールを一方向のみで取引可能にし、LPを安く購入、フックのロックを解除、勝ち。

露出度

トランスファーフックミントを含むプール。

防御策

  • プログラムレベル: Raydiumプログラムはスワップ中にフックを呼び出します;フックがブロックする場合、スワップは復帰します。これは攻撃を機械的に防ぎません。
  • UIレベル: Raydiumはトランスファーフックミントを持つプールにフラグを付けます。
  • 統合者レベル: アグリゲーターはトランスファーフックミントをデフォルトでスキップし、検証済みフックのみをホワイトリスト化すべき。

Raydiumの姿勢

Raydiumはトランスファーフックプールを禁止しません(正当なフックは存在)が、明確にタグ付けします。tags.includes("TRANSFER_HOOK") でフィルタリングするアグリゲーターは、希望する場合は除外できます。

5. 合成可能性 / CPI悪用

攻撃

プログラムがRaydiumをCPI経由で合成し、バグを導入します:例えば、間違った observation_state、CLMMスワップに対する間違ったティック配列、またはアカウント二重支出。攻撃者は、バグのある合成を特定して悪用します。

露出度

  • バグのある統合者 — 通常、バグのソース。
  • Raydium — Raydiumプログラム自体の意図しない動作をトリガーする場合のみ。

歴史的例

RaydiumプログラムのいずれもCPI経由で悪用されたことはありません — Raydiumのアカウント検証者は形の悪いアカウントをキャッチして復帰させます。より広いエコシステムでの悪用は、AMMと「合成」されたが、AMMに由来しなかったカスタムプログラムバグを通じて発生しています。

防御策

  • 呼び出しプログラムは、可能な場合、手作りの命令ではなくAnchor CPI ヘルパーを使用すべき — タイプセーフティほとんどの誤用をキャッチ。
  • メインネットフォーク状態に対する統合テストは合成ケースをカバー。

6. 管理者 / キー侵害

攻撃

管理者キー(アップグレード権限、AmmConfig管理者、プロトコル手数料請求)が侵害されます。攻撃者は、プールをドレインする悪意のあるアップグレードを展開するか、AmmConfigを修正して手数料を攻撃者ウォレットにルーティングするか、プロトコル手数料をドレインします。

露出度

security/admin-and-multisig に記載されているすべてのロール。

防御策

  • 3/4マルチシグ — アップグレード権限では4つの独立した署名者を侵害する必要があります。
  • 24時間タイムロック — アップグレードでは、悪意のあるアップグレードが活性化する前にユーザーが解くための時間を与えます。
  • 運用監視 — Squadsのパブリックキューを通じたマルチシグアクティビティのアラート。

歴史的インシデント

AMM v4のプール権限キーは2022年12月に侵害されました(マルチシグ前)。修正:すべての権限をSquadsマルチシグに移動。修正後、インシデント無し。

7. CLMM ティック数学への経済攻撃

攻撃

洗練された攻撃者はCLMM ティック数学のラウンディングまたは手数料会計のエッジケースを悪用します。「他の」CLMM実装で見られた例(Raydiumではない):
  • ユーザーに対してラウンディングする手数料成長会計、ダスト蓄積。
  • ティック交差が間違った fee_growth デルタをクレジット/デビット。
  • sqrtPrice * liquidity 製品での整数オーバーフロー。

露出度

複雑なカスタム数学。監査とファジングが主な防御。

Raydiumの姿勢

CLMMは2つの独立した監査(OtterSec + MadShield)と継続的なプロパティベースファジングを実施しました。本番に影響するバグは見つかっていません。sqrt_price_x64 Q64.64算術は、境界ティックをカバーする単体テストを含む飽和128ビット数学を使用します。

8. ポジションNFT混乱

攻撃

ユーザーがCLMMポジションNFTを攻撃者に転送するトランザクションに署名するようにだまされます。攻撃者がポジションの流動性を所有します。

露出度

任意のポジションNFT保有者。

防御策

  • ウォレットUI は、RaydiumポジションNFTを認識し、別個に表示すべき(汎用NFTとして「送信」ではなく)。
  • ユーザーはNFTを転送するトランザクションへの署名に警戒すべき。

Raydiumの姿勢

ポジションNFTはMetaplexのメタデータ標準を実装;CLMM ポジションを理解するウォレットアプリは、それらを取引可能なNFTではなく流動性ポジションとして表示します。2026年現在、ほとんどの主要なSolanaウォレットはそれらを特別に表面化します。

9. ファーム報酬ストリーム操作

攻撃

ファーム作成者が報酬ボルトに資金を供給し、ステーカーを引き付け、その後 restartRewards を呼び出して、未決済報酬計算を不安定にして、収穫値を盗みます。

露出度

悪意のある作成者を持つファーム。ファームv6は作成者の権限を厳しく制限;この攻撃は機能しません。

防御策

ファームv6の管理命令(setRewardsrestartRewardsaddReward)は、プロラタエンタイトルメントを保持します — reward_per_share は変更時に調整され、変更前のアクルーアルは遡及的に破損しません。

Raydiumの姿勢

OtterSecのファーム監査は、報酬再開シナリオをテストしました;悪用は見つかりません。

10. シミュレーション対実行の乖離

攻撃

攻撃者は、シミュレーションに成功しても実行時に復帰するトランザクション(またはその逆)を構築します。シミュレーションに依存するウォレットを grief するために使用。

露出度

シミュレーションに基づいて「X を受け取ります」を表示するウォレット。

防御策

  • 実際の送信と同じブロックハッシュで simulateTransaction を使用。
  • 期待出力を正確ではなく「≈」(約)として表示。
  • 送信の直前に再シミュレーション。

Raydiumの姿勢

CLMMシミュレーションは、現在のプール状態が決定論的;乖離はシミュレーション実行間でのみ状態が変更される場合にのみ発生します(正常ケース、スリッページ境界経由でハンドリング)。

サマリーテーブル

ベクトルRaydium固有防御場所ユーザーの残存リスク
サンドイッチ / MEVはい送信層(Jito、スリッページ)Jito使用時は低
価格操作合成可能性のみTWAP を使用TWAP消費時は低
寄付攻撃CPMMMINIMUM_LIQUIDITY
トランスファーフック悪用Token-2022プールUIフラグ検証されていないフックで中程度
CPI悪用統合者バグRaydiumの検証者復帰低(バグは統合者に留まる)
管理者侵害すべてのプログラムマルチシグ + タイムロック低(反応する24時間)
CLMM ティック数学CLMM監査 + ファジング
ポジションNFT混乱CLMMウォレットUX最新ウォレットで低
ファーム操作ファームv6制限付き作成者権限
シミュレーション乖離すべてウォレットUX

ユーザーが実行できること

  • デフォルトでタイトスリッページ;必要な場合のみ上げる。
  • Jito有効ウォレット / スワップフローを使用。
  • LPの前にミント拡張を検証。
  • Squadsマルチシグ保留中アップグレードを監視。
  • プール全体に多様化;新しい起動プールに全LP を集中させません。

統合者が実行できること

  • デリバティブ価格設定にObservationState TWAP を使用。
  • CPI経由で合成時にアカウント制約を検証。
  • tags フィールドでプールをフィルタリング(scamhoneypot、検証されていないトランスファーフック をスキップ)。
  • 合理的なスリッページ境界を設定;ユーザー入力から0スリッページを受け入れない。
  • simulateTransaction を注意して使用 — それは推定値であることを文書化。

ポインタ

ソース:
  • Rekt News — このリストを通知するDeFiポストモーテム。
  • security/audits にリンクされた監査レポート。