zl程序教程

您现在的位置是:首页 >  其他

当前栏目

如何使用Legitify保护你的GitHub组织资产安全

2023-03-07 09:06:36 时间

关于Legitify

是一款针对GitHub组织资产的安全增强工具,该工具由LegitSecurity开发和维护,可以帮助广大研究人员或IT技术人员轻松检测和缓解GitHub资产中潜在的各种错误配置、安全问题以及合规性等问题。

工具安装

发布版本安装

我们可以直接访问该项目的【Releases页面】下载最新版本的Legitify。其中将包含下列文档:

1、对应平台的Legitify源代码; 2、Legit Security提供的内置安全策略;

源码安装

除此之外,广大研究人员也可以使用下列命令将该项目源码克隆至本地:

git clone git@github.com:Legit-Labs/legitify.git

然后运行main.go文件即可。

工具要求

1、为了最大程度地发挥Legitify的功能,我们至少要是一个GitHub组织的拥有者或者至少是一个组织内GitHub库的管理员,但如果你只是一个管理员的话,你只能查看到跟这个代码库相关的安全策略分析结果;

2、Legitify需要使用一个GitHub个人访问令牌(PAT)来分析你提供的资源,可以通过-t参数或$GITHUB_ENV环境变量来提供,PAT要求拥有下列权限范围:

admin:org, read:enterprise, admin:org_hook, read:org, repo, read:repo_hook

工具使用

LEGITIFY_TOKEN=<your_token> legitify analyze

默认配置下,Legitify将会使用安全策略检查你所有的资源(组织、代码库、成员和Action)。

你可以使用命令行参数来控制需要检测和分析的资源:

--namespace (-n):该参数将分析和指定资源相关的安全策略;

--org:该参数将限制分析指定的组织;

LEGITIFY_TOKEN=<your_token> legitify analyze --org org1,org2 --namespace organization,member

上述命令将会测试org1和org2的组织和成员策略。

GitHub Enterprise支持

export SERVER_URL="https://github.example.com/"
LEGITIFY_TOKEN=<your_token> legitify analyze --org org1,org2 --namespace organization,member

GitLab Cloud/Server支持

export SERVER_URL="https://gitlab.example.com/"
LEGITIFY_TOKEN=<your_token> legitify analyze --namespace organization --scm gitlab

工具输出

默认配置下,Legitify支持输出可读格式的输出,也可以指定输出格式或输出机制。

输出格式

命令参数:--output-format (-f)

可选项包括:

1、human-readable; 2、json

安全策略

Legitify自带的安全策略集存储在项目的policies/github目录中,这些策略可以点击 https://legitify.dev/policies.html 查看。

除此之外,我们还可以使用“--policies-path (-p)”参数来为OPA策略指定一个自定义目录。

工具使用演示

视频地址

https://user-images.githubusercontent.com/74864790/178964716-825840a6-d714-4b1d-a41e-efa2728507a6.mp4

许可证协议

本项目的开发与发布遵循Apache-2.0开源许可证协议。

项目地址

Legitify:https://github.com/Legit-Labs/legitify

参考资料:

https://www.legitsecurity.com/ https://github.com/slsa-framework/slsa-github-generator/blob/main/internal/builders/generic/README.md https://github.com/slsa-framework/slsa-verifier https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token https://github.blog/2022-10-18-introducing-fine-grained-personal-access-tokens-for-github/ https://legitify.dev/policies.html