本文へ移動
SaferICO SaferICOスマートコントラクトのセキュリティ
AI Agents プラン — 月額 59.9 ドル

push の前にコントラクトを どこかのサイトへ貼る人はいません。

しかし Pull Request 上に現れるチェックは、よい形でチームの前に立ちはだかります。それも毎営業日。この Action は、ウェブのスキャナーとまったく同じ検出ルールをコミットごとに実行します — 自前の runner の中で。だから未公開のコードは、常に自分たちのマシンに留まります。

ソースは runner から出ません実行時の依存関係はゼロSARIF 2.1.0 出力YAML ファイル 1 つで済みます
//なぜ自前の runner で走らせるのか

ソースが手元を 離れることはありません

ここははっきり書く価値があります。セキュリティスキャナーをめぐる会話の多くが、まさにこの反論で止まるからです。

返るのはコードではありません

201 個の検出ルールを持つエンジンが runner へダウンロードされ、そこで実行されます。SaferICO へ返るのは深刻度ごとの件数と、ファイル名と行番号を伴うルール番号の一覧だけです — コードも、ソースを引用してしまう証拠文字列も、決して含まれません。テストスイートが送信リクエストの本文を走査し、直前にスキャンしたソースの断片が含まれていないことを確認します。

プライバシーは目的であって、副産物ではありません

リポジトリが非公開で、まだ監査を受けていないチームにとって、「未公開のコントラクトを他社の API へ貼ってください」は会話が終わる場所です。自前の runner で走らせることは、その反論に反論するのではなく、消し去ることです。

Worker の CPU は 10 ミリ秒だけ

現実のコードベースでは、エンジンが必要とする時間はそれをはるかに超えます。GitHub の runner はコアを 1 つ丸ごと使え、時間の上限もありません。だからコミット上で走るスキャンは縮小版ではなく、完全なスキャンです。

検出ルールの更新に、YAML の変更は不要です

runner は実行のたびに現在のバージョンのエンジンを取得します。1 年前に固定したワークフローでも、今日受け取るのは今日の検出ルールです。

結果は diff の上に現れます

任意の最後のステップで SARIF をアップロードすると、指摘が GitHub の Security タブに現れ、diff にインラインで表示されます — 開発者が実際に読む場所です。

何もインストールしません

.github/workflows/ にファイルが 1 つ。runner は依存関係のツリーを一切引き込みません。自分の依存物をパイプラインへ持ち込むセキュリティツールは、自らの主張と矛盾しています。

ツール本体(スキャナー、各ダッシュボード、SAFI ワークスペース)のインターフェースは現時点では英語です。これらのページは、その中に入る前にすべてを日本語で説明するためにあります。

ビルドを止めるかどうかは ポリシーが決めます

エンジンが報告する深刻度は、重大、高、中、低、情報です。既定は「高以上で失敗」です。

🎚️ 誰も通れない関門は、1 週間で切られます

既存の指摘を片づけている段階ではしきい値を下げ、きれいになってから上げてください。

誰も通れない関門は 1 週間のうちに誰かが切ります — そして切られたチェックは、何も守りません。

01売っているのは、この計算ではありません

検出ルール自体は /sfi-engine.js で公開されており、そこに隠すものはありません。

ここで販売しているのは、ライセンス、履歴、ビルドを止めるかどうかを決めるポリシー、そして組織全体の見取り図です。

02設定はこれだけです

.github/workflows/ にファイルを 1 つ。checkout し、sfi-ci.mjs を取得して実行し、必要なら SARIF をアップロードする。

アカウントの API キータブでキーを作り、リポジトリの secrets に追加してください。runner 自体は、実行する前に読み切れる 1 ファイルです: https://saferico.com/sfi-ci.mjs

03終了コードがその関門です

設定した深刻度以上の指摘があればビルドは失敗します。プロセスの終了コードで実現しているので、何かを追加で解析する必要はありません。

同じ runner は、push の前に手元で確かめるために npx saferico scan ./contracts としてローカルでも実行できます。

//よくある質問

CI スキャンに ついて

ソースコードはアップロードされますか。
されません。エンジンが runner へダウンロードされ、そこで実行されます。返るのは深刻度ごとの件数と、ファイル名と行番号を伴うルール番号だけです — コードも、ソースを引用してしまう証拠文字列も含まれません。テストスイートが送信リクエストの本文に、直前にスキャンしたソースの断片がないことを確認します。
何かインストールする必要はありますか。
ありません。設定は .github/workflows/ のファイル 1 つで、runner は依存関係のツリーを引き込みません。
ビルドの失敗はどう決まりますか。
設定した深刻度のしきい値で決まり、既定は「高以上で失敗」です。既存の指摘を片づけているあいだは下げ、きれいになってから上げることをおすすめします — 誰も通れない関門は 1 週間で切られます。
なぜホスト型のエンドポイントは 201 個の検出ルールを走らせないのですか。
エッジのリクエストに与えられる CPU の予算は 10 ミリ秒で、現実のコードベースではエンジンが必要とする時間がそれをはるかに超えるからです。だから完全なエンジンは、ブラウザ、CI runner、あるいは npx saferico の中で走ります。
どのプランが必要ですか。
CI スキャンは AI Agents プラン、月額 59.9 ドルに含まれます。runner 自体は、実行する前に読み切れる 1 ファイルです。

送金する前に、コントラクトをスキャン

コントラクトアドレスを貼り付ければ、リスクを取る前にオーナー権限、流動性、売却シミュレーションの結果が分かります。1 回ごとに少額の手数料がかかり、金額は署名の前に表示されます — どのプランでも、加入後は無制限に含まれます。