通过管道支持将RIPS集成到Jenkins CI中 | 申博官网
登录
  • 欢迎进入申博官网!
  • 如果您觉得申博官网对你有帮助,那么赶紧使用Ctrl+D 收藏申博官网并分享出去吧
  • 这里是申博官方网!
  • 申博官网是菲律宾sunbet官网品牌平台!
  • 申博开户专业品牌平台!

通过管道支持将RIPS集成到Jenkins CI中

申博_安全防护 申博 256次浏览 已收录 0个评论

通过管道支持将RIPS集成到Jenkins CI中

Jenkins CI是领先的开源自动化服务器之一,提供数百个插件,支持构建,部署和自动化任何项目。它支持Git,Subversion,Mercurial,Perforce等版本控制工具,并且可以执行基于Apache Ant,Apache Maven和Gradle的项目以及任意shell脚本和Windows批处理命令。自2016年起,RIPS支持将安全性分析集成到Jenkins中,这有助于防止将新的安全漏洞添加到您的构建中。我们的新主要版本现在还支持新的Pipeline功能并改进了现有功能。

管道

Pipeline方法是一种更加开发人员友好的方法,用于定义项目的构建和测试过程。它就像放置一个Jenkinsfile包含所有配置的项目中的文件一样简单这是众所周知的其他构建工具,如Dockermake,并极大地改进了CI过程:

  • 由于配置存储在版本控制中,因此可以重新创建旧版本而无需额外的工作。
  • 可以按分支对构建过程进行更改,并且不会中断开发。
  • 配置文件可以轻松复制并用于其他项目。

RIPS Jenkins插件可以无缝集成到这个新工作流程中。您只需要在构建脚本中插入第9行所示的语句。如何使用并获得credentialId描述后面这篇文章。

 1 2 3 4 5 6 7 8 91011
//Jenkinsfile 
node {
  stage('Preparation') {
    //getting sources from git repository     git 'https://github.com/ethicalhack3r/DVWA'
  }
  stage('Security Check') {
 ripsScan appId: 1615, credentialsId: '5d4cb838-3024-4c09-810d-0db62f9ea61d'   }
}

以下列表中显示了更多可选参数。其中一个最有趣的是第10行到第15行所示的阈值配置。如果您的软件存在的问题多于单个严重性级别的声明数量,则可以在此处触发构建失败。

门槛示例:

  • threshold: [newIssues: 0, critical: 0] 构建将在每个新问题和每个现有严重严重问题上失败。
  • threshold: [critical: 0, high: 10] 严重性严重的每个新问题或高严重性的11个和更多问题都将导致失败。
 1 2 3 4 5 6 7 8 910111213141516171819
ripsScan analysisDepth: 5, //default 5          appId: 1615, //required          credentialsId: '5d4cb838-3024-4c09-810d-0db62f9ea61d', //required          customProfileId: 29, //default empty          excludeNegativelyReviewed: true, //default true          phpVersion: '7', //default 5.6.*          resultOnError: 'UNSTABLE', //default ABORTED          scanTimeout: 300, //default 300 (minutes)          subdir: 'dvwa', //default empty          threshold: [critical: 1, //default empty                      high: 1,
                     low: 1,
                     medium: 1,
                     newIssues: 0, //"new" is a reserved keyword                      resultOnHit: 'NOT_BUILD'], //default FAILURE          uiUrl: 'https://saas.ripstech.com', //default          url: 'https://api-2.ripstech.com', //default          versionNamePattern: '#{number}' //default Build #{number}  

使用Pipeline Syntax Snippet Generator可以轻松生成配置文件请记住,只有非默认值才会显示在生成的命令中。您可以在我们的知识库中找到所有配置参数的说明

新配置掩码

此外,我们添加了一个更直观,更直观的新配置掩码(图1)。它将用于Freestyle项目和Pipeline Syntax Snippet Generator。URL,超时和结果设置可在Jenkins系统设置中全局配置,不必为每个Jenkins项目重复。

通过管道支持将RIPS集成到Jenkins CI中

图1: RIPS配置掩码

 

改善结果

在下面的代码片段中,您可以找到我们的新插件版本的示例输出。第二行显示了用于创建ZIP文件globbing,该文件直接从API获取支持的文件扩展名。因此,新支持的文件类型将自动包含在下一次扫描中。

 1 2 3 4 5 6 7 8 9101112
Use RIPS API (https://api-2.ripstech.com): 2.14.5
Created zip file rips9169010792219059344.zip with glob: **/*.php,**/*.inc,**/*.phps,**/*.php3,**/*.php4,**/*.php5,**/*.phtml,**/*.tpl,**/*.cgi,**/*.module,**/*.ctp,**/*.twig
Upload ID: 18263
Scan ID: 9189
Scan Status: 0% (Scan in queue. This may take a few minutes)
Scan Status: 14% (Parsing Code)
Scan Status: 32% (Scanning code)
Scan Status: 42% (Scanning code)
Scan Status: 52% (Scanning code)
Scan Status: 100% (Done)
Issues: {CRITICAL=16, LOW=85, MEDIUM=14, NEW=0}
Threshold reached for: CRITICAL

自由式项目采用了图2所示的管道项目外观。如果安装了所需的插件,则可以使用其他阶段视图它允许快速查看和检查所有已配置的阶段,并且可以用于,例如,仅查看RIPS插件中的日志。

通过管道支持将RIPS集成到Jenkins CI中

图2:使用RIPS的Jenkins管道项目

 

超出阈值将打印到控制台日志,如前所示,此外,它会在我们的结果小部件中标记,如下图所示。

通过管道支持将RIPS集成到Jenkins CI中

图3:单个构建页面上超过阈值的结果窗口小部件

 

通过管道支持将RIPS集成到Jenkins CI中

图4:项目页面上没有超出阈值的结果窗口小部件

 

除了结果小部件之外,插件还显示配置小部件。它显示了当前查看的扫描中使用的最重要配置选项的概述。这样,即使配置在此过程中发生了变化,开发人员也可以正确查看旧结果。

通过管道支持将RIPS集成到Jenkins CI中

图5:单次运行的扫描设置

安全密码存储

密码将由Jenkins Credentials插件管理,该插件是我们插件的依赖项。凭据可以按用户或系统范围添加到Jenkins实例,并限制特定域。此变体的另一个好处是,您不必在Jenkins文件中添加明文密码。用户名密码组合由唯一标识符引用。您可以手动在凭据菜单上查找此标识符,也可以使用RIPS配置掩码并按用户名选择正确的凭据。

结论

在这篇文章中,我们介绍了Jenkins CI的RIPS集成的一些改进功能。我们的即用型Jenkins插件支持多种不同方式,可将自动安全分析无缝集成到您的构建过程中。该插件可以与LTS以及最新版本的Jenkins一起使用。有关此插件的更多信息,请使用我们的知识库文章您还可以在更改日志中找到快速迁移指南


申博|网络安全巴士站声明:该文看法仅代表作者自己,与本平台无关。版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明通过管道支持将RIPS集成到Jenkins CI中
喜欢 (0)
[]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址