black duck概要のご紹介 · 2018-12-06 ·...

13
Black Duck 概要のご紹介 2018年10月 日本電気株式会社

Upload: others

Post on 23-Feb-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Black Duck概要のご紹介 · 2018-12-06 · l社内で定めたOSSの利用ルール(GPLedなOSSは利用禁⽌、 というOSSは利用禁⽌等)を、 ポリシーとしてBlackDuckに登録することで、検出されたOSSに対する自動判定が可能。

Black Duck 概要のご紹介

2018年10月日本電気株式会社

Page 2: Black Duck概要のご紹介 · 2018-12-06 · l社内で定めたOSSの利用ルール(GPLedなOSSは利用禁⽌、 というOSSは利用禁⽌等)を、 ポリシーとしてBlackDuckに登録することで、検出されたOSSに対する自動判定が可能。
Page 3: Black Duck概要のご紹介 · 2018-12-06 · l社内で定めたOSSの利用ルール(GPLedなOSSは利用禁⽌、 というOSSは利用禁⽌等)を、 ポリシーとしてBlackDuckに登録することで、検出されたOSSに対する自動判定が可能。

3 © NEC Corporation 2018

Black Duckの構成

Visibility Module ・OSSの検知・セキュリティ脆弱性情報・ライセンスの種類とリスク・運用リスク・レポート機能

Policy Module ・ポリシー管理・修正状況のトラック・通知機能の設定

Security Module

・セキュリティ脆弱性情報の追加

・セキュリティ関連機能

License ComplianceModule

・スニペットマッチング(OSS部分流⽤検知機能)・ライセンスの修正情報

の出⼒・ライセンス関連機能

Open Source Integrations

・IDE・SCM/Repo・Build/CI・Package Managers・QA/Issue Tracking

Page 4: Black Duck概要のご紹介 · 2018-12-06 · l社内で定めたOSSの利用ルール(GPLedなOSSは利用禁⽌、 というOSSは利用禁⽌等)を、 ポリシーとしてBlackDuckに登録することで、検出されたOSSに対する自動判定が可能。

4 © NEC Corporation 2018

Black Duckの機能概要

▌多種多様なOSSの自動検出機能 (Visibility Module)l業界最大規模のOSS情報DB Black Duck KnowledgeBase™と、

独自のスキャン機構を組み合わせた、⾼速かつ⾼精度なOSS検出機能を搭載。▌既知脆弱性の検出・通知機能 (Security Module)l脆弱性DBとしてNVDと独自脆弱性DBの2種類を参照。l検出された脆弱性情報は、すぐに担当者へメールで通知。

▌ライセンス管理機能(License Compliance Module)l開発製品ごとにOSSのライセンス情報の管理・編集が可能lスニペット・マッチング(OSS部分流用の検知機能)lカスタム・ライセンスの作成

▌ポリシー管理機能 (Policy Module)l社内で定めたOSSの利用ルール(GPLedなOSSは利用禁⽌、○○というOSSは利用禁⽌等)を、

ポリシーとしてBlackDuckに登録することで、検出されたOSSに対する自動判定が可能。l脆弱性検出時と同様、ポリシー違反時も担当者へメールで通知。

▌豊富な連携プラグイン (Integrations)l CIツールをはじめ、パッケージマネージャ、IDE、リポジトリマネージャなどといった、

様々な開発支援ツール群とBlackDuckを直接連携。l開発シーンに合わせた形でBlackDuckを統合。

Black Duckは、開発製品で利用しているOSSの検出から、脆弱性の検出・監視まで自動で⾏います。

Page 5: Black Duck概要のご紹介 · 2018-12-06 · l社内で定めたOSSの利用ルール(GPLedなOSSは利用禁⽌、 というOSSは利用禁⽌等)を、 ポリシーとしてBlackDuckに登録することで、検出されたOSSに対する自動判定が可能。

5 © NEC Corporation 2018

構成イメージと特徴

…src……src……src……src……src……src……src……src……src……src…

…src……src……src……src……src…

…src……src……src……src……src… 独自…src……src……src……src……src… OSSA…src……src……src……src……src… OSSB

お客様のソースコード9dd9e5…|491402…|0d2b3a…|6d173e…|37f80fd…|3e8028…|3e510e…|dc0c6b…|a33ef2…|1dc171…|Cf607b…|

データセンターBlackDuckサーバー

・Synopsys社データセンター上のDBを利⽤した⾼速なOSS照合、自動特定(※)検査対象のソースコードは社外に送信されません。

・ライセンス違反リスク、セキュリティリスクを平易なUIで可視化

Mail

JIRAチケットなど、既存開発環境と

容易に連携

・迅速な脆弱性情報入手、影響製品特定

・ポリシーベースのアラート

・過去資産の容易な移⾏

移⾏ツール

・Jenkinsなど8種のCIツールと連携し、ビルドのタイミングでBlackDuckで自動スキャンCIツール

連携

"Jenkins logo" by jenkins.io(https://jenkins.io/) is licensed under CC BY-SA 3.0

ハッシュ生成

Page 6: Black Duck概要のご紹介 · 2018-12-06 · l社内で定めたOSSの利用ルール(GPLedなOSSは利用禁⽌、 というOSSは利用禁⽌等)を、 ポリシーとしてBlackDuckに登録することで、検出されたOSSに対する自動判定が可能。

6 © NEC Corporation 2018

BlackDuckの運⽤イメージ(開発・SI)

開発・SI 出荷 保守

▌製品開発・システム構築時、利用OSSに脆弱性が存在するかどうか確認l利用している(する予定)OSSに脆弱性が存在することが分かっていれば、早い段階で

『脆弱性が対策されたバージョンを使う or 他のOSS等を代わりに使う』といった対策を打つことができます。

・Apache v2.4.17・OpenSSL v1.0.0r

...

プロジェクトとOSSリストを作成

Open SSL v1.0.0rには脆弱性有り

最新版のOpenSSLを使うように修正

・Apache v2.4.17・OpenSSL v1.0.0s

...

既知の脆弱性無し

Black Duckサーバ Black Duckサーバ

Page 7: Black Duck概要のご紹介 · 2018-12-06 · l社内で定めたOSSの利用ルール(GPLedなOSSは利用禁⽌、 というOSSは利用禁⽌等)を、 ポリシーとしてBlackDuckに登録することで、検出されたOSSに対する自動判定が可能。

7 © NEC Corporation 2018

BlackDuckの運⽤イメージ(開発・SI)

開発・SI 出荷 保守

▌製品開発・システム構築時に含まれているOSSの確認l利用している(する予定)以外のOSSの検出がある場合、意図しないOSSに早い段階で

対処でき、訴訟などのOSSライセンスに関するリスクを下げることが可能です。

クライアントPC

お客様のソースコード

ハッシュ

…src……src……src……src……src……src……src……src……src……src…

…src……src……src……src……src…

…src……src……src……src……src…

…src……src……src……src……src…

…src……src……src……sr c……src…

独自OSSAOSSB

Hubスキャナ

BDS DB

…src……src……src……src……src…

…src……src……src……src……src…

独自OSSA

利用予定OSSリスト 検出OSSリスト

差分を確認

ハッシュ情報を生成しサーバに格納BDSのDBと照合し、OSSのリスト作成

Black Duckサーバ

Page 8: Black Duck概要のご紹介 · 2018-12-06 · l社内で定めたOSSの利用ルール(GPLedなOSSは利用禁⽌、 というOSSは利用禁⽌等)を、 ポリシーとしてBlackDuckに登録することで、検出されたOSSに対する自動判定が可能。

8 © NEC Corporation 2018

BlackDuckの運⽤イメージ(開発・SI)

開発・SI 出荷 保守

▌各種CIツールと連携することでの作業効率化l JenkinsなどのCIツールとBlackDuckを連携させることで

日々のビルド作業に加えてBlackDuckでのスキャン&チェック処理も自動化

BlackDuckサーバ CIツール

ビルドのたびに自動スキャン&チェック

ポリシー(※)に違反していればアラート(→ビルドエラー) ・2/1のビルド → 成功

・2/3のビルド → 成功・2/7のビルド → 失敗⇒2/3〜2/7のコミット分にポリシー

違反の原因あり⇒⾒直しが必要な範囲を限定できます

※ポリシーとは…『重大な脆弱性を含むOSSが検出されるとアラートを出す』『GPLでライセンスされているOSSが検出されるとアラートを出す』といったような、お客様が自由に登録できるルールのことです。

Page 9: Black Duck概要のご紹介 · 2018-12-06 · l社内で定めたOSSの利用ルール(GPLedなOSSは利用禁⽌、 というOSSは利用禁⽌等)を、 ポリシーとしてBlackDuckに登録することで、検出されたOSSに対する自動判定が可能。

9 © NEC Corporation 2018

BlackDuckの運⽤イメージ(出荷)

開発・SI 出荷 保守

▌出荷時、既知の脆弱性は対策済みであることを確認l社内における出荷プロセスにおいて、 BlackDuckの脆弱性レポートを

確証に利用することもできます。

Black Duckサーバ

レポート出⼒

既知の脆弱性はゼロ→出荷OK

Page 10: Black Duck概要のご紹介 · 2018-12-06 · l社内で定めたOSSの利用ルール(GPLedなOSSは利用禁⽌、 というOSSは利用禁⽌等)を、 ポリシーとしてBlackDuckに登録することで、検出されたOSSに対する自動判定が可能。

10 © NEC Corporation 2018

BlackDuckの運⽤イメージ(出荷)

開発・SI 出荷 保守

▌出荷時、意図しないOSSの混入がないことを確認l社内における出荷プロセスにおいて、 BlackDuckの脆弱性レポートを確証に利用すること

もできます。

Black Duckサーバ

レポート出⼒

・意図しないOSSの混入はゼロ・各ライセンス条件に対処済み

→出荷OK

Page 11: Black Duck概要のご紹介 · 2018-12-06 · l社内で定めたOSSの利用ルール(GPLedなOSSは利用禁⽌、 というOSSは利用禁⽌等)を、 ポリシーとしてBlackDuckに登録することで、検出されたOSSに対する自動判定が可能。

11 © NEC Corporation 2018

BlackDuckの運⽤イメージ(保守)

開発・SI 出荷 保守

▌出荷済み製品で利用しているOSSの脆弱性も引き続き監視l過去に出荷した製品・システムで利用しているOSSに新たに脆弱性情報が公開されると、

その情報がユーザに対して通知されます。l各脆弱性情報に対応状況を記録しておくことで、対応済みかどうかが一目で分かります。

Black Duckサーバ

Aという製品のバージョン2に含まれているOSS Xに新たに脆弱性情報が公開されました。バージョンアップあるいは回避策を講じる必要があります。

・すぐに製品を修正しよう・お客様への通知も急がないと

新規公開脆弱性情報対象:製品Aバージョン:2OSS名:OSS X

・CVE-2015-****・CVE-2015-****

Page 12: Black Duck概要のご紹介 · 2018-12-06 · l社内で定めたOSSの利用ルール(GPLedなOSSは利用禁⽌、 というOSSは利用禁⽌等)を、 ポリシーとしてBlackDuckに登録することで、検出されたOSSに対する自動判定が可能。

12 © NEC Corporation 2018

保守フェーズにおけるSecurity Moduleの有効性

▌実例)2017年3月に公開されたApache Struts2の脆弱性(CVE-2017-5638)l国内の様々なサイトで情報漏えいの引き⾦となった事例l最初の情報公開から攻撃が開始されるまでの期間が2日程度l都税クレジットカードお支払サイト、住宅⾦融支援機構(以上はGMOペイメントゲートウェイ運営)、

日本貿易振興機構(JETRO)、日本郵便、ニッポン放送など、3/17までに7組織、計約80万件の個人情報が流出。(参照:http://tech.nikkeibp.co.jp/it/atcl/column/14/346926/032100893/)

Apache Foundationが脆弱性情報を公開

Black Duck独自DBも同情報を公開

PoC(攻撃コード)が一般公開される

NVDで脆弱性情報公開

IPAからの注意喚起情報

3/6 3/7 3/8 3/11国内のサイトを標的とした

攻撃が発生

Black Duck Security Module(独自DB利⽤)ならいち早く脆弱性対応に着手できます

攻撃リスク

Page 13: Black Duck概要のご紹介 · 2018-12-06 · l社内で定めたOSSの利用ルール(GPLedなOSSは利用禁⽌、 というOSSは利用禁⽌等)を、 ポリシーとしてBlackDuckに登録することで、検出されたOSSに対する自動判定が可能。