日本語

Aikido Libraries

脆弱なパッケージの安全な差し替え製品。アップグレード不要。破壊的変更なし。

脆弱な依存関係をアップグレードするということは、まだテストしていないバージョンを使うことを意味し、破壊的変更のリスクがあり、そのアップグレードの展開をチーム全体で調整する必要があります。Aikido Libraries に移行すれば、そのトレードオフはなくなります。現在使用中のまったく同じバージョンにパッチを適用するため、同じパッケージ、同じバージョン、同じ API、同じ動作のまま、アプリケーションコードに手を加えることなくセキュリティ修正を得られます。

Aikidoは 11,500+ JavaScript、Java、Python、PHP、Go、.NET、Ruby、Rust 全体でライブラリを保護しています。Aikido Libraries が最も役立つのは次のような場合です:

  • CVE にまだ安全な上流の修正がない
  • 上流の修正には、適用できないメジャーバージョンアップが必要である
  • パッケージがすでにメンテナンスされていない

Aikido Libraries を 1 つ以上のリポジトリに展開する

  1. 左側のサイドバーで、 AutoFix に移動し、 Aikido Libraries.
  1. を開き、 一括展開 タブを開いてクリックします リポジトリを選択.
  2. クリックします リポジトリを追加 を開き、保護したいリポジトリを選択します。
  3. 右側の クレジット パネルでクレジットの内訳を確認してください。
  4. クリックします 一括展開を有効にする して確定します。

有効にすると、Aikido は毎日 PR を作成し、あなたのパッケージを保護済みの Aikido バリアントに固定します。新しい CVE は自動的に検出され、後続の PR に含まれます。手動対応は不要です。

料金

リポジトリ保護はクレジット制の 1 年契約で、毎年更新されます。費用は登録時点でのリポジトリ内のパッケージ数と未解決の CVE 数に基づきます。正確な費用は、確定前にクレジットパネルに表示されます。

Aikido に送信されるもの

リポジトリが保護されている場合、Aikido は各パッケージについてこの情報を送信し、対応する保護済みバリアントを照合・生成できるようにします:

  • CVE識別子
  • パッケージ名
  • パッケージのバージョン

リポジトリ内のソースコードは送信されません。

単一の依存関係を修正する

脆弱な依存関係に対して Aikido Libraries のバリアントが利用できる場合、Aikido は 2 か所でそれを修正 विकल्पとして表示します。単発の修正にはクレジットは不要です。

  • フィードから: 課題の詳細を開き、AutoFix PR を作成する際に Aikido Libraries オプションを選択します。
  • AutoFix > Dependencies から: をクリックします 修正を表示 依存関係を選択し、モーダルで Aikido Libraries バリアントを選びます。
例: log4j@1.2.16

20年以上前にリリースされたにもかかわらず、log4j の 1.2.16 は、log4j 2.x へのアップグレードが破壊的変更となるため、多くのチームで今なお使用されています。

バージョン 1.2.16 には、次の重大な問題があります:

の Aikido Libraries バリアントは log4j 1.2.16 への移行を強制することなく、これらの CVE を修正します 2.x.

AutoFix を使えば、既存の log4j@1.2.16 ライブラリからそれに対応する Aikido 版へ安全に移行できます。

AutoFix は、利用可能な場合に Aikido Libraries バリアントへの移行を提案します。これは AutoFix の依存関係の概要.

Aikido Libraries バリアントへ移行するには、AutoFix 作成モーダルでこのオプションを選択してください。