GitHub Action 集成 Murphysec 实现实时代码安全检测

1. GitHub 集成 Murphysec 效果

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

GitHub Action 集成 Murphysec 实现实时代码安全检测_第1张图片

GitHub Action 集成 Murphysec 实现实时代码安全检测_第2张图片

集成效果图

2. 操作步骤

提示:如果您使用过 GitHub Actions 请直接按照第3步开始操作

1.未开启请点击 Actions 启用 GitHub Actions

GitHub Action 集成 Murphysec 实现实时代码安全检测_第3张图片

如下图所示:项目已开启 Actions

GitHub Action 集成 Murphysec 实现实时代码安全检测_第4张图片

2.进入项目页面配置 Action 权限

点击settings-->Actions-->General-->

勾选 Read and write permissions,最下方勾选 Allow GitHub Actions to create and approve pull requests

GitHub Action 集成 Murphysec 实现实时代码安全检测_第5张图片

GitHub Action 集成 Murphysec 实现实时代码安全检测_第6张图片

3.登录 murphysec 官网获取 token

设置-->访问令牌-->点击复制按钮

GitHub Action 集成 Murphysec 实现实时代码安全检测_第7张图片

4.添加 MURPHYSEC_TOKEN

  • 点击仓库settings-->Secrets and variables-->Actons-->New repository secret

GitHub Action 集成 Murphysec 实现实时代码安全检测_第8张图片

  • 创建变量 name:MURPHYSEC_TOKEN

    secrets:从 murphysec 官网复制的 token

GitHub Action 集成 Murphysec 实现实时代码安全检测_第9张图片

5.创建 GitHub Actions

  • 点击项目 Actions-->New workflows

GitHub Action 集成 Murphysec 实现实时代码安全检测_第10张图片

  • 点击 set up a workflow yourself

GitHub Action 集成 Murphysec 实现实时代码安全检测_第11张图片

  • 添加 CI 代码并提交

GitHub Action 集成 Murphysec 实现实时代码安全检测_第12张图片

  • GitHub Actions代码:branches:对应的分支,需要自行修改需要执行检测的分支名称

name: "MurphySec code scan"
on:
  push:
    branches:
      - master
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout_Actions
        uses: actions/checkout@v3
      - name: Install MurphySec code scan cli
        run: |
          wget -q https://s.murphysec.com/release/install.sh -O - | /bin/bash
      - name: Code scan
        run: murphysec  scan . --token ${{ secrets.MURPHYSEC_TOKEN }} --json >scan_results.json
      - name: Format data
        run: | 
          wget https://s.murphysec.com/github_actions_format.py
          python3 github_actions_format.py
      - name: Check if file exists
        run: |
          if [ -f "results.sarif" ]; then
            echo "file_exists=true" >> $GITHUB_ENV
          else
            echo "file_exists=false" >> $GITHUB_ENV
          fi
      - name: Upload SARIF file
        if: env.file_exists == 'true'
        uses: github/codeql-action/upload-sarif@v2
        with:
          sarif_file: results.sarif

3. 查看代码检测结果

  • 进入项目页面-->Security-->Code scanning,当前页面展示了所有风险组件的漏洞概览

GitHub Action 集成 Murphysec 实现实时代码安全检测_第13张图片

  • 点击要查看的漏洞标题可以进入详细信息页面,点击 Show more 查看详细信息

GitHub Action 集成 Murphysec 实现实时代码安全检测_第14张图片

详细信息包含了漏洞的编号,处置建议,引入路径以及修复方案

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

GitHub Action 集成 Murphysec 实现实时代码安全检测_第15张图片

关于 墨菲安全 

墨菲安全是一家提供专业的软件供应链安全管理的科技公司。产品能力围绕 SBOM 提供软件全生命周期的安全管理,从供应链资产识别管理、风险检测、安全控制、一键修复等,提供完整的开发流程安全管控能力。同时能够极低成本的和现有开发流程中的各种工具一键打通,包括 IDE、Gitlab、Bitbucket、Jenkins、Harbor、Nexus 等数十种工具无缝集成。

旗下的安全研究团队墨菲安全实验室,专注于软件供应链安全相关领域的技术研究,关注的方向包括:开源软件安全、程序分析、威胁情报分析、企业安全治理等。公司核心团队来自百度、华为等企业,拥有超过十年的企业安全建设、安全产品研发及安全攻防经验。

 了解墨菲前往:https://www.murphysec.com/?sf=qbyj

五大产品支持解决方案落地

GitHub Action 集成 Murphysec 实现实时代码安全检测_第16张图片

1、苏木-软件成分分析

苏木拥有行业领先的漏洞知识库,支持10min快速接入各开发流程,将代码项目存在的安全风险清晰展示,并支持IDE插件、GitHub等方式快速完成漏洞修复,轻松管理开源风险

2、京墨-源安全管理网关

京墨从源头卡住安全风险,安全能力左移前置,使代码安全检测用于从开发到测试的DevSecOps全流程之中。可无缝对接Nexus,Jfrog,支持黑白名单配置管理、卡位管理及制品检测,降低企业的成本和风险

3、赤箭-许可证合规管理

赤箭会自动识别开源组件协议,来降低许可证侵权风险。目前已覆盖3000+许可证类型,可做到对精准识别及合规风险快速管理

4、贯众-资产管理及漏洞预警

贯众覆盖超6w+主流组件,自研、商采、开源等资产全覆盖,实时与0day漏洞&投毒预警关联,漏洞预警已达分钟级,从容应对安全风险

5、南星-静态代码扫描

高准确率漏洞检测能力、极快的检测速度和效率、常见安全漏洞全覆盖、专家定制策略的更新

了解墨菲前往:https://www.murphysec.com/?sf=qbyj
 

你可能感兴趣的:(软件供应链安全,技术分享,ci/cd,安全,持续集成,网络安全)