オープンソース活用研究所 | オープンソースの脆弱性にどう対処するべきか

オープンソースの脆弱性にどう対処するべきか

オープンソース活用研究所

2016年02月05日
オープンソース活用研究所 所長 寺田雄一

2015年12月2日に、オープンソース活用研究所主催による「オープンソースの脆弱性とその対策」セミナーが開催されました。本セミナーは「全体的なセキュリティの動向について」「オープンソース品質調査レポートの解説」「オープンソースの脆弱性にどう対処するべきか」の三本立てとなっており、全体像から具体的なアプローチについて紹介しました。

今回は、株式会社オージス総研の吉井雅人氏よる講演、「オープンソースの脆弱性にどう対処するべきか」の内容を筆者がご紹介します。

オープンソースはインフラ、その品質と脆弱性

オープンソースの利用は、スマートフォン、テレビ、プリンタ、ゲームなど多様に広がり、Githubに登録されているオープンソースプロジェクトは既に1,000万にも膨れあがっているそうです。

オープンソースがインフラとなった今、その脆弱性についてもメディアに取り上げられることが多くなりました。これまで脆弱性はCVEというもので取り上げられていましたが、昨年のOpenSSLの脆弱性問題では、Heartbleedという名前が付き、ロゴやホームページが作成されるほど世間を騒がせました。その後に続く、ShellShockやGhostも同様で、社会現象のように取り上げられていく傾向は今後も続いていくだろう、というのが講師の見解です。

オープンソースがインフラとなった今、その利用において事件が発生した場合、企業は適切な対応をしなければ、企業ブランドを傷付けてしまうおそれがあるとのことです。

社会的な取り組み、オープンソースの品質向上

Apache Software Foundationなどは大企業の寄付や大企業自らソースコードを保守するケースが多く活発化していますが、古くからのオープンソースコンポーネントは、ボランティアベースのコミュニティが保守しているケースも多いとのこと。Bashは開発者一人で保守していたということです。

こういった資金的に苦しいが、重要なオープンソースのコンポーネントを、企業群が集まり支えていく、Core Infrastructure Initiativeという団体も生まれ、オープンソースの品質向上が社会的な取り組みとして進んでいるそうです。

内包するコンポーネントの脆弱性のリスク

OSSは気軽に利用しやすく、ソースコードもコピー&ペーストで簡単に流用できてしまう今、ソフトウェアを構成するコンポーネントとそのコンポーネントの脆弱性の有無を把握していくことが大変に重要となってきています。

コンポーネントをユーザ作成コード、サードパーティのコード、OSSと3区分とし、それぞれのバージョン、ライセンス、その脆弱性を管理することで、はじめて的確な対策を進めることができるとのことです。

Palamidaの検出精度の高さ

Palamidaは、ソフトウェアに含まれるOSSとそのライセンスを自動検出するツールです。様々な検出ロジックによりOSSの流用元を検出し、米国政府が提供する脆弱性を一元的に管理するNVD(National Vulnerability Database)のデータを元に脆弱性の検出を行うそうです。

オープンソースからコピー&ペーストしたソースコードも数行あれば検出ができるそうです。

PalamidaとCoverityの違い

バイナリファイル内にある既知の脆弱性はPalamidaが得意で、未知の脆弱性の検知はCoverityが得意です。お互い補完関係とすることでカバー率の高い脆弱性の検出ができるとのことでした。

高度な技術が必要な脆弱性検出

デジタル機器など比較的メモリが潤沢に使える場合は、オープンソースがそのまま利用されているため比較的オープンソースの特定は容易です。しかしチップへの組込みなどの場合は、使用メモリを最小化するために不要なコードを削除して利用するケースがあるそうです。このような場合は、オープンソースの特定や脆弱性の特定は非常に難しく、高い専門性と分析技術が必要になるとのことでした。

専門性の高いオープンソース診断サービス

オージス総研は、オープンソースのバージョンやライセンス特定には8年の実績を持ち、その専門性から詳細な検査内容をもとにレポートを行なっているそうです。

事例紹介では、ある企業で診断を行なうと、長年使ってきていたファイルの著作権が、実は競合他社のものだったケースもあったそうです。

診断レポートはWeb形式の他、Excel形式もあり非常に見やすいです。

専門家やツールを活用し、企業を守る

脆弱性の対策としては、まずはじめにソフトウェアを構成するコンポーネントを特定する必要があります。また今後、ソフトウェアの複雑化に伴い、特定は更に困難になっていきます。また未知の脆弱性が発覚された場合、素早く対応するための仕組み作りは企業として急務となっています。
最後に筆者より、必要に応じて専門家への相談やツールの活用など、ご検討されてはいかがでしょうか。


OSSNEWSに広告を掲載しませんか?

著者プロフィール

オープンソース活用研究所 所長 寺田雄一

1993年、株式会社野村総合研究所(NRI)入社。 インフラ系エンジニア、ITアーキテクトとして、証券会社基幹系システム、証券オンライントレードシステム、損保代理店システム、大手流通業基幹系システムなど、大規模システムのアーキテクチャ設計、基盤構築に従事。 2003年、NRI社内に、オープンソースの専門組織の設立を企画、10月に日本初となるオープンソース・ソリューションセンター設立。 2006年、社内ベンチャー制度にて、オープンソース・ワンストップサービス 「OpenStandia(オープンスタンディア)」事業を開始。オープンソースを活用した、企業情報ポータル、情報分析、シングルサインオン、統合ID管理、ドキュメント管理、統合業務システム(ERP)などの事業を次々と展開。 オープンソースビジネス推進協議会(OBCI),OpenAMコンソーシアムなどの業界団体も設立。同会の理事、会長や、NPO法人日本ADempiereの理事などを歴任。 2013年、NRIを退社し、株式会社オープンソース活用研究所を設立。

最新TOPICS

【講演資料を公開】4/25「OpenAMによるシングルサインオンの概要」(2017年05月25日 09:15)

2017年04月25日(火)16:30 ~ 18:45 牛込箪笥地域センター にて「OpenAMによるシングルサインオンの概要」と題したセミナーを開催しました。当日は、お陰さまで満席となり、大盛況のうちに終了する事ができました。 講演後の質疑応答の際には、多くのご質問を頂戴し活発な議論が行われました。 来場者アンケートでも、 「リバースプロキシ方式と代理認証方式の違いが、理解できた点が大きか...

関連オープンソース

Snort(スノート)

  • セキュリティソフト

Snort(スノート)とは、ネットワーク型IDS(不正侵入検知システム)です。ネットワーク上を流れるパケットをキャプチャーして、不審なパケットの検出を行います。

WSO2 Identity Server(ダブルエスオーツー アイデンティティ サーバ)

  • シングルサインオン

WSO2 Identity Server(ダブルエスオーツー アイデンティティ サーバ)とは、シングルサインオンソリューションです。アプリケーション/API/クラウド/モバイル間で統合ID管理を行います。

LibreSSL(リブレ エスエスエル)

  • ネットワーク系ツール

LibreSSL(リブレ エスエスエル)とは、SSL/TLSプロトコルのオープンソース実装(通信用ソフトウェア)で、「OpenSSL」の派生改良版です。圧倒的シェアを持つが問題が多い「OpenSSL」を代替できるものとして期待されています。

Vuls(バルス)

  • セキュリティソフト

Vuls(バルス)とは、脆弱性スキャンツールです。Linux(FreeBSD)系OS/各種ミドルウェア/各種フレームワークなどに対する脆弱性存在を検査し、詳細情報をレポーティングします。

OpenSSH(オープンエスエスエイチ)

  • ネットワーク系ツール

OpenSSH(オープンエスエスエイチ)。ネットワーク経由通信を暗号化する「SSH」のオープンソース実装です。おもにUNIX/Linuxサーバに対するネットワーク経由でのリモートログインに使用します。

FreeRADIUS(フリーラディウス)

  • 認証サーバ

FreeRADIUS(フリーラディウス)。オープンソースの高機能RADIUSサーバです。認証用プロトコル「RADIUS」機能を実現するデファクトスタンダードとして広く使われています。

OpenSSL(オープンエスエスエル)

  • ネットワーク系ツール

OpenSSL(オープンエスエスエル)。オープンソースSSL/TLS暗号化ライブラリです。世界中のWebサイトで圧倒的シェアを持っており、事実上の業界標準となっています。

Apache DS(アパッチディーエス)

  • 認証サーバ

Apache DS(アパッチディーエス)。オープンソースのLDAP(ディレクトリ)サーバです。「Apache Directory」プロジェクトで開発されています。

389 Directory Server(389ディレクトリサーバ)

  • 認証サーバ

389 Directory Server(389ディレクトリサーバ)。オープンソースディレクトリサーバです。「Fedora Directory Server」の後継で、商用製品の流れを受けており、ユーザフレンドリーなGUIツールの充実などが特徴です。

OpenIDM(オープンアイディーエム)

  • ID管理

OpenIDM(オープンアイディーエム)。高い柔軟性と拡張性を備え、エンタープライズ/クラウド/モバイル/ソーシャル/レガシーなど多様な環境において、ユーザアカウントのプロビジョニングとライフサイクルの一元管理を実現するID管理製品です。

LISM(リズム)

  • ID管理

LISM(リズム)。シンプルな使いやすさが特徴のID統合管理ソリューションです。

OpenAM(オープンエーエム)

  • シングルサインオン

OpenAM(オープンエーエム)。「OpenSSO」の後継製品として、認証、アクセス認可、フェデレーションなどの機能を備えた、Webアプリケーションやクラウドサービスに対してのシングルサインオンを実現するオープンソース高機能認証ソリューションです。

OpenLDAP(オープンエルダップ)

  • 認証サーバ

OpenLDAP(オープンエルダップ)。最も多くの導入実績があり、ディレクトリサービスを提供するオープンソースLDAPサーバです。

OpenDJ(オープンディージェー)

  • 認証サーバ

OpenDJ(オープンディージェー)。OpenAMに内蔵されており、先進的なレプリケーションアーキテクチャや「REST API」を搭載したLDAP準拠の高機能オープンソースディレクトリサーバです。

バックナンバー

関連記事

  • オープソース書籍(サイド)

OSS×Cloud ACCESS RANKING

facebook

twitter