zoukankan      html  css  js  c++  java
  • jenkins+Acunetix实现自动化安全测试

    目前主流的开发采用的是devops模式(开发、测试、运维一体化)。随着互联网安全要求越来越高,对网络安全就越发变得重要了。传统的测试工程师主要是对功能、接口、性能方面做测试,而对安全方面测试考虑很少。需要专业的白帽子工程师来实现测试,对人的要求较高。目前提出devsecops模式 也就是增加安全测试这块。

    DevSecOps 是一种把安全的最佳实战集成到DevOps的流程里面。 DevSecOps包括创立一种 安全即代码(‘Security as Code’ )的文化,从而在发布开发工程师和安全团队之间,建立一种可以持续的,灵活合作的机制和流程,从而把在传统软件开发流程里面最后由安全测试团队把关扫描的安全工作,左移到整个软件开发的全流程,从而大大降低了应用在上线后出现的安全隐患,也大大加快了上线的速度,同时也让其他非安全团队的软件人员在开发,测试,发布的全过程中,有安全意识,而不是时候补救,甚至大大修改框架

    jenkins+Acunetix实现自动化安全测试

     

    下面介绍jenkins+Acunetix实现自动化安全测试

    1)安装jenkins 关于Acunetix的插件

    在jenkins 插件管理市场中 搜索到Acunetix 插件

    jenkins+Acunetix实现自动化安全测试

     

    安装完成后在已经安装插件列表中会显示

    jenkins+Acunetix实现自动化安全测试

     

    安装好插件后,重启jenkins 使得插件生效

    2)安装Acunetix 证书到 java keystore 中

    2.1) Acunetix ca 证书是什么东西,在哪里呢?

    使用到Acunetix 会用到https 所以我们需要将Acunetix ca证书安装到jenkins 依赖的jdk java keystore中。

    Acunetix on windows

    Acunetix ca在哪里呢,下面以windows为例,介绍一下

    我这里使用的是
    acunetix_14.1.210316110.exe 安装版本,安装后会在D:ProgramDataAcunetixcerts 目录下生成 ca证书

    jenkins+Acunetix实现自动化安全测试

     

    Acunetix on linux

    我使用的是docker 容器版本的官方的镜像secfa/docker-awvs,官方镜像地址

    jenkins+Acunetix实现自动化安全测试

     

    容器里面ca 证书在哪呢?目录结构在
    /home/acunetix/.acunetix/data/certs

    jenkins+Acunetix实现自动化安全测试

     

    2.2 jdk 如何导入Acunetix ca 证书呢?

    Jenkins on Windows

    查找当前jenkins 依赖的jdk. 我们的jdk是windows 环境的,所以我的jre security 目前在

    D:developjavajdk1.8.0_211jrelibsecuritycacerts

    jenkins+Acunetix实现自动化安全测试

     

    jenkins+Acunetix实现自动化安全测试

     

    我们使用cmd命令行执行如下命令

    keytool -import -trustcacerts -alias AcunetixCA -keystore "D:developjavajdk1.8.0_211jrelibsecuritycacerts" -file D:ProgramDataAcunetixcertsca.cer

    解释 通过 keytool 导入 证书 Java keystore 目录“ D:developjavajdk1.8.0_211jrelibsecuritycacerts

    导入 目标Acunetix ca “D:ProgramDataAcunetixcertsca.cer

    jenkins+Acunetix实现自动化安全测试

     

    输入密码 changeit

    确认已在Windows上成功安装证书

    keytool -list -keystore "D:developjavajdk1.8.0_211jrelibsecuritycacerts" -alias AcunetixCA

    jenkins+Acunetix实现自动化安全测试

     

    输入密码 changeit

    显示如下信息

    jenkins+Acunetix实现自动化安全测试

     

    Jenkins on Linux

    从命令提示符运行以下命令:

    keytool -import -trustcacerts -alias AcunetixCA -keystore /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.252.b09-2.el8_1.x86_64/jre/lib/security/cacerts -file /home/acunetix/.acunetix/data/certs/ca.cer

    确认已在Windows上成功安装证书

    keytool -list -keystore /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.252.b09-2.el8_1.x86_64/jre/lib/security/cacerts -alias AcunetixCA

     

    3)jenkins 配置Jenkins and Acunetix

    在jenkins 中 manage Jenkins ——Configure System

    jenkins+Acunetix实现自动化安全测试

     

    在Acunetix API Key 增加Acunetix key

    点击“添加” 按钮 设置Jenkins 凭据提供者

    jenkins+Acunetix实现自动化安全测试

     

    Acunetix key 是从哪获取的呢?

    登陆Acunetix 平台在点击profile

    jenkins+Acunetix实现自动化安全测试

     

    jenkins+Acunetix实现自动化安全测试

     

    通过复制生成的api key 列如
    1986ad8c0a5b3df4d7028d5f3c06e936cf9fc21aaf2a947ff88827667d8186740

    复制的到上面Jenkins 凭据提供者中的secret 中

     

    点击Test Connection 验证配置是否成功

    jenkins+Acunetix实现自动化安全测试

     

    4)jenkins 项目中配置Acunetix实现自动安全测试

    新建ddd项目,添加acunetix scan 配置

    1 Scan Type

    这里面根据扫描的类型(完全扫描、扫描高风险漏洞、扫描XSS漏洞、扫描SQL注入漏洞、弱口令检测、Crawl Only,仅爬虫、恶意软件扫描)等属性进行扫描

    jenkins+Acunetix实现自动化安全测试

     

    2 Scan Target

    这个里面是根据acunetix 平台中目前存在的目标项列出,我们根据自己的实际项目选择一个目标项目

    jenkins+Acunetix实现自动化安全测试

     

    3.Fail the build if threat level is

    这个根据自己实际项目来(不要使构建失败、高危、中危和高位、低位中危高危)

    目前我们设置有漏洞也不阻止构建失败

    jenkins+Acunetix实现自动化安全测试

     

    4.Generate Report

    这里面会根据报告模版创建各种报告,目前我们默认就选择developer 就可以了

    jenkins+Acunetix实现自动化安全测试

     

    这里面报告和acunetix平台报告相对应

    jenkins+Acunetix实现自动化安全测试

     

    jenkins+Acunetix实现自动化安全测试

     

    设置好点击保存

    5)jenkins 项目中实现自动安全测试

    点击项目构建,完成项目 编译、打包、单元测试、接口测试、安全测试等。

    我这里只是设置了安全测试 其他这里就不做重点介绍。

    jenkins+Acunetix实现自动化安全测试

     

    构建后自动生成安全测试报告

     

    以上,我们通过jenkins+Acunetix 实现了 安全自动化测试,这样我们再结合其他单元测试、自动化接口测试,就实现了简单的DevSecOps功能了.

    JUST DO IT!
  • 相关阅读:
    2019.7.28刷题统计
    2019.7.27刷题统计
    2019.7.26刷题统计
    2019.7.22刷题统计
    qdoj.xyz 6.18
    qdoj.xyz 6.17
    qdoj.xyz 6.16
    qdoj.xyz 6.15
    qdoj.xyz 6.14
    qdoj.xyz 6.13
  • 原文地址:https://www.cnblogs.com/caicz/p/14923263.html
Copyright © 2011-2022 走看看