技术文档 | 使用 OpenSCA 批量扫描 Gitlab 仓库,盘点资产安心过节
按照下述教程快速批量扫描您的仓库,一旦新的攻击或 0Day 出现,通过资产清单即可快速定位漏洞及影响范围、有效缩短响应时间。
安装 opensca-cli
方法一:一键安装
-Windows(需要 PowerShell)
iex "&{$(irm https://raw.githubusercontent.com/XmirrorSecurity/OpenSCA-cli/master/scripts/install.ps1)}"
# 如果在下载中遇到网络问题,可尝试使用以下命令
iex "&{$(irm https://gitee.com/XmirrorSecurity/OpenSCA-cli/raw/master/scripts/install.ps1)} gitee"
- Linux/MacOS
curl -sSL https://raw.githubusercontent.com/XmirrorSecurity/OpenSCA-cli/master/scripts/install.sh | sh
# 如果在下载中遇到网络问题,可尝试使用以下命令
curl -sSL https://gitee.com/XmirrorSecurity/OpenSCA-cli/raw/master/scripts/install.sh | sh -s -- gitee
方法二:使用包管理器安装
- Windows (通过 Winget 安装)
winget install opensca-cli
- Windows (通过 Scoop 安装)
scoop bucket add extras
scoop install extras/opensca-cli
- MacOS/Linux (通过 Homebrew 安装)
brew install opensca-cli
方法三:手动安装
从 GitHub 或 Gitee 仓库下载对应系统和处理器架构的压缩包,解压到任意目录即可使用。
生成 Gitlab Token
登录 Gitlab > User Settings(用户设置) > Access Tokens(访问令牌)
新建令牌并授予 read_repository 权限
下载脚本
curl -O https://raw.githubusercontent.com/XmirrorSecurity/OpenSCA-cli/master/scripts/gitlab_scan.py
安装依赖
- python 3.x: https://www.python.org/downloads/
- python-gitlab: pip install python-gitlab
配置脚本
修改 gitlab_scan.py 中 gitlab_url 和 gitlab_token 填入 gitlab 地址和访问令牌
# ...
if __name__ == "__main__":
scan_gitlab(
gitlab_url="gitlab 地址",
gitlab_token="gitlab token",
)