2024年4月17日,GitLab™ 发布了一篇博客文章,介绍了其互联网安全中心®(CIS)GitLab 基准。其目标是改善产品的安全性,并为 GitLab 客户提供加固建议。你可以从互联网安全中心®网站下载已发布的基准副本。
"CIS GitLab Benchmark 源于 CIS 与 GitLab 现场安全和产品管理团队之间的合作。在与客户进行了多次交流后,我们意识到需要一份具体的基准来指导他们的加固工作。我们对 GitLab 的产品和文档进行了深入审查,以了解我们的产品如何映射到 CIS 的软件供应链安全基准。初稿完成后,进入了 CIS 共识流程,更广泛的 CIS 基准社区能够在发布前对其进行审查并提出修改建议。"
gitlabcis 是一个 Python® 包,用于根据互联网安全中心®(CIS)GitLab 基准审计 GitLab 项目。它包含以 YAML™ 格式编写的推荐即代码。
目前有一个更大的计划,将 CIS 基准作为合规标准添加到合规遵循报告中。
在开发此工具的过程中,作者为 GitLab 产品贡献了 2 个功能(#39):
[[TOC]]
gitlabcis 需要以下令牌之一:
你可以将令牌作为选项传递,或将其存储为环境变量:
GITLAB_TOKEN - (可选) 环境变量--token / -t - (可选) gitlabcis 令牌选项你可以将令牌作为选项传递,或将其存储为环境变量:
GITLAB_OAUTH_TOKEN - (可选) 环境变量--oauth-token / -ot - (可选) gitlabcis 令牌选项read_api 范围。有多种方式可以下载该扫描器。请参阅以下内容:
从 pypi.org 安装 gitlabcis:
pip install gitlabcis
从包注册表安装 gitlabcis:
pip install gitlabcis --index-url https://gitlab.com/api/v4/projects/57279821/packages/pypi/simple
如果尚未完成,你需要将以下内容添加到你的 .pypirc 文件中。
[gitlab]
repository = https://gitlab.com/api/v4/projects/57279821/packages/pypi
username = __token__
password = <your personal access token>
通过克隆或我们的版本发布页面从源代码安装 gitlabcis:
# make a clone (or create a local fork) of the repo
git clone [email protected]:gitlab-security-oss/cis/gitlabcis.git
cd gitlabcis
make install
预期语法如下:
gitlabcis URL OPTIONS

从 shell 生成报告:
gitlabcis https://gitlab.example.com/path/to/project --token $TOKEN
生成 JSON 报告: (使用 $GITLAB_TOKEN 变量时,无需指定 --token 选项)
gitlabcis \
https://gitlab.example.com/path/to/project \
-o results.json \
-f json
要执行单个控制项:
gitlabcis \
https://gitlab.example.com/path/to/project \
-ids 1.2.3 # or multiple: 2.3.4 3.4.5 etc
扫描实例或组下的所有子组和项目(默认深度为 1 层):
gitlabcis https://gitlab.example.com/path-to-group --nest
扫描所有子组和项目,深度最多 2 层,并将每个实体的 JSON 文件写入 ./results/:
gitlabcis \
https://gitlab.example.com/path-to-group \
--nest \
--depth 2 \
--output-dir results \
-f json
以无限深度和文件名前缀进行扫描:
gitlabcis \
https://gitlab.example.com/path-to-group \
--nest \
--depth 0 \
--prefix "audit_" \
--output-dir results \
-f json
请查阅 gitlabcis 的文档(./docs)目录 - 缺少某些内容? 欢迎通过新建问题进行贡献。
gitlabcis 使用 MIT 许可证 发布,可在 ./LICENSE 文件中查看。
更多信息请参阅 ./CHANGELOG.md。
请查阅贡献文档(CONTRIBUTING.md)的标题部分以了解行为准则。
请查阅我们的安全策略(docs/SECURITY.md)文档,其中概述了如何披露漏洞。
你想要贡献吗?- 太好了!请查阅贡献文档(CONTRIBUTING.md)了解更多信息。
| 免责声明 | 说明 |
|---|
| 此工具假设用户使用 GitLab 处理所有事情 |
|
| 此工具无法审计所有推荐 |
|
| 此工具不会在你的 GitLab 实例、组或项目上执行任何写操作。不会执行任何写入操作。 |
|
| 这不是 GitLab 的官方产品 |
|