I have been working on a tool internally to comply with cybersecurity requirements to produce an SBOM (Software Bill of Materials) for our LabVIEW-based applications and source code. I've recently received approval from my employer to share this with the wider LabVIEW community (to further LabVIEW's standing in cybersecurity) so I have put a very early/initial version over on my personal GitHub site (and as a VIP for install):
https://github.com/samsharp99/labview-cyclonedx-sbom
The purpose of this toolkit is to generate SBOMs for LabVIEW source code / projects / applications using the CycloneDX JSON standard.
The production of an SBOM is a requirement when adhering to Cybersecurity standards/regulations (e.g. NIST SSDF) for secure software development and provides a mechanism by which vulnerabilities in third-party components can be detected and continuously monitored. The inclusion of license information of third-party components also helps to meet company license compliance (e.g. avoiding use of restrictive licenses).
It supports adding SBOM metadata (describing your software application) and adding components from VI Packages, NIPKGs and Installer Build Specification 'additional installers' as well as custom components.
- VIP - add VI Packages from a VIPC file or scanning LabVIEW project (using the VIPM API)
- Add NIPKGs from a list/array of NIPKG information (there is currently no way to scan for NIPKG dependencies)
- Add 'Additional Installers' from an Installer Build Specification
- Manually add custom components (e.g. third party installers, .NET assemblies, DLLs etc.)
- Export as JSON
This is in 'pre-release' stage, so I have not yet published it to VIPM.io, but I would appreciate any input/feedback from the community to help guide and drive its development.
LabVIEW Champion, CLA, CLED, CTD
(blog)