| Project/Area Number |
23K28065
|
| Project/Area Number (Other) |
23H03375 (2023)
|
| Research Category |
Grant-in-Aid for Scientific Research (B)
|
| Allocation Type | Multi-year Fund (2024) Single-year Grants (2023) |
| Section | 一般 |
| Review Section |
Basic Section 60050:Software-related
|
| Research Institution | Nanzan University |
Principal Investigator |
井上 克郎 南山大学, 理工学部, 教授 (20168438)
|
| Co-Investigator(Kenkyū-buntansha) |
眞鍋 雄貴 (真鍋雄貴) 福知山公立大学, 情報学部, 講師 (20625339)
横森 励士 南山大学, 理工学部, 教授 (40379152)
KULA RAULA・GAIKOVINA 大阪大学, 高等共創研究院, 教授 (80749094)
神田 哲也 ノートルダム清心女子大学, 情報デザイン学部, 准教授 (90780726)
|
| Project Period (FY) |
2024-04-01 – 2027-03-31
|
| Project Status |
Granted (Fiscal Year 2024)
|
| Budget Amount *help |
¥18,590,000 (Direct Cost: ¥14,300,000、Indirect Cost: ¥4,290,000)
Fiscal Year 2026: ¥4,550,000 (Direct Cost: ¥3,500,000、Indirect Cost: ¥1,050,000)
Fiscal Year 2025: ¥4,550,000 (Direct Cost: ¥3,500,000、Indirect Cost: ¥1,050,000)
Fiscal Year 2024: ¥4,550,000 (Direct Cost: ¥3,500,000、Indirect Cost: ¥1,050,000)
Fiscal Year 2023: ¥4,940,000 (Direct Cost: ¥3,800,000、Indirect Cost: ¥1,140,000)
|
| Keywords | SBOM / 利用状況 / SBOM利用ツール / SBOMデータセット / SPDX / メタデータ / 依存解析 / ソフトウェアエコシステム / 依存関係分析 / Debian / 脆弱性 / 改竄検出 |
| Outline of Research at the Start |
SPDXの枠組みを用いたメタデータを設計してエコシステムを表現し、その透明性、健全性、安全性等の分析やプロダクト再構成の自動化、効率化を行うために、メタデータを用いたエコシステムの分析基盤を開発する。これによりSPDXは単なるOSSライセンスの表記の手段から、エコシステム全体の分析やプロダクト再構成の情報のための記録場所となるとともに、プロダクトの特性や他のプロダクトとの関連などの情報も可読性の高い形式で表記するメタデータとなる。また、メタデータを効率的に生成する新たな手法を考案し、その評価も試みる。
|
| Outline of Annual Research Achievements |
ソフトウェアエコシステムを構成するプロダクトの安全性や健全性を検証するために、ソフトウェア部品表(SBoM)を用いることが推奨され、Linux Foundationが開発したSPDXがその一実現方法として普及が進んでいる。本研究では、様々なプロダクトの特性や関連の情報をSBOMの要素として抽出する方法を確立する。また、得られた種々の情報からエコシステムモデルを作り、その安全性や健全性を効率的に分析する方法を開発する。さらにSPDXの表記法や分析技術の普及を図り、分析情報付きのSPDX形式のメタデータが広く普及・流通することを目指している。 本年度は、SPDXをはじめとしたSBOMの普及状況を、ソフトウェア開発者が利用する代表的なQ&AサイトであるStackOverflowを利用して、分析した。その結果、一般の開発者がSBOMを利用するにあたり実際に直面した課題は「SBOM ツールのユースケースの網羅性に不足がある」、「各種要件を満たすSBOMを生成できない」、「SBOM ツールに不具合がある、または利用方法が不明瞭である」の3つであることがわかった。 また、SBOMを用いてソフトウェアの依存関係に関する情報を提供するSBOM利用ツールが開発されているが、その評価用のためのSBOMデータセットはほとんど存在していない。このため、SBOM データセットを効率よく生成する方法を開発した。これはオープンソースのSBOM 生成ツールを利用して不完全なSBOM の生成し、自動修正と手動修正を経て,最終的に完全なSBOM を作成している。 このほか、SPDXの簡略化手法や、ライブラリ部品の分類手法、ソフトウェアエコシステムにおける脆弱性情報の分類手法などの研究を行った。
|
| Current Status of Research Progress |
Current Status of Research Progress
2: Research has progressed on the whole more than it was originally planned.
Reason
当初目的としたSBOMの利用状況に関しての研究は、StackOverflowからデータ収集・分析し、利用に関しての問題点があることがわかり、その後の研究方針に役立てることができた。また、この研究結果の発表も行った。 また、ソフトウェアの実行環境からSBOMを作成する研究に関しても、SBOM生成ツールは一般に不完全な情報しか出力しないことが判明し、それを自動的に補い、さらに不足する部分は手動で補う方法について開発することができ、完全なSBOMのデータセットを作成することができた。 今後、このデータセットを拡充していろいろなSBOMを蓄積し、評価していく予定である。
|
| Strategy for Future Research Activity |
引き続きSPDXの利用ツールのためのSBOMデータセットの充実を図る。データセットの構築方針はほぼ決まったが、まだ100個程度のSBOMしか生成することができていない。これを1000個近くのデータセットまで拡充したい。 また、C/C++のソフトウェアパッケージに関して、それらを管理するための共通的なパッケージマネージャは存在しないが、それらに対しても、SBOMを自動生成するための手法を検討し、開発する。これらは、単に静的な情報の収集だけでは困難と思われるので、リンク時の情報を活用し、実質的に有用なライブラリ情報を収集するようにする。また、この方式で生成したSBOMの評価も行いたい。 そのほか、SBOMに含まれるソフトウェアライセンスの自動判定に関して、機械学習を用いた効率の良い手法の開発も行いたい。 SBOMに関して、新しい版が公開され、ソフトウェアに対するSBOMのみならず、データや機械学習モデルに対しても応用が期待されている。これらの応用に関しても、現実的に何が問題になるか、どのような自動化手法でSBOMが作られるか、などを検討したい。
|