OSSとの「上手な付き合い方」【第2回】
OSSの“謎”現象「入れた覚えがないのに大量利用」はこうして起こる
企業はOSSを知らないうちに自社のシステムに組み込んでいる現実がある。使用しているOSSを検出し、OSSに含まれる脆弱性によるリスクを減らすには、どうすればよいのか。
近年、企業が自社システムにOSS(オープンソースソフトウェア)を組み込むことは特別なことではなく、当たり前となってきている。フルスクラッチ(完全の自前開発)でプログラムを書き上げる方が珍しくなった。しかし自社システムに利用するOSSを適切に把握・管理できている企業は少数派だと、筆者は感じている。
中には、OSSのことを何も気にせず利用してきた企業もあると考えられる。もしそうであれば、今からでもOSSの管理に取り組めばよい。厄介なのは、「利用しているOSSは開発者が表計算ソフトウェアのシートに記録している」「OSSの利用は申請制にしているため、勝手に使われることはない」といったように、OSSを管理した“つもり”になっている企業だ。
だから気付きにくい OSSが自社製品に組み込まれる「さまざまな経路」とは
併せて読みたいお薦め記事
連載:OSSとの「上手な付き合い方」
OSSの知識を深めるには
OSSが自社システムに組み込まれる経路は、開発者が意図したものだけとは限らない。OSSはあらゆるところからやって来る。経路として考えられるのは、大きく次の3つだ。
- パッケージ管理システム(注)
- 開発においてソフトウェアの自動取得を可能にするパッケージ管理システムが、OSS群をダウンロードし、ビルド(組み立て)することがある。
- 市販ソフトウェア
- 市販ソフトウェアを購入して組み込む場合、その中にOSSが含まれていることがある。
- 委託開発
- ソフトウェアの開発を委託する場合、委託先の会社がOSSを利用していることがある。
※注:例えばC言語(開発実行環境として「.NET Framework」を利用する場合)であれば「NuGet」、JavaScriptであれば「npm」(Node Package Manager)など。
このように、OSSが自社システムに組み込まれる経路は単一ではない。そのためOSSを管理している企業はいま一度、管理の観点に抜け漏れがないかどうかを確認することが重要だ。OSSが組み込まれる経路別に、まずは次の点を確認するとよい。
- パッケージ管理システム
- 設定ファイルを確認する。
- 市販ソフトウェア
- 購入元にOSSの利用有無を確認する。
- 委託開発
- 委託先との契約内容にOSSに関する取り決めを盛り込む。
OSSを管理する上では、以上の内容を確認しただけでは完璧とは言えない。意図しないOSSの利用(本稿では「OSSの混入」と呼ぶ)があるからだ。
OSSの混入はなぜ起きるのか
企業は意図的なのかどうかを問わず、自社システムにOSSが組み込まれているのであれば、脆弱(ぜいじゃく)性のリスクにさらされる可能性がある。OSSライセンスの利用条件を守らなければ、コンプライアンスの面でも問題になる。
OSSの混入はなぜ起きるのか――。理由はさまざまだ。まず考えられるのは、前述したパッケージ管理システムの使用だ。それ以外にも市販ソフトウェアの購入、開発の委託などが原因となってOSSが混入することもある。企業は「OSSが含まれているかもしれない」という意識を持たなければ、気が付かないうちに自社システムにOSSが組み込まれてしまう。
開発者がOSSのソースコードをコピー&ペーストし、自社のソースコードに組み込んでしまう場合は、非常に厄介なことになる。自社のソースコードに組み込まれてしまったOSSのソースコードは、人手による目視レビューで検出することがほぼ不可能だからだ。
自社で開発したソースコードも、OSSのソースコードも、「単なる文字列」であるという点では違いはない。そのため大量のソースコードがある中、あるソースコードが自社で開発されたものなのか、OSSとして公開されているものなのかを人が見分けることは極めて難しい。
混入したOSSを検出する
目視では見つけられないOSSの検出には「OSS検出ツール」が有効になる。OSS検出ツールは名前の通り、OSSを検出するためのツールだ。OSS検出ツールには、Synopsysの「Black Duck」など複数の選択肢がある。
各種OSS検出ツールは世界中のOSSの情報を蓄積したデータベースを保持している。簡単に言えばソースコードをスキャンし、データベースの情報と突合することでOSSの有無が分かる。
ではOSS検出ツールを導入すれば、OSSの把握と管理の問題が全て解決するかというと、必ずしもそうではない。OSS検出ツールは、目視では気付くことのできないOSSの流用の可能性を指摘するが、最終的には人手による確認が必要となる。データベースの情報が誤っていたり、ノイズとなる情報が混ざっていたりするからだ。
OSS検出ツールの結果の確認には、一定の知識やスキルが要る。本当はOSSを利用していないのに、OSS検出ツールがOSS流用の可能性を指摘することもある。利用しているOSSとは違うOSSを提示することも想定しなければならない。ユーザー企業は、OSS検出ツールが提示する結果の中から、正しい情報を取捨選択する必要があるのだ。
意図しないOSSの混入を検出するには、OSS検出ツールの使用が有効であることをお伝えした。しかしOSSに関する知識やノウハウがない、あるいはOSSの確認をするためのリソースがない、といった問題を抱える企業もある。
そのような企業にとっての選択肢として「OSS混入検査サービス」がある。ベンダーが対象のソースコードをOSS検出ツールでスキャンし、OSSの正しい情報を収集するサービスだ。ベンダーは収集した結果をレポートにまとめ、ユーザー企業に報告する。OSSに関する知見を持った専門家がスキャンや分析を実施するので、ユーザー企業は高精度なレポートを受け取れる。
意図しない「OSSの混入」の予防
上記で説明した通り、OSSはさまざまな経路からやって来る可能性がある。従ってそれぞれの経路について、OSSの使用状況を把握可能な開発プロセスを策定しておくことが重要だ。開発プロセスの策定に当たっては、2020年12月に発行されたOSS管理の国際標準「ISO/IEC 5230:2020」を参考にすることを推奨する。
ISO/IEC 5230:2020には、幾つかの要求事項がある。詳細は割愛するが、例えば
- OSSポリシーを策定し、文書化する。
- OSS管理に関わる役割(メンバー)ごとに、OSS管理に関する力量を定義する。
- 策定したOSSポリシーの存在を、OSS管理に関わる組織に周知する。
といったことが記載されている。これらはどれも、意図しないOSSの混入を防ぐための重要な要素だ。
少なくとも、OSSポリシーと開発プロセスの策定と、開発者の教育は必須だと筆者は考えている。その上でOSS混入検査サービスを利用することが、OSSのリスク対策の第一歩となる。
第3回は、把握したOSSをどのように管理すればよいのかを説明する。
著者紹介
藤原洋平(ふじわら・ようへい) ベリサーブ
2010年からベンチャー系開発企業で組み込み系ブラウザエンジンの品質保証業務に従事。2016年、ベリサーブ現職入社。OSSのリスク管理サービスを担当している。他にも、セキュリティに関するコンサルティングや脅威分析、脆弱性診断に携わる。社外では、ソフトウェアテストのワークショップを開催する若手コミュニティー「WACATE」の実行委員として活動中。
Copyright © ITmedia, Inc. All Rights Reserved.
OSSとの「上手な付き合い方」
OSS(オープンソースソフトウェア)のセキュリティリスクを知り、OSSを安全に利用するためのポイントを解説する。
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[株式会社MatrixFlow] 「物流リソース最適化」ガイド:人員・配車・傭車を出庫依頼の確定前に決めきる -
製品資料
[株式会社キーエンス] なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは -
製品資料
[株式会社セールスフォース・ジャパン] 「CRMは設計と無関係」は本当か? PLMとの融合で実現する高速開発 -
事例
[日本ヒューレット・パッカード合同会社] AIエージェントの時代にどう備える? 「新たな働き手」を支える3要素とは -
製品資料
[日本ヒューレット・パッカード合同会社] “横並びの自動化”から脱却、AI活用で生産性と競争力を高める秘訣
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
なぜ「全社配布Copilot」は使われないのか? 失敗に学ぶAI定着
-
2
法務と開発者で「言葉が通じない」問題 トヨタやソニーが語るOSS管理の真実
-
3
ChatGPTは“検索しまくり”でGeminiは“淡泊”? データが明かすAIの裏側
-
4
なぜ「Gemini 4 Argon」は出遅れたのか? Googleが狙う“逆転のシナリオ”
-
5
「中堅・中小企業のネットワーク・セキュリティ運用実態」に関するアンケート
-
6
損保ジャパンはなぜ「COBOL」を捨てなかったのか? 脱メインフレームの真相
-
7
「Wi-Fi 7」経由でWindowsが乗っ取られる? 最高権限奪取の恐怖
-
8
情報漏えいはなぜ繰り返されるのか 今すぐ見直すべき「境界」
-
9
情シスの約8割が転職や退職を意識 調査で分かった“辞めたくなる最大の理由”
-
10
【漫画付き】ひとり情シス協会が明かす、RAG導入でしくじる企業「2つの共通点」
ホワイトペーパーランキング PR
-
1
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
2
家庭用Wi-Fiルーターの業務利用は危険? 避けるべき理由と具体的な対策
-
3
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
-
4
財務部門がAIを最大限に活用する方法 無駄のない戦略的リーダーシップへの道
-
5
LLMが兵器化? 元FBI高官が鳴らす警鐘とセキュリティツール統合のポイント
-
6
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
7
なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは
-
8
生成AIを開発に導入しても効果が見えない? 実証実験で分かった成果と課題
-
9
経産省DX指針から読み解く、受発注業務デジタル化ロードマップ
-
10
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー