課題:オープンソースの脆弱性をエンタープライズレベルで可視化
Form3は2018年からSnykを利用しています。この頃、コードの依存関係に潜む潜在的な脆弱性の可視性を高める必要性を認識し、問題が本番環境に持ち込まれるのを防ぐための、確実に実行できる仕組みを求めていました。
顧客の決済の安全性とセキュリティを確保することに尽力するForm3は、決済プラットフォームとソフトウェアのアプリケーションセキュリティおよび品質保証を、当初から最優先事項としていました。同社の最高情報セキュリティ責任者(CISO)であるAchilleas Pitsillides氏は、ソフトウェアの依存関係と脆弱性のチェックをビルドプロセスに組み込む必要性を認識しました。これにより、100人を超えるエンジニアがオープンソースコード、依存関係、コンテナイメージを保護できるようになります。開発期間に影響を与えないよう、セキュリティチームは、開発者が好むプログラミング言語と開発環境に対応したシンプルなソリューションを探していました。
「このソリューションを導入したことで、セキュリティ制御を強化できました」と、Form3のCISOであるAchilleas Pitsillides氏は語ります。「既存のビルドプロセスに依存関係のスキャンを組み込める一方で、エンジニアの日々のワークフローを妨げないソリューションを求めていました。」
ソリューション:開発者を第一に考えたアプローチで、導入をスムーズにし、セキュリティ脆弱性を即座に把握
Form3のアプリケーションセキュリティチームは、2018年末にSnykをエンジニアリングのワークフローへ迅速かつシームレスに組み込むことができました。Snykはエンジニアリングチームの500を超えるリポジトリをネイティブにスキャンし、アプリケーションのソースコードとオープンソースの依存関係にある脆弱性を検出します。さらに、プルリクエスト中にコードを分析・検証することで、エンジニアはビルドパイプラインの早い段階で問題を検出し、迅速かつ効率的に自ら修正できるようになります。
「サポートされているプログラミング言語の数と、既存のワークフローにどれだけ簡単に組み込めるかを基準にソリューションを評価しました」と、Form3のシニアセキュリティエンジニアであるLiam Galvin氏は語ります。「Snykは必要なレベルで設定できる優れたCLIツールを提供しており、自動ビルドへの統合も簡単でした。」
Snyk Containerで開発者が重大な脆弱性をすぐに修正
Form3のチームは、脆弱性のレビューに関する開発者のワークフローがすでに改善されたことを実感しています。Snykの導入により、開発者は重大な脆弱性をすぐに検出して修正できるようになりました。また、Snyk Containerはイメージをスキャンし、安全でないベースイメージやツールイメージがレジストリにプッシュされるのを防ぎます。脆弱性を取り除くことで、開発者が可能な限り安全で効率的なベースイメージを使用できるよう支援します。Snykはイメージを継続的に監視し、新たな脆弱性が見つかった際には開発者に通知します。
「Snykは、脆弱性の観点から問題の多いイメージを特定するのに役立っています」とLiam氏は語ります。「使用するイメージのセキュリティが強化され、プロセス全体も改善されました。」
効果:開発を遅らせずにセキュリティを可視化
Form3は、開発者への影響を最小限に抑えるセキュリティプロセスとポリシーを導入できました。Snykはビルドプロセスに統合され、脆弱性の優先順位付けを支援して修正を加速します。これによりForm3は、顧客が求める革新的な機能の市場投入を遅らせることなく、完全な可視性とソフトウェア品質の向上を実現しました。
「Snykをビルドシステムに統合して以来、500を超えるリポジトリにわたる脆弱なOSS依存関係の可視性が向上しました」とAchilleas氏は説明します。「また、リポジトリで新たな問題が検出されたプルリクエストを積極的にブロックしています。」
さらに、機密情報や個人情報を扱う規制対象企業に重要なテクノロジーを提供するForm3は、GDPRをはじめとする各種規制を遵守する必要があります。Snykは、同社のシステム保護を支援しています。
「Form3はいくつもの認証を取得しており、外部機関による監査を6か月ごとに受けています」とAchilleas氏は述べます。「脆弱性管理は認証において定められた管理策の一つであり、Snykはこれらの管理策を満たし、その証跡を示すうえで役立っています。」
Snykを活用することで、Form3はデプロイを遅らせることなく、エンジニニアリングを中心としたセキュリティアプローチを実現しました。プラットフォームの自動化ツールがコードのマージ前にセキュリティ脆弱性を検出します。SnykとForm3のその他のセキュリティ制御により、アプリケーションがステージング環境や本番環境に到達する前に、セキュリティ検証済みであることをエンジニアリングチームが確認できます。