トレンドマイクロ製品の安全性・透明性向上のための5つの取り組み 第1回~製品開発の迅速性と安全性を両立するDevSecOps~
サイバーセキュリティリスクの多様化や社会情勢の変化に対応しながら、いかに安全な製品・サービスを提供するか?この難しいテーマに他社のみならず当社も直面しています。今回より5回にわたって、「当社製品の透明性・安全性の向上」のための取り組みを行うサイバーセキュリティ・イノベーション研究所の最前線のノウハウを連載形式でまとめます。 第1回は、セキュリティをソフトウェアの開発サイクルに組み込む「DevSecOps」の取り組みです。
開発プロセスにセキュリティを組み込む DevSecOpsの実践
DevSecOps(デヴセックオプス/デブセックオプス)というキーワードを耳にしたことはありますか?ソフトウェアの「開発」と「運用」が密接に協力してサービス提供を行う仕組みであるDevOpsを発展させ、さらにセキュリティの観点を加えたものです。
従来は開発サイクルの最後に個別のセキュリティチームがセキュリティチェックや品質保証テストを行う形をとっていました。しかし、新しい機能をより早く実装するため、開発サイクルの短縮化が進む一方、開発サイクルの独立した1プロセスとして個別のセキュリティチームがセキュリティを担当する体制では、セキュリティが開発サイクル短縮化のボトルネックとなる恐れが出てきました。そこで、開発・運用チームとセキュリティチームが共同で責任を持ち、セキュリティをソフトウェアの開発サイクルに組み込むDevSecOpsの必要性が叫ばれるようになっています。今回は、このDevSecOpsを実践するための当社の取り組みを3つ紹介します。
図:安全な製品を作るための組織づくり図解
※組織図参照元:サイバーセキュリティ報告書
製品開発に関して、当社では2つの組織がそれぞれの視点で安全性を高めることで、より安全性の高い製品をつくることを目的とした体制を整えています。それが製品開発のプロセスを高めるRD-Sec部門と、情報資産やシステムなどの開発・運用環境のセキュリティを守るInfo-Sec部門の2つです。いずれもGlobal CISOの配下で前者はすべての製品開発部門、後者は日本本社を含む全事業部門のセキュリティを統括しています。
RD-Sec部門では、製品のセキュリティを高めるために開発プロセスで、「セキュア・バイ・デザインの実践」「セキュア・コーディングの指導・実践」「セキュリティ・テストの指導・実践」などの活動を行っています。
Info-Sec部門では、「セキュリティ・リスクマネジメント」「セキュリティポリシー、プロシージャの策定・運用」「セキュリティ教育・訓練の実施」「脆弱性マネジメント」「セキュリティ監視・インシデント対応」などの様々な活動を通して、社内全体の情報インフラのセキュリティを統括・管理する活動を行っています。
DevSecOps Bibleというのは、当社の開発部門が定めるセキュア開発のためのポリシー&ベストプラクティス集です。トレンドマイクロでDevSecOpsライフサイクルを実現するために必要なことを定義しています。このポリシーは適宜見直され、新たに必要な観点が発見されたとき、開発メンバーが誰でも提案することができるようになっています。
この中には、セキュア開発のためのトレーニングについて、クイズ形式の教育資料はもちろん、セキュア・コーディング学習プラットフォームを利用した実践的な教育を必須とすることが定められています。また、開発プロセス上で自動的に脆弱性チェックやコードの品質チェックを行うことも定義され、人的工数をかけずに品質確保ができる体制を整えています。
このようなポリシーを定義しても、守られずに形骸化してしまうことも多々あります。DevSecOps Bibleでは、ポリシーが遵守されているのか分かるように、適用率の可視化が行われています。可視化された適用状況は月に1度メールで通知されるようになっており、ポリシーの遵守を意識した体制づくりができるようになっています。これらの例以外にも、Threat modelingの手法を用いた脅威分析を行うことなど、セキュア開発を実現するための様々な観点が盛り込まれています。
インナーソースという言葉を初めて聞く方も多いかもしれません。これは、オープンソースの開発手法から着想を得て、組織内でもオープンソースのように開発する手法を取り入れることです。
オープンソースのように開発するというのはどういうことなのでしょうか。オープンソースの最大の特徴は、ソースコードがインターネットに公開されていることです。そのため誰でも読むことができ、誰でも書ける(アイディアを提案する)ことができるようになっています。インナーソースでは、ソースコードをインターネットに公開するということはしませんが、社内の開発部署に広く公開します。
これによって、コードが社内の様々な開発者やセキュリティリサーチャーの目に入るようになるので、内部犯行やサプライチェーン攻撃などにより不正なコードが挿入された場合に気づきやすくなります。
実際に外部の事例では、2020年12月にSolarWinds社のネットワークに攻撃グループが侵入し、同社のアプリケーションである「Orion」のアップデートに不正なコードが仕込まれ、多数の企業に不正なアップデートが配信される事例もありました※1。
※1 トレンドマイクロ セキュリティブログ:SolarWinds社製品を悪用、米政府などを狙う大規模サプライチェーン攻撃
インナーソースを実践することで、このような不正なコード挿入に気が付ける可能性があります。そのほかにも、誰でもコードを作成・提案できるという特性から、スピーディな開発を行うことができたり、他チームで開発しているライブラリを共有することができ、工数の削減や、ナレッジ共有による開発力の向上も期待されています。
一方、ソースコードが社内にオープンになることで、「ソースコードが持ち出されてしまうのではないか」という不安もあるかと思います。これに対しては、暗号化ライブラリや当社のコア技術などの重要情報は完全に切り分けておくことで、ソースコードが流出してもインパクトが少なくなるような設計を行っています。また、ソースコードのアクセス状況は常にモニタリングされており不自然な動きを検知・対処する体制をとっています。
トレンドマイクロの安全性・透明性向上の取り組みについて
当社では、今回ご紹介した内容以外にも、様々な製品品質向上の取り組みを行っています。次回は「サービスの信頼性を確保するSRE (Site Reliability Engineering)の実践」についてご紹介いたします。
本シリーズの記事を読む:
第1回:製品開発の迅速性と安全性を両立するDevSecOps
第2回:サービスの信頼性を確保するSRE (Site Reliability Engineering)の実践
第3回:ソフトウェアの脆弱性のリスクを可視化するSBOM
第4回:トレンドマイクロ製品の脆弱性に関する品質向上の取り組み
第5回:地政学リスクを考慮したサービスの設計とは
サイバーセキュリティ・イノベーション研究所
トランスペアレンシー・センター
トレンドマイクロのサイバーセキュリティ・イノベーション研究所の中核センターの一つ。トレンドマイクロの製品・サービスの品質、安全性、透明性の向上に取り組む。また、その取り組みを顧客や一般に広く発信するほか、「ソフトウェア管理に向けたSBOMの導入に関する手引」を策定した経済産業省のタスクフォースにて、ソフトウェア分野のSBOM実証に協力するなど、国内におけるソフトウェアのセキュリティ向上に向けた社外活動も推進している。
Security GO新着記事
ソブリンクラウドとは?プライベートクラウドやガバメントクラウドとの違いを解説
(2024年11月5日)
VPN機器の脆弱性はなぜ管理しづらいのか~ネットワークエンジニアの立場から探る
(2024年11月1日)
暗号資産マイニングマルウェアとは?~事業停止にもつながるサイバー脅威~
(2024年10月31日)