Smart Contract Audit で検出されるもの
スマートコントラクト監査がコントラクトコードで確認する内容。
Smart Contract Audit は、選択したリポジトリ内のコントラクトソースを解析します。エージェントは脆弱性を個別にも組み合わせでも評価し、コントラクトやトランザクションをまたいでどのように攻撃チェーンを形成しうるかを追跡します。各指摘にはコードに基づく 証拠。 進捗と検出結果を追跡する その読み方について。
これがコードセキュリティ監査とどう違うかについては、 スマートコントラクト監査。監査を実行するには、 Smart Contract Audit を実行する.
カバレッジの概要
スマートコントラクト監査は、次のクラスに重点を置きます:
- プロトコルのロジックバグ: 正当な操作シーケンスで意図したルールを回避したり、請求を二重に支払ったり、引き出しが詰まったままになったりしますか?
- アクセス制御: 所有者、管理者、オペレーターなどの各ロールにおいて、権限のないアクターが特権操作を実行したり、権限を変更したりできますか?
- 会計: 資産からシェアへの変換、端数処理、手数料や債務の計算によって、裏付けのない請求や誤った支払いが生じますか?
- オラクルおよび外部データ: 古い、改ざんされた、またはスケーリングが誤った価格やその他のフィードが、プロトコルの判断を歪める可能性がありますか?
- 経済的リスクとトランザクション順序リスク(最大抽出可能価値(MEV)を含む): 不十分なスリッページ保護、先行者利益、またはフロントランニングによって、アクターがユーザーから価値を抜き取ることがありますか?
- 外部呼び出し: 他のコントラクトとのやり取りによって、状態更新の順序が悪用されますか?
- 可用性とガス制限: 無限ループ、キューの増大、またはリバートする依存関係によって、引き出し、清算、その他の重要な操作が妨げられますか?
エージェントはファイル、ライブラリ、その他のプロトコルをまたいでコントラクト呼び出しを追跡するため、1つの指摘が複数の関数やコントラクトにまたがることがあります。
設定 の 料金 step は、選択範囲のどれだけが調査されるかを変えます。対象となるクラスは変わりません。 特定の部分のみを監査 と 追加メモ 作成フローで設定されます。ノートには、対象チェーン、信頼された管理者またはオラクルの役割、デプロイ済みコントラクトのアドレス、およびそのコンテキストがリポジトリにない場合に既知の許容済みリスクを記録します。恒常的なガイダンスは、リポジトリ内にMarkdownとしてコミットしてください。参照 リポジトリファイルでエージェントをガイドする.
制限
Smart Contract Audit は、選択したリポジトリ内のソースコードと、あなたが提供したコンテキストをレビューします。トランザクションの送信、フォークの実行、デプロイ済みバイトコード、設定、現在のオンチェーン状態の検証は行いません。メモ内のデプロイ済みアドレスは、そのソースレビューの文脈を提供します。これにより監査がライブチェーンの評価になるわけではありません。
Smart Contract Audit は、オラクルデータ、署名付きメッセージ、キーパーやリレイヤーからの呼び出しなど、オフチェーンシステムからの入力をコントラクトがどのように扱うかを確認します。これらの入力が遅延、欠落、または無効な場合も含みます。〜を使用してください コードセキュリティ監査 フロントエンド、API、キーパー、リレイヤーを含むオフチェーンソフトウェア自体について。
修正をプッシュした後は、 再テスト 指摘について。参照: 進捗と検出結果を追跡する.