リネオブログ

Vigiles ファーストステップガイド 3 「Build root 環境の Vigiles 導入手順」

2024 年 09 月 02 日   Vigiles サポート

概要

本ブログでは、「Vigiles ファーストステップガイド」として、Vigilesをご活用いただくための必要な情報を紹介いたします。

第三回は、「Build root環境の Vigiles 導入手順」として、Buildroot 環境で Vigiles が利用できるようになるまでの導入手順について解説します。

Buildroot 環境 での Vigiles の導入手順

1. Vigiles 外部設定ファイル を Buildroot 環境に組込む

Vigiles 外部設定ファイルについて

Timesys では Buildroot ビルドシステムから Vigiles を使用するための外部設定ファイルを提供しています。

Buildroot 用 Vigiles 外部設定ファイルは github で提供されていて、Timesys の vigiles-buildroot リポジトリを clone することで入手できます。
この外部設定ファイルを追加することで make 時に vigiles-check ターゲットが指定できるようになり、CVE チェックを始め、Vigiles へアップロードする manifest ファイルの作成ができるようになります。

API Key ファイルのダウンロード

Vigiles 外部設定ファイルを利用する前に準備として Linuxlink のAPI Key ファイルをダウンロードしておきます。

この API Key は vigiles-check ターゲット実行時に CVE チェックの詳細表示をする、また自動的に Vigiles へアップロードする、といった場合に必要になります。 manifest ファイルの作成や CVE チェックのサマリ表示については、API Key ファイルの設定がなくても実行可能です。

API Key は LinuxLink サイト、ユーザプロファイルページから以下の手順で入手します。

  1. LinuxLink サイトへログイン
  2. LinuxLink サイト右上のユーザ名をクリックしメニューを表示
  3. メニューから Profile を選択
  4. Profile ページ内 API Keys を展開
  5. Download key file を選択して Key ファイルをダウンロードして保存

ダウンロードした Key ファイルは

  • ホーム/timesysディレクトリ下へ linuxlink_key という名前で配置
  • Buildroot の menuconfig 内で Timesys LinuxLink Key Location で Key ファイルを指定する
のいずれかを行うことで有効になります。

外部設定ファイルの追加

それでは Buildroot への外部設定ファイルの入手と設定、 CVE スキャンと manifest ファイルの作成までの手順を紹介します。

まず最初に github の vigiles-buildroot リポジトリを clone します。

Buildroot のディレクトリへ移動します。

cd /opt/buildroot-vigiles/

vigiles-buildroot を clone します。

git clone https://github.com/TimesysGit/vigiles-buildroot

次に clone した vigiles-buildroot を指定して make menuconfig を起動します。

Buildroot ディレクトリへ移動して make コマンドの後に BR2_EXTERNAL で vigiles-buildroot への PATH を指定して menuconfig を実行します。

cd buildroot
$ make BR2_EXTERNAL=/opt/buildroot-vigiles/vigiles-buildroot menuconfig

vigiles-buildroot を指定することで、以下のメニューが追加されます。
External options 下に Enable Timesys Vigiles CVE Check が追加され、デフォルトでは ON となります。

External options--->
[*]Enable Timesys Vigiles CVE Check

API Key は以下のメニューで設定可能で、デフォルトでは以下が設定されています。

[*] ($(HOME)/timesys/linuxlink_key) Timesys LinuxLink Key Location

API Key を別の場所に配置している場合は、配置している API Key ファイル(PATH含む)に変更してください。

設定が終わったら保存して終了します。

make の実行

Vigiles での CVE スキャンや manifest ファイルの作成は make で vigiles-check ターゲットを指定することで実行されます。

vigiles-check を実行した際、まだ構築されていない場合は先に構築が実行され、そのあと vigiles-check が実行されます。

make vigiles-check

vigiles-check ターゲットでは config 情報の解析や manifest ファイルの作成、ここでの情報をベースにした CVE スキャンが実行されます。

実行が終わると CVE スキャンの結果情報が表示されます。

また output の下に vigiles というディレクトリが作成され、その下に manifest ファイルや CVE スキャン結果テキスト、フィルタに使用されている kernel や u-boot の config ファイルなどが置かれます。

2. Vigiles サイト上に manifest ファイルをアップロードする

manifest ファイル

vigiles ディレクトリ配下に下記のファイル名でマニフェストファイルが保存されます。
buildroot-ターゲット-manifest.json

manifest ファイルの手動アップロード

作成された json 形式の manifest ファイルを Vigiles へ登録することで、その後 SBOM としての管理や GUI での CVE レポート、CVE DashBoard が利用できるようになります。 手動での登録手順は Vigiles ファーストステップガイド「サンプル Yocto Manifest ファイルの登録手順」の「4. Yocto Manifest ファイルの登録」以降をご確認ください。

manifest ファイルの自動アップロード

menuconfig で 有効な API Key ファイルが指定されていれば、自動的に manifest ファイルが Vigiles へアップロードされます。
アップロード先は menuconfig 内 Timesys Vigiles Dashboard Config Location で Product もしくはフォルダの Dashboard Config ファイルを指定することによって、任意の Product、サブフォルダへアップロードすることも可能です。
また WHITELIST 指定する CVE の設定等、他にも Enable Timesys Vigiles CVE Check の下 menuconfig で指定できる項目がありますので、項目の詳細等については vigiles-buildroot 内の README を参照ください。

以上が Buildroot へのVigiles外部設定ファイル、vigiles-buildroot の導入方法、となります。

組込みLinuxセキュリティ基礎講座
Vigiles サポート
Yocto Project よもやま話
Yocto よもやま話 第 14 回 「Yocto 4.3 Nanbield リリース」
Yocto よもやま話 第 14 回 「Yocto 4.3 Nanbield リリース」

2024 年 03 月 26 日 Yocto Project よもやま話

Yocto よもやま話 第 13 回 「Yocto Project の最新動向 2023 夏」
Yocto よもやま話 第 13 回 「Yocto Project の最新動向 2023 夏」

2023 年 07 月 25 日 Yocto Project よもやま話

Yocto よもやま話 第 12 回 「Yocto Project 始めます その 2」
Yocto よもやま話 第 12 回 「Yocto Project 始めます その 2」

2023 年 06 月 20 日 Yocto Project よもやま話

Linux 技術ネタ
RISC-Vについて学ぶ-後編
RISC-Vについて学ぶ-後編

2024 年 01 月 10 日 Linux 技術ネタ

RISC-Vについて学ぶ-前編
RISC-Vについて学ぶ-前編

2023 年 12 月 12 日 Linux 技術ネタ

イベントレポート
EdgeTech+ West 2024 出展レポート
EdgeTech+ West 2024 出展レポート

2024 年 07 月 26 日 イベントレポート

Advanced Technology Forum 2024 Summer 参加レポート
Advanced Technology Forum 2024 Summer 参加レポート

2024 年 07 月 09 日 イベントレポート

リクルート
新卒採用、絶賛募集中!
新卒採用、絶賛募集中!

2023 年 05 月 30 日 リクルート

国立大学オンライン研修レポート 2022
国立大学オンライン研修レポート 2022

2022 年 09 月 27 日 リクルート

信州リネオ便り
リネオに雪が積もりました
リネオに雪が積もりました

2024 年 11 月 29 日 信州リネオ便り

社内BBQを開催しました!
社内BBQを開催しました!

2024 年 09 月 25 日 信州リネオ便り

夏季休業明け、スイカを頂きました!
夏季休業明け、スイカを頂きました!

2024 年 08 月 20 日 信州リネオ便り

ソリューション統括部
シリコンバレー探検記 2019 ~番外編~
シリコンバレー探検記 2019 ~番外編~

2019 年 12 月 10 日 ソリューション統括部

シリコンバレー探検記 2019 ~後編~
シリコンバレー探検記 2019 ~後編~

2019 年 12 月 10 日 ソリューション統括部

シリコンバレー探検記 2019 ~前編~
シリコンバレー探検記 2019 ~前編~

2019 年 12 月 10 日 ソリューション統括部

マーケティング統括部
大成功決起大会!!(ET2019)
大成功決起大会!!(ET2019)

2019 年 12 月 13 日 マーケティング統括部

ESEC 2019 決起大会
ESEC 2019 決起大会

2019 年 04 月 25 日 マーケティング統括部

シリコンバレー探検記 その 2
シリコンバレー探検記 その 2

2018 年 12 月 18 日 マーケティング統括部