墨菲安全文档文档
最佳实践
解决方案
常见问题
名词解释
数据保护
问题反馈
🌟star开源项目 (opens new window)
版本更新
最佳实践
解决方案
常见问题
名词解释
数据保护
问题反馈
🌟star开源项目 (opens new window)
版本更新
常见问题
  • 新手快速入门

  • 关于集成

    • GitHub
    • GitHub Actions
    • GitLab
    • GitLab CI
    • Gitee
    • Git指定项目检测
    • JFrog
    • Nexus
    • Harbor
    • Docker指定项目检测
    • Jenkins
    • CLI客户端
    • JetBrains IDE
    • 文件上传检测
    • Svn指定项目检测
    • 组件清单检测
    • 集成设置与管理
  • 关于代码托管

  • 关于项目管理

  • 关于安全问题

  • 关于检测问题

  • 关于漏洞知识库

  • 关于私有化部署

  • 关于系统异常

  1. 常见问题
  2. /
  3. 关于集成
  4. /
  5. GitLab CI

¶ GitLab CI集成

更新时间: 2023-07-17 16:27:15

¶ 一、功能简介

将墨菲安全代码安全检测工具集成到 GitLab CI 中,可对每一次代码更新实时进行安全漏洞检测,并快速修复这些安全漏洞。

¶ 集成效果

img

img

¶ 二、操作步骤

如果您使用过 GitLab CI,请直接从 2.4 开始操作

¶ 2.1 服务器安装 GitLab Runner

为了使用 GitLab 的 CI/CD 功能,我们需要在一台能够访问到 GitLab 服务的机器上安装 GitLab Runner,GitLab Runner 就像是一个工作机器人,专门负责执行你在 GitLab上定义的各种 CI 任务

  • 在准备安装 GitLab Runner 的机器上,执行以下命令:
curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh | sudo bash
yum install gitlab-runner
gitlab-runner start

¶ 2.2 查看 GitLab Runner 令牌

  • 点击管理员选项卡,点击 CI/CD -> Runner->复制注册令牌

img

img

img

¶ 2.3 注册 GitLab Runner

  • 在安装了 GitLab Runner 的机器上,执行下面的命令来完成注册(注意需要替换的内容)
gitlab-runner register \
--non-interactive \
--url "gitlab服务地址" \
--registration-token "gitlab-token" \
--executor "shell" \
--description "描述" \
--tag-list "tag标签" \
--run-untagged \--locked="false"

¶ 2.4 安装墨菲安全 CLI 工具

wget -q https://s.murphysec.com/release/install.sh -O - | /bin/bash

¶ 2.5 安装 python 以及依赖

  • 示例为 centos 安装 python3.6
yum install -y python3 wget
pip3 install requests argparse python-gitlab

¶ 2.6 创建 GitLab CI 变量

  • 进入项目仓库->设置-->CI/CD-->变量

img

img

¶ 2.6.1 变量一:墨菲安全访问令牌

变量的键为:MURPHYSEC_TOKEN

变量的值为:通过以下方式获取到的墨菲安全访问令牌

  • 登录墨菲安全官网(https://www.murphysec.com),在设置->访问令牌页面中,点击按钮复制访问令牌

img

¶ 2.6.2 变量二:GitLab 访问令牌

分别添加变量:

  • MURPHYSEC_TOKEN:墨菲安全访问令牌

  • GITLAB_URL:GitLab 服务地址(不指定不会提交 issue)

  • GITLAB_TOKEN:GitLab 当前项目访问令牌(指定 GITLAB_URL 时配置)

    创建访问令牌时,需要勾选授予 api 权限 img

  • PROJECT_ID:要执行 CI 的项目id(指定 GITLAB_URL 时配置)

    项目页面点击设置-->通用 img

¶ 2.7 创建 .gitlab-ci 文件

  • 仓库点击加号 -> 新建文件

img

img

stages:
  - Code Scan
  - Issue
variables:
  MURPHY_TOKEN: $MURPHYSEC_TOKEN
  GITLAB_ROKEN: $GITLAB_TOKEN
  PROJECT_ID: $PROJECT_ID
  GITLAB_URL: $GITLAB_URL
scan:
  stage: Code Scan
  script:
    - murphysec scan . --token $MURPHYSEC_TOKEN --json >scan_results.json
  artifacts:
    paths:
      - scan_results.json
issue:
  stage: Issue
  script:
    - wget https://s.murphysec.com/gitlab_ci.py
    - python3 gitlab_ci.py   --gitlab_url $GITLAB_URL --gitlab_token $GITLAB_TOKEN  --project_id $PROJECT_ID
  dependencies:
    - scan

¶ 三、查看代码检测结果

进入项目页面点击议题,页面展示了所有风险组件的漏洞概览

img

  • 点击要查看的漏洞标题可以进入详细信息页面,详细信息包含了漏洞的编号,处置建议,引入路径以及修复方案

  • 点击项目检测报告下方链接可以跳转到墨菲安全官网查看更详细的漏洞信息

img

上一篇: GitLab 下一篇: Gitee
  • 一、功能简介
  • 二、操作步骤
  • 三、查看代码检测结果

关于我们

微信公众号
技术博客 (opens new window)
B站视频 (opens new window)
GitHub (opens new window)

公司

support@murphysec.com
北京市海淀区百旺弘祥文化科技创意园5118室

京ICP备 2022005866号-1

beian京公网安备 11010802040001号

© 墨菲未来科技(北京)有限公司