Startup-SBOM:一款针对RPM和APT数据库的逆向安全工具
2024-8-16 20:55:5 Author: www.freebuf.com(查看原文) 阅读量:2 收藏

freeBuf

主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

关于Startup-SBOM

Startup-SBOM是一款针对RPM和APT数据库的逆向分析与安全检测工具,该工具本质上是一个简单的 SBOM 实用程序,旨在提供正在执行的包的内部视图,可以帮助广大研究人员枚举所有软件包以及可执行文件、服务和版本。

该工具的流程和目标很简单,可以帮助我们清晰地了解 APT 安装的软件包(目前正在为 RPM 和其他软件包管理器实现此功能),主要用于检查哪些软件包正在实际执行。

支持的镜像

目前该工具适用于基于 Debian 和 Red Hat 的镜像,工具可以保证 Debian 的输出,但是 Red-Hat 仍然需要做一些工作,因为还并不完美。

工具要求

rich==13.4.2

pydantic==2.6.4

graphviz==0.20.1

rpm==0.1.0

工具安装

由于该工具基于Python 3开发,因此我们首先需要在本地设备上安装并配置好最新版本的Python 3环境。

接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:

git clone https://github.com/morpheuslord/Startup-SBOM.git

然后切换到项目目录中,使用pip命令和项目提供的requirements.txt安装该工具所需的其他依赖组件:

cd Startup-SBOM

pip3 install -r requirements.txt

工具使用

参数选项

描述

--analysis-mode

指定操作模式。默认为static。选项为static和chroot。

--static-type

指定静态模式的分析类型。仅在静态模式下是必需的。选项有info和service。

--volume-path

指定已安装卷的路径。默认值为/mnt。

--save-file

指定 JSON 输出的输出文件。

--info-graphic

指定是否为 CHROOT 分析生成可视化图表。默认值为True。

--pkg-mgr

手动指定包管理器或者不添加此选项以进行自动检查。

工具运行演示

静态信息分析

该命令以静态分析模式运行程序,具体使用信息目录分析方法。它分析安装在位于/mnt的已安装卷上的软件包,并将输出保存在名为output.json的 JSON 文件中。最后,它将为 CHROOT 分析生成可视化图表:

python3 main.py --pkg-mgr apt --analysis-mode static --static-type info --volume-path /mnt --save-file output.json

静态服务分析

该命令以静态分析模式运行程序,具体使用服务文件分析方法。它分析安装在位于 的已安装卷上的软件包/custom_mount,并将输出保存在名为output.json的 JSON 文件中。但它不会为 CHROOT 分析生成可视化图表:

python3 main.py --pkg-mgr apt --analysis-mode static --static-type service --volume-path /custom_mount --save-file output.json --info-graphic False

带有或不带有图形输出的 Chroot 分析

此命令以 chroot 分析模式运行程序,它分析安装在位于/mnt的已安装卷上的软件包,并将输出保存在名为 的 JSON 文件中output.json。最后,它会为 CHROOT 分析生成可视化图表(--info-graphic保持True/False即可):

python3 main.py --pkg-mgr apt --analysis-mode chroot --volume-path /mnt --save-file output.json --info-graphic True/False

RPM静态分析

python3 main.py --pkg-mgr rpm --analysis-mode static --volume-path /mnt --save-file output.json

带有或不带有图形输出的RPM Chroot 分析

python3 main.py --pkg-mgr rpm --analysis-mode chroot --volume-path /mnt --save-file output.json --info-graphic True/False

图形化数据输出(Chroot)

APT Chroot

RPM Chroot

许可证协议

本项目的开发与发布遵循MIT开源许可协议。

项目地址

Startup-SBOM:【GitHub传送门

本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022


文章来源: https://www.freebuf.com/sectool/408895.html
如有侵权请联系:admin#unsafe.sh