一目でわかる
- 悪意のあるパッケージや脆弱性のあるパッケージは、AIツールを使ってコードを記述しているエンジニア以外の従業員が使用するデバイスを含め、社内のすべてのデバイスにおいて、インストール時にブロックされます。
- 依存関係およびコンテナのスキャンは、すべてのリポジトリとコンテナに対して実行されます
- 必須の Aikido GitHubでの必須のチェックにより、脆弱性のあるコードが本番環境に到達するのを防ぎます
- 開発者は、別のツールを習得する代わりに、いつものワークフローをそのまま維持できます
- Aikido コンプライアンス・チェーンに情報を提供し、日付入りのチケットを作成することで、SLA未達成の状況をより可視化する
この新たなリスクはオープンソースに起因するものであり、従来の体制では本番環境のみを監視していた
世界最大の余剰食品マーケットプレイスを運営する「Too Good To Go」社は、 Aikido 悪意のあるオープンソースパッケージや脆弱性のあるパッケージが開発者のデバイスや本番環境に到達する前に検知し、セキュリティ対策をコンプライアンスに確実に結びつけるために活用しています。
エンジニアリング担当副社長のロバート・クリスチャンセン氏は、同社のソフトウェアチーム全体におけるエンジニアリング、開発者体験、コンプライアンスを統括しています。「Too Good To Go」は2016年から余剰食品のマーケットプレイスを運営しており、現在では20カ国で1億5,000万人以上の登録ユーザーと20万社以上のアクティブなビジネスパートナーを結びつけています。これらすべては、約1,300人の従業員を擁する同社内のエンジニアリング組織によって支えられています。
1年半前、チームの最優先課題は、感染したライブラリが本番環境に到達する前に阻止することでした。しかし、ここ半年の間に、オープンソースパッケージや、それらをインストールする開発者に対する攻撃が急速に増加しており、オープンソースプロジェクトは新たな脆弱性の波にさらされています。現在、より大きなリスクはチェーンのより早い段階に存在しています。それは、製品がリリースされる前に開発者のデバイスを侵害してしまうパッケージです。開発者は通常、他の誰よりも多くのアクセス権を持っているため、彼らのデバイスは最も価値のある標的となっているのです。
この問題はエンジニアリング部門の枠を超えて広がった。他の業務部門の人々もAIツールを使ってコードを書き始め、セキュリティ対策が施されていないデバイスにNodeやPythonのパッケージを導入するようになった。ロバートは、この状況をさらに危険だと指摘している。チームの既存のツールは、ビルド完了後のスキャンしか行っていなかった。そのため、本番環境は保護されていたものの、開発環境は無防備なままだった。
コンプライアンスの要件により、その重要性はさらに高まりました。「Too Good To Go」はNIS2およびPCIに準拠しており、PCIでは、脆弱性 (セキュリティインシデント)に対してチームがどれだけの速さで対応しなければならないかについて、独自の要件を定めています。チームには、デバイス上およびビルド時に問題を未然に防ぎ、かつフォローアップが予定通りに実施されたことを証明できる単一の製品が必要でした。
デバイスからパイプラインへの単一のツール
Aikido Safe Chainは現在、組織内のすべてのデバイスで稼働しています。このツールは、NodeまたはPythonがインストールされているかどうかを確認し、インストール工程を監視するため、誰がインストールしようとも、不正なパッケージがシステムに侵入する前に阻止されます。デバイスの保護対象は、コードを書くかどうかに関わらず、同社がエンジニアリング部門に分類する約160名の従業員全員です。
パイプラインでは、すべての変更は、本番環境にデプロイされる前に Aikido GitHubでのチェックを通過しなければ、本番環境にデプロイすることはできません。このチェックは通常の開発フローの中に組み込まれているため、セキュリティ対策が、誰かがわざわざ意識して行わなければならない独立したステップになることはありません。 Aikido は、200弱のリポジトリと200以上のコンテナにまたがる脆弱な依存関係 およびコンテナイメージ を追跡しており、これには、堅牢化されたDockerイメージでさえ抱えている、依存関係 の深い連鎖も含まれています。
ライブラリのアップグレードを担当する開発者たちは、IntelliJのプラグインを使って、検出された項目が実際の問題なのか、また更新によって何かが壊れる可能性はあるのかを確認してから、実際に手を加えるようにしています。
開発者は、 Aikido その都度、その場に行く必要すらありません。もうワークフローの一部になっているのです。
「Too Good To Go」が選んだ理由 Aikido
- デバイス上およびビルド時の保護(以前の設定では対策が不十分だった2つの場面)
- 手早く、手間のかからないセットアップ
- シンプルなUIと透明性のある価格設定
Aikido そうでなければ見逃してしまうようなものを取り除く
最大の変化は、もはや見逃されることがないという点です。「セーフチェーン」とデバイス保護機能により、開発者向けデバイス上でのパッケージの実行はすでに阻止されています。そして、ロバートに Aikido が実際の脅威を検知しているか尋ねられると、彼の答えは「間違いなく、そうでなければすり抜けていたであろうものを検知している」でした。
インフラとコードの両面において、どのライブラリを修正すべきかについて、完全に把握できるようになりました。
ロバートは、他の成果とは一線を画すあるビジネス上の成果を特に重視している。それは、ライブラリのセキュリティ侵害に起因するインシデントがチームで一度も発生していないという点だ。
コンプライアンスの面では、 Aikido 日付が記載されたチケットが作成されるため、修正作業がSLAの期限に遅れた場合、誰もがすぐにそれを把握できます。PCIが応答時間について明確な基準を定めている中、この記録により、Too Good To Goは手作業で進捗状況を確認することなく、コンプライアンスを維持することができています。
「Too Good To Go」の活用方法 Aikido 今日の様子
現在使用中
- 依存関係スキャン
- コンテナ・スキャン
- Aikido 組織全体でのセーフチェーン
- エンジニアリング全般にわたるデバイスの保護
- GitHub パイプラインのチェック
- 修正作業を行う開発者向けのIntelliJプラグイン
次は計画
- 各発見事項を実際のリスクレベルに紐づける深刻度モデルにより、インターネットに接続されていない内部サービスは月次サイクルでパッチが適用される一方、リスクにさらされているサービスは直ちに修正される
評価
- チームのセキュリティエンジニアが試験的に導入を検討しているAIペネトレーションテスト。これにより、すでに毎年実施しているペネトレーションテストと並行して、自動テストをより頻繁に実行できるようになる。
最終的な評価
この製品はセットアップが簡単で、ちゃんと動作しています。導入してよかったと思いますし、もっと早く手に入れておけばよかったと心から思います。


